When setting up a nested vSphere lab environment on Proxmox, I ran into an issue: the vCLS utility did not start because of EVC (Enhanced vMotion Compatibility) problems. This significantly hampered DRS functionality. This post describes the troubleshooting steps and solution.
The Problem
After testing Broadcom’s new version 8.0.3, I found that nested virtualization on Proxmox was not running smoothly. Although nested virtualization was enabled on all Proxmox hosts and the VM CPU type was set to “host”, EVC settings prevented vCLS pods from being managed correctly. Starting with version 8.0.3, vCLS 2.0 uses pod containers instead of traditional VMs, making it more difficult to configure EVC appropriately.
Preparations
First, I checked whether nested virtualization was configured correctly:
root@pve0:~# cat /sys/module/kvm_intel/parameters/nested
Y
I then ensured that the VM’s CPU specification was set to “host”. On the ESXi instance, hardware virtualization was verified using:
esxcfg-info|grep "HV Support"
The output value of 3 confirmed that VT-x/AMD-V was enabled.
Solution: Disable the vCLS Pod Model
The key solution was to disable the new vCLS Pod model. To do this:
- Access vCenter: Sign in to the vCenter management interface as an administrator.
- Open Advanced Settings: Go to Configure > Advanced Settings.
- Set the option: Enable the
config.vcls.disablePodCrxsetting and set its value to true (the default is false).
With this change, vCLS is once again deployed as traditional VMs. The VM compatibility could then be upgraded to vSphere 8.0.2, and the EVC settings adjusted.