It would be pretty easy to implement but requiring SSH poses some
legal/licensing questions, along with some technical problems.
There's a thread that discusses whether or not it violates the VMware
EULA to enable and use SSH, with no definitive answer:
Even if the EULA would not be violated by VCL managing "free" ESXi via
SSH, I'd be wary to devote much development time or make this the
recommended configuration because (a) the EULA may be changed in the
future to disallow it and (b) there is nothing preventing VMware from
taking away the SSH "Tech Support Mode" in the future, and (c) there is
no way to automate the enabling of SSH so every host will have to be
That said, I have enabled SSH on my ESXi test hosts and have found it
very useful. Instructions on how to enable SSH:
Once enabled, the VCL code could do everything it needs by running
vim-cmd and other commands. This would be easy to implement. The new
code is very modular and contains 2 utility modules, VIX_API.pm and
vSphere_SDK.pm. These implement the functions to control the VMs such
as register, power_on, etc. We would need to implement another utility
module to perform the same functions via ESXi/SSH.
There will be some technical problems that will need to be addressed.
For example, you can create an authorized_keys file on the ESXi host to
login using an identity key but this file gets deleted for some reason
every time you reboot the ESXi host.
Ryan Johnson wrote:
I was going through some of the posts on the vmware forums. Apparently one
could ssh into the ESXi host itself and use the vimsh wrapper to administer
virtual machines. Not sure how hard this would be to implement.