Here is an easy to follow guide on Home Assistant VMDK ESXi deployment. Home Assistant is an awesome piece of software that incorporates a home automation control panel that is easy to use.
We used to run the core version of Home Assistant within docker on Pop!_OS and it ran fantastic. The instance was lightweight but the upgrades were cumbersome. The docker option also did not provide us with the ability to make backups or snapshots within the Home Assistant admin panel.
Ever Since we have moved the Home Assistant instance to a VMware ESXi virtual machine. This process came with a few struggles which we will discuss in this article. Once the dust settled, the virtual machine ran great and it was much easier to manage and create backups.
Home Assistant VMDK ESXi Deployment
Initially, we downloaded the VMDK virtual machine file from Hass.io then tried deploying it on our ESXi server directly but dealt with server crashes. The ESXi server would become non-responsive along with all of the existing virtual machines running on the server. Once the Home Assistant virtual machine became nonresponsive, the only way to fix it was to reboot the entire server. Our ESXi server had plenty of resources to run this lightweight virtual machine so we were a bit thrown off.
After a bit of tinkering, here are the exact steps that we took to successfully install Home Assistant VMDK on our ESXi server.
Setup your ESXi Virtual Machine Instance as follows:
- Create a new Virtual Machine – Set it to Linux (Other 64-bit)
- Assign the Virtual Machine 1 vCPU and at least 2 Gigabytes of RAM
- Set your NIC type to E1000 (this will be under the advanced options within your network adapter)
- Discard unused virtual hardware like DVD drives or SCSI controllers etc.
- Set IDE Controller to “0” and set it to “Master”
Download the latest VMDK file for Home Assistant and upload the VMDK file to a directory on your VMware ESXi server.
Enable the SSH server on your ESXi machine as shown below.
Connect to the SSH session using Putty and go into the directory where you copied the Home Assistant VMDK file. Please see the example below, your directory and file names will vary.
Once you are in the directory containing the original Hassio.VMDK file, issue the following command to duplicate the file.
vmkfstools -i “hassos_ova-4.15.vmdk” “hassos_ova-4.15_edited.vmdk”
The command above will thick provision the disk and will clear any snapshot complications. The copy of the original VMDK file will be saved in the same directory.
Once the Home Assistant VMDK duplication is complete, you can remove the original hassos_ova-4.15.vmdk file using the following command. Again (your exact file name will vary depending on the version).
Home Assistant VMDK ESXi | Configuring the New ESXi VM
Let us now go back to the Virtual Machines listing in ESXi and edit the Home Assistant instance.
Remove any existing hard drives and add a new hard drive, this time selecting the copy of the VMDK file we created in the previous step.
Change the hard drive controller to “IDE 0” and set it to “Master“. If ESXi doesn’t let you change it to “Master” for some reason, set it to “Slave”, save changes, and then go back in and change it to “Master”.
Go into the Boot Options of the ESXi machine and change it to “EFI”
You should now be able to Power On the ESXi Virtual machine normally. The above steps should have resolved any freezing issues you were having with the original Hass.io VMDK file.
The Home Assistant virtual machine does take a little bit of time to boot up and that is normal. Once booted up, the Hass.io instance uses a bare minimum of computer resources.
You should now be able to easily upgrade your Home Assistant software right from the Hass.io Supervisor panel.
We hope this article helped you fix any crashing issues with VMware ESXi and Hass.io. If you find this article helpful, please share it on social media.
If you are interested, please join our group on Facebook @ Tech Really.