There are several reasons why physical servers are preferable to VMs:
Overprovisioning issues - if you have more than 1 VM per physical server, you will be bottlenecked by the hardware. If two NiFi VMs reside on a set of hard drives and are trying to process at max capacity, they will consume the network bandwidth and/or hard disks resulting in contention between them and slower processing. There is a very specific hardware mapping with built-in redundancy that NiFi should be configured with, and putting more than 1 VM on that hardware will decrease value of the setup
Noisy neighbors - if you have a multi-tenant VM group, other VMs may spike in usage at the same time as NiFi, resulting in slowed processing for all VMs due to contention
Inherent translation layer - VMs by design have a translation layer that will slow performance