Since the introduction of vmx-10 there has been a lot of debate on whether to use it or not.
The main shortcoming is that one cannot edit the settings of a Virtual Machine that is running on VM hardware version 10 (vmx-10) using the vSphere client.
It can only be done using the web client, so if you are running just an ESXi server and you have a VM with vmx-10, you are in trouble.
Also, I realized that even when you have a vCenter server, if its installed on a VM that is running with vmx-10 you will still get into trouble.
It could all start with something simple, like the vCenter going down because the C:\ drive is full and thus the service does not start. Which is exactly what happened in my case!
Now the vCenter is down, and I need to add space to the C drive, by editing it, but the vCenter is down and so is the web client.
I could login into the ESXi host that is hosting the vCenter server to make any changes, but again I would need the web client. This brings us back to square one.
I racked my brains for a while about this and then thought of trying this, using the vmkfstools.
So I logged into my host and powered off my vCenter server ( the service was not running anyway), located the server under /vmfs/volumes///
Warning : Do not extend a disk that has snapshots. Commit or discard snapshots before increasing the size of the virtual disk. Extending the size of a virtual disk that has snapshots invalidates the snapshots.
The command that came in handy to extend the disk space was
vmkfstools -X 60G /vmfs/volumes/datastore/vcenter-server/vcenter-server.vmdk
This extended the disk and gave some space to the C drive, so it could do what it does and get the vCenter service up and running.
This got me thinking, what if the same thing happens because of other resources like RAM and CPU?
That is when I stumbled upon a KB Article that tells you how to make these changes using PowerCLI commands when you don’t have a web client in your environment or when its down.
To conclude :
If you do not have a need to run your vCenter server on vmx-10 then avoid it until VMware changes the architecture and the way the machine settings are edited in higher versions of VM hardware. If you need to run the vCenter VM with vmx-10 then keep the KB Article handy as it will help you perform these operations on the VM directly using powercli cmdlets.
Take a backup of the vCenter server before you do any of these tasks.
UPDATE : With the release of 5.5U2, you can edit VMX-10 using C# clients. VMware finally realized it.