HA error when upgrading ESXi 4.0 Update 2 to ESXi 4.1

Ran into this annoying HA error after upgrading some blades all running ESXi 4.0 Update 2.

All hosts were upgraded using VUM from a  vCenter 4.1 server. Upgrade all went well, taking only a few short minutes per host.

Upon trying to renable HA, all hosts failed with the error:

HA agent on esxhostname in cluster clustername in datacentername has an error:  Error while running health check script

Disabling HA on the cluster or reconfiguring HA on hosts had no effect. The error persisted.

From previous HA errors I remembered that this knowledge base article from VMware (KB1007234) might do the trick.

After enabling remote tech support mode (SSH) on the ESXi host and then connecting in;

Run the uninstall the Legato Automated Availability Manager script:


Then restart management services on the ESXi host:

services.sh restart

Then re-enable HA on your cluster and it should install aam-ha agents from scratch on each ESXi host,

I’ve only run into this issue with ESXi and not ESX classic with COS,


A list of vSphere 4.1 VAAI compatible arrays?

This list of VAAI arrays detected by the Pluggable Storage Architecture appears in /etc/vmware/esx.conf of an ESX 4.1 host.

Appears  these are there to support the vendors whose arrays will support VAAI now or in the future with firmware.

/storage/PSA/Filter/claimrule[65430]/match/model = “SYMMETRIX”
/storage/PSA/Filter/claimrule[65430]/match/vendor = “EMC”
/storage/PSA/Filter/claimrule[65430]/plugin = “VAAI_FILTER”
/storage/PSA/Filter/claimrule[65430]/type = “vendor”
/storage/PSA/Filter/claimrule[65431]/match/vendor = “DGC”
/storage/PSA/Filter/claimrule[65431]/plugin = “VAAI_FILTER”
/storage/PSA/Filter/claimrule[65431]/type = “vendor”
/storage/PSA/Filter/claimrule[65432]/match/vendor = “EQLOGIC”
/storage/PSA/Filter/claimrule[65432]/plugin = “VAAI_FILTER”
/storage/PSA/Filter/claimrule[65432]/type = “vendor”
/storage/PSA/Filter/claimrule[65433]/match/vendor = “NETAPP”
/storage/PSA/Filter/claimrule[65433]/plugin = “VAAI_FILTER”
/storage/PSA/Filter/claimrule[65433]/type = “vendor”
/storage/PSA/Filter/claimrule[65434]/match/vendor = “HITACHI”
/storage/PSA/Filter/claimrule[65434]/plugin = “VAAI_FILTER”
/storage/PSA/Filter/claimrule[65434]/type = “vendor”
/storage/PSA/Filter/claimrule[65435]/match/vendor = “LEFTHAND”
/storage/PSA/Filter/claimrule[65435]/plugin = “VAAI_FILTER”
/storage/PSA/Filter/claimrule[65435]/type = “vendor”
/storage/PSA/MP/claimrule[0101]/match/model = “Universal Xport”
/storage/PSA/MP/claimrule[0101]/match/vendor = “DELL”
/storage/PSA/MP/claimrule[0101]/plugin = “MASK_PATH”
/storage/PSA/MP/claimrule[0101]/type = “vendor”
/storage/PSA/VAAI/claimrule[65430]/match/model = “SYMMETRIX”
/storage/PSA/VAAI/claimrule[65430]/match/vendor = “EMC”
/storage/PSA/VAAI/claimrule[65430]/plugin = “VMW_VAAIP_SYMM”
/storage/PSA/VAAI/claimrule[65430]/type = “vendor”
/storage/PSA/VAAI/claimrule[65431]/match/vendor = “DGC”
/storage/PSA/VAAI/claimrule[65431]/plugin = “VMW_VAAIP_CX”
/storage/PSA/VAAI/claimrule[65431]/type = “vendor”
/storage/PSA/VAAI/claimrule[65432]/match/vendor = “EQLOGIC”
/storage/PSA/VAAI/claimrule[65432]/plugin = “VMW_VAAIP_EQL”
/storage/PSA/VAAI/claimrule[65432]/type = “vendor”
/storage/PSA/VAAI/claimrule[65433]/match/vendor = “NETAPP”
/storage/PSA/VAAI/claimrule[65433]/plugin = “VMW_VAAIP_NETAPP”
/storage/PSA/VAAI/claimrule[65433]/type = “vendor”
/storage/PSA/VAAI/claimrule[65434]/match/vendor = “HITACHI”
/storage/PSA/VAAI/claimrule[65434]/plugin = “VMW_VAAIP_HDS”
/storage/PSA/VAAI/claimrule[65434]/type = “vendor”
/storage/PSA/VAAI/claimrule[65435]/match/vendor = “LEFTHAND”
/storage/PSA/VAAI/claimrule[65435]/plugin = “VMW_VAAIP_LHN”
/storage/PSA/VAAI/claimrule[65435]/type = “vendor”

Some great blogs about the new vSphere 4.1 array integration features are here and here

USB passthrough in vSphere 4.1

One of the new features of vSphere/ESX 4.1 is the ability to pass-through up to 20 USB devices from the ESX host to a VM or VMs.

It is really simple to setup and test.

I am using a Server 2008 R2 VM as a test in this case.

Right click on the VM and select edit settings.

Add a USB Controller and then click OK and exit the edit settings screen.

Edit settings on the VM again and add a USB device.

At this point the wizard will show you any visible/compatible device you have plugged into the underlying ESX 4.1 host

A device HCL is here on VMwares support site: http://kb.vmware.com/kb/1021345

You cannot multi-select devices at this stage – add them one by one.

There is an option to allow vMotion of the VM while the USB device is connected.

VMware documentation states:  “You can migrate a virtual machine to another ESX/ESXi host in the same datacenter and maintain the USB
passthrough device connections to the original host.”

I tested vMotion with a USB mass storage device attached and it does indeed work across ESX hosts as promised.

In the screen below I have now added two pass-through USB devices to my VM (A Kingston USB drive and a Safenet/Raindow dongle)

Inside the Windows VM – looking at device manager – the devices have appeared.

Both devices work correctly as intended.

I have tested numerous brands of USB mass storage devices (Kingston, Sandisk, Lexar, Imation) as well a couple of of security dongles and they all work well.

Also, please check out the USB pass-through section in the Virtual Machine Administration Guide PDF that is part of the vSphere 4.1 documentation.