This is a known issue effecting vCenter Server 5.5.
To work around the issue when you do not want to upgrade, update the esx_agent_vm_state column.
Note: Take a backup of the vCenter Server before performing this operation.
For vCenter Appliance:- Log in to the vCenter Server appliance as root.
- Run this command to stop the vCenter service:
service vmware-vpxd stop
- Run this command to access the database:
/opt/vmware/vpostgres/9.0/bin/psql -d VCDB vc
- Run this command on the VCDB command prompt:
select * from vpx_vm;
- Run this command to update esx_agent_vm_state column:
update vpx_vm set esx_agent_vm_state = 0 where file_name like '%agent machine name%';
- Run this command to check the changes made to the column:
Note: This should be set to 0 now.
select file_name, esx_agent_vm_state from vpx_vm;
- Quit the database interaction by running \q command
- Run this command to start the service:
service vmware-vpxd start
For vCenter Server on a windows machine:
- Access the vCenter database using SQL management studio,oracle SQL plus or GUI manager and run the command:
select * from vpx_vm;
- Run this command to update esx_agent_vm_state column:
update vpx_vm set esx_agent_vm_state = 0 where file_name like '%agent machine name%';
- Run this command to check the changes made to the column:
Note: This should be set to 0 now:
select file_name, esx_agent_vm_state from vpx_vm;
- Start the virtual center service from service manager.
- The virtual machines should now failover when PSOD occurs.
Note: This workaround is valid until the next restart of the vCenter service.