That… Could Be A Problem…

30Mar/1214

Standalone ESXi 5 Host Upgrade

Have an ESXi host which is a standalone box? No VMware Update Manager? No vMA?

Well, they still require patches. Luckily enough, you can still use the stripped down version of the console which is included in ESXi to update it.

Start by heading out to the VMware Patches portal http://www.vmware.com/patchmgr/download.portal and download the neccessary patches for the server that needs patched.

Upload the patch zip file to a datastore that the server can talk to via either SCP or the datastore browser
Upload the patch

Next, make sure the SSH service has been started.

To do this while in the vSphere Client, click on the desired host, and click on the "Configuration" tab followed by the "Security Profile" link in the "Software" box, then click on "Properties" in the top right side.
Get to SSH Service

Highlight "SSH" and then click "Options", after the SSH Options screen pops up, click on "Start", then click "OK" twice to get back to the Configuration tab.
Start SSH Service
Start SSH Service

After getting connected to the ESXi host, run the command: esxcli software vib install -d *full path to uploaded zip*
Example: esxcli software vib install -d /vmfs/volumes/VMO-01 Datastore/Temp/update-from-esxi5.0-5.0_update01.zip

There should be a message showing that the update was completed successfully and that the system needs to be rebooted.
Upload the patch

If ready to reboot, type in "reboot" and the system will reboot. Just remember to check to make sure that the SSH service has been stopped when it boots back up.

One error that I ran into, if you don't give the full path to the zip file containing the update, the patching will fail with a "MetadataDownloadError" reading:
Could not download from depot at zip:/var/log/vmware/*update name*.zip?index.xml, skipping (('zip:/var/log/vmware/*update name*.zip?index.xml', '', "Error extracting index.xml from :/var/log/vmware/*update name*.zip: [Errno 2] No such file or directory: '/var/log/vmware/*update name*.zip?index.xml'"))
url = zip:/var/log/vmware/*update name*.zip?index.xml
Please refer to the log file for more details.
Error Message

Once I put in the full path, it worked just fine.

Comments (14) Trackbacks (1)
  1. Hey, I ended up with the MetabaseDownloadError that you posted at the end. I went back and verifired the path and typed it in multiple times just incase and the same error keeps comming up. Know of any other reasons this might be??

    thanks

  2. Thanks a lot! By following your steps I managed to update my LAB ESXi server.

    Before upgrade:
    ~ # vmware -v
    VMware ESXi 5.0.0 build-469512

    After upgrade:
    ~ # vmware -v
    VMware ESXi 5.0.0 build-623860

    Question is: Can I revert back to the previous build?

    TIA

  3. Thanks for the reply Kyle.

  4. Thanks to both of you 🙂

  5. Thank you. I kept on getting the metadata error not realizing that I need to put the whole path in.

  6. Thanks! useful post..

  7. regarding the “MetadataDownloadError” please note pathtext is case sensitive!
    So check upper/lowercase in your path.
    regards Carsten

  8. Thanks! The error went away after putting the full path in the command line. I believe the confusion is from the VMware docs stating you should navigate to the folder where the patch resides. Not sure why it can’t figure that out on it’s own.

  9. This was exactly what I needed to patch my ESXi 6.0 host this morning. Kept getting that frustrating “could not find index.xml” message. Full path fixed it. Thanks for sharing!

  10. This was a big help, but not entering Maintenance Mode sure got me stuck for a minute along with case sensitive file names. Thanks!

  11. “MetadataDownloadError” Thank you!! for mentioning that tip .. i kept getting that error and your tip helped me!

  12. This is a silly mistake but also remember to remove the zip from the downloaded archive. The offline bundle zip within is what you most likely need.


Leave a Reply