Sunday, March 18, 2012

Patching ESXi

Now that I have a shiny new VM host, decided to try some stuff out.

Windows 8 consumer preview.  Started the install and got a dreaded "Hal_Initialization_Failed".  After googling around and getting nonsense (seriously, it only works as a VM on a windows 8 host?!), found a VMware post (http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2006859) saying to upgrade to the latest level of ESXi.  But I just downloaded it last week!  Evidently they don't rebuild the installer each time so upgrades are in order.  Upgrading is easier said than done.

If you've paid for vSphere, there's a nice management interface for this.  With plain old ESXi hosts, you have to do things the old fashioned way.  I guess that makes sense and they only want the cool tools in their paid product.  It's a big jarring when the trending of software (I'm looking at you Firefox, Chrome, Thunderbird) is to have the app be self aware of new versions and have it update itself.

Here's a post explaining how to do ESXi updates - http://communities.vmware.com/people/vmroyale/blog/2011/09/15/updating-esxi-5--single-use-esxcli-how-to


  • Download VMware vSphere Command-Line interface (CLI).  It's free.
  • Install, and hey, you get ActivePerl.  I already have a perl, but whatever.
  • Next, go to http://www.vmware.com/patchmgr/download.portal and download the latest patch (hint, it's first in the list).
  • Upload it, via vSphere Client, to your favorite datastore.
  • Set your ESXi host to be in maintenance mode (the VMware KB on upgrading tells you how to query the patch to determine if it requires maintenance mode).
  • Use esxcli to see existing system patch levels:  "esxcli --server=[your ESXi host] --username=root software vib list
  • Use esxcli to install the updates: "esxcli --server=[your ESXi host] --username=root software vib update --depot=/vmfs/volumes/[datastore]/[path]/update-from-esxi5.0-5.0_update01.zip"    (your patch file may be newer)
  • Wait 5 minutes until it's done then reboot the host.
Done, worked nicely.  Since the vSphere API is all open source, it should be straightforward to put together software that issues these commands for you to allow you to upgrade from a GUI.  Another project for another day.

 So I continued the Windows 8 install.  No more "Hal_initialization_Failed" error and the install progresses.  Unfortunately I get an error later.  After saying "Preparing" for a little while I get "The computer restarted unexpectedly or encountered an unexpected error.  Windows installation cannot proceed.  To install Windows, click OK to restart the computer, and then restart the installation".  DOH!  Next post on installing Windows 8.

2 comments:

Anonymous said...

Great post, thanks for the info, worked great for me. No errors using Win8 either. Curious to know if you chose Win8 as your OS when building the VM, or did you (as some others have posted elsewhere) chose Windows Server 64, then later edit to Win7 64? I just chose Windows8 as the OS and have not had any problems.

Nik Conwell said...

Yep, chose Win8 as the OS. In the pre-patched ESXi there was no option for Win8, but after I patched, I could choose that as an OS.

Win8 has been running fine. The 'dashboard' GUI is a bit strange to me, but once I figured out how to see the desktop it all looked familiar.