This morning I had to do an ESXi software upgrade within 1h service window. The ESXi Host was configured in a Cluster (3 Hosts) with vMotion active, but no DRS. I was able to move all the VMs running on the host to other hosts, except one.
This VM was having an USB Dongle connected to it and stuck to the ESXi Host. The plan was to shut it down during the ESXi Host upgrade. Actually for that reason I have obtained a maintenance window.
Once all the VMs were moved and the VM (w/ dongle) was down, I then ran the Remediate on host. Didn’t want to move the VM (w/ dongle), but when running Remediate, because of the settings of Lifecycle Manager, the VM moved automatically to another host. Didn’t want this to happen, but that’s not a tragedy, I will move the machine back again.
Remediate was finished successfully, now it was the time to move the VMs back to the initial Host. Here is when the issue occurred. I have moved all the VMs back to the Host, except the VM that had the dongle attached. At this one, the Migrate option in the Menu was greyed out (inactive).
I did some checks on other VMs, but the problem seemed to be present only on this one. The time was passing and my maintenance window was reaching the limit. I quickly searched the internet and found this – KB1029926. At the first sight, it seemed something complicated and risky. It was for the first time when having this issue. I searched more, but all I could find it was pointing me to the same solution.
Without any other options I gave it a try. Let’s see the steps. The method will be reproduce in my Lab Environment.
Step one – Identify the VM’s MOB ID
Open vCenter Web Client and in the left hand side inventory, select the affected VM. In the Web address bar, look for the VM number. In this case MOB ID is vm-37
https://vcsa.vspherelab.local/ui/app/vm;nav=h/urn:vmomi:VirtualMachine:vm-37:be98cc36-7c9c-4917-9b2a-b49d22b87546/summary
Step two – Access the Virtual Machine Operations by opening a web browser to and login with your domain or SSO admin credentials
Open this URL:
https://vcsa.vspherelab.local/mob/?moid=AuthorizationManager&method=enableMethods
Note: Replace vcsa.vspherelab.local with your vCenter’s FQDN or IP Address
Login with administrator@yourssodomain.local or an SSO admin user
For example: administrator@vsphere.local
Step Three – Fill in the required parameters and invoke the method
In the first parameter (entity) value box, replace MOID with the VM’s MOB ID. In this case, the MOID is vm-37
For example:
<!-- array start -->
<entity type="ManagedEntity" xsi:type="ManagedObjectReference">vm-37</entity>
<!-- array end -->
In the second parameter (method) value box, enter this command:
<method>RelocateVM_Task</method>
Now you are ready to Invoke Method by clicking on it.
Once finished, you will see this page.
Step four – Refresh the vCenter Server web client and check the VM’s migration options
Once the Invoke Method has been executed, you have to refresh the vCenter web Client and then check if Migrate option of the VM is available. In my case it worked without any issues and the Migrate option became active again.
If this method will not help you, on the VMWare KB we are advised to restart the Web Client service or all vCenter Server services. Follow link – Stopping, Starting or Restarting VMware vCenter Server Appliance 6.x & above services (2109887) for more details.
Conclusion: Even though at first, after facing this problem, I have to admit that I was a bit stressed because I was working on a production system, in a limited maintenance interval, now I am happy that I managed to solve this problem and to learn something new. I hope you will land here and the article will help you to fix your issue as well.
This fix did really save my day. Or at least did so I did not have to work outside business hours 😉
That’s great! Thanks for your feedback. 🙂