I encountered a problem with Virtual Center (VC, vCenter) 2.5 Update 4 where trying to change from the evaluation license to a proper license server resulted in a message that there were “Not enough licenses for this operation”.
There were various suggestions on the web, mostly involving stopping and starting the Virtual Center and License Server services. None of them worked. The only other suggestion was to remove all the hosts from the Virtual Center, add the license, then re-add the hosts back in. This would lose any nice filing of VMs in the “Virtual Machines & Templates” view, and would generally be a bit of a pain.
As a last resort, I thought I’d have a Google round for possible registry settings which may affect licensing.
I found a blog posting about changing the license type that VC looks for within the registry, which also mentioned a “LicensePath” key.
Looking in the registry of my VC server there was no “LicensePath” key, so I created one, stopped and restart the Virtual Center service and found that VC now found the license server correctly and didn’t complain about “Not enough licenses”.
So to recap, open regedit, navigate to
HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware VirtualCenter
Create a new String key called
LicensePath and enter the info for your license server, e.g.
Last week I was working on an HA cluster of VMware ESXi hosts.
Whatever I tried I couldn’t get the hosts to play nicely when HA was turned on. Further investigation showed that the hosts were resolving their own names to a previous IP address.
Checking the console on each host showed the correct information, but the error messages when turning HA on indicated that they were still resolving to their old incorrect addresses.
The usual problem with HA is that DNS records don’t match what is actually set up, but in this case DNS checked out fine.
It would appear that:
- ESXi uses a local ‘/etc/hosts’ file for resolving names in preference to DNS. You can view this file by pointing a browser at http://youresxservername/host/hosts
- The local hosts file doesn’t get updated when you change the settings using the console interface. It keeps whatever was in there the first time you set up the hostname and IP address for the host
Most of the time this doesn’t matter much as the host doesn’t often need to look itself up, but when VMware HA is turned on, name resolution becomes much more important.
There are two ways to edit the /etc/hosts file. Because ESXi doesn’t have a normal Console Operating System (COS) that full ESX enjoys, both methods are relatively awkwards.
- Use ‘unsupported’ mode to get a local root shell and edit using ‘vi /etc/hosts’
- Use the Remote CLI to change the file remotely.
- vifs.pl –sessionfile <yoursessionfile> –get /host/hosts C:\temp
- Edit the file with notepad
- vifs.pl –sessionfile <yoursessionfile> –put C:\temp\hosts /host/hosts
With that done HA started working again. Probably worth doing a reboot just to make sure it’s ‘taken’.