vmware - how dedicate a CPU core to a virtual machine
I know this is NOT best-practice, but we are working with Microsoft to troubleshoot a performance issue at a client, and one of the troubleshooting steps is to dedicate a CPU core/socket/vcpu to a particular VM. The host the VM is running on is not oversubscribed, and while I know it's possible to set "CPU Affinity" to lock a VM to a particular core (or multiple logical cores), I don't believe setting CPU affinity on one VM prevents other VMs from using the same core. We want to isolate a VM to a particular core and not allow other VMs to use it.
Again, I realize this is not best practice, and would not be a long-term solution, but for troubleshooting it is something we need to attempt.
Is there a way to do this?
Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
If not then use affinity as mentioned and then apply a DRS anti-affinity rule to force the VM's of that host for the duration of the testing. This would rely on the remaining hosts having the capacity to run with effectively one less host - albeit short term.