Here is a quick article on upgrading VMWare ESXi Hypervisor. In this instance I’m upgrading from version 6.5.0 to 6.7.0. This is largely based on the article found here. I’m just filling in the blanks for some issues that I had.
First up, enable SSH on the Host and configure your preferred SSH client. Click on Host, choose Actions > Services > Enable Secure Shell (SSH).
Now place the Host into maintenance mode. To do this shut down any running Virtual Machine’s otherwise it will fail. Either turn maintenance mode on from the web interface as seen in the screenshot above or by command line using the following command.
[root@localhost:~] vim-cmd /hostsvc/maintenance_mode_enter
While in the interface ensure that your swap space has an associated datastore. You can do this by going to your Host, then choose Manage > Swap and then edit the datastore field to point to a datastore with available space.
Next, login to the ESXi server and configure a firewall rule to allow you to download the necessary software.
[root@localhost:~] esxcli network firewall ruleset set -e true -r httpClient
We’ll be reversing all of the above operations when we’re done. It’s very important to remember to do that for the security of the appliance.
This is where my instructions change from the original. I had to configure a DNS server even though I already had a DNS configured in the GUI.
[root@localhost:~] esxcli network ip dns server add --server=18.104.22.168
Using the esxcli command set search for the appropriate filename. The correct version ends with -standard.
[root@localhost:~] esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-6.7
As of this post the current version is ESXi-6.7.0-8169922-standard (1/20/2019). Use the command below to upgrade the ESXi server. This will probably take a few minutes.
[root@localhost:~] esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.7.0-8169922-standard
Finally, reboot the server.
Run the following command to disable the firewall rule. Then disable SSH and exit Maintenance Mode.
[root@localhost:~] esxcli network firewall ruleset set -e false -r httpClient