Booting VMware ESXi from flash drives with the ESXi Installable edition eliminates the need for local storage on servers and lets you commission new servers through a storage device. VMware officially supports ESXi only on a hardware vendor-supplied flash drive, but installing ESXi works fine on just about any thumb drive.
The release of vSphere 4.1 brought new capabilities to ESXi, such as the ability to boot from a storage area network, Windows Failover Clustering with VMware High Availability and Active Directory integration. But there's a caveat: An installation message claims ESXi 4.1 requires at least 5 GB of memory -- so you need at least an 8 GB flash drive.
The core components of ESXi 4.1 take up less than 1 GB, however. So do you really need an additional 4 GB? Technically, yes, but you can circumvent this requirement and install ESXi 4.1 on a 1 GB flash drive.
The anatomy of ESXi 4.1
To understand the new size requirements for ESXi, let's look at how VMware's lightweight hypervisor partitions a disk:
- a 4.2 MB File Allocation Table (FAT) boot partition
- a 896 MB extended partition
- a 4.3 GB FAT partition for scratch storage and swap
- the remainder of the device may be formatted as a Virtual Machine File System
The core components of ESXi 4.1 -- the boot and extended partition -- total approximately 900 MB, which is why you can install ESXi on a 1 GB flash drive. But now you need 4.3 GB for scratch storage and swap space.
This partition has actually been around before ESXi 4.1, and it's responsible for several ESXi functions:
- stores logs and vm-support output for ESXi Tech Support Mode (TSM)
- contains many ESXi management utilities and is the /mount point when you log into TSM
- has symbolic links (or mappings) to other disk partitions -- such as /vmimages, /bootbank and store
- used for upgrades
Workaround to the ESXi 4.1 size requirement
By specifying a location on a VMFS volume for the scratch partition, you can install ESXi 4.1 on a 1 GB flash drive without sacrificing host memory. After ESXi 4.1 is installed, check the scratch partition location and set VMFS volume for storage with the instructions below. (Note: The current vSphere documentation is incorrect).
- In vSphere CLI or vSphere Management Assistant, enter the following command to check the current scratch location:
vicfg-advcfg.pl --server [IP/host name]--username root -g ScratchConfig.ConfiguredScratchLocation
If there is no value, a scratch-disk partition does not exist.
- To set a scratch location on a VMFS volume type, type the following command:
vicfg-advcfg.pl --server [IP/host name] --username root -s /vmfs/volumes/storage1/scratch ScratchConfig.ConfiguredScratchLocation
Note: You must create the directory on your VMFS volume first.
- Reboot the ESXi host. After the restart, the new directory will contain new folders. The /var/tmp folder stores the vm-support output.
You can also designate a VMFS volume in the vSphere Client by navigating to ESXi host > Configuration > Software > Advanced Settings > ScratchConfig.
In the end, don't be discouraged by ESXi's disk-space requirements. It's possible to reuse ESXi thumb drives with version 4.1, even if their capacity is less than 8 GB. You'll need to perform a few initial steps to maintain optimal host performance, but you'll also benefit from ESXi's new features.