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.
This was first published in November 2010