If VMware ESXi 4 is so small, why is it so big?

Everything you ever wanted to know about the VMware ESXi footprint.

The flagship hypervisor from VMware actually comes in two different form-factors: classic VMware ESX with a Linux-based management console and thin VMware ESXi that can boot from a small embedded flash drive.  Even though ESXi is available for free, it is functionally equivalent to classic ESX when fully licensed and managed by vCenter Server.

VMware ESX 3i, as it was originally known in the VI3 era, was just a tiny 32MB.  With VMware vSphere 4, the name changed slightly to VMware ESXi 4, and grew to about 60MB — still extremely small for a fully-functional hypervisor with HA, VMotion, DRS, and all the other vSphere features.

While ESXi is less than 60MB, installing it actually requires a 1GB flash device.  This raises a question:

VMware claims that ESXi is small — why does it require so much storage?

Unlike a general purpose operating system, ESXi was designed to be deployed as an image — similar to a router.  The “installer” merely paves your empty storage device with some partitions.  In fact, there are two separate partitions created for ESXi images — this allows administrators to roll back to a known-working environment if an update is not successful.  In order to be prepared for the future, these two partitions are several times larger than the data they contain.

Not only does a 1GB flash device contain the ESXi hypervisor, it also provides VMware Tools for various supported operating systems and a copy of the vSphere Client which administrators can download and install to their workstations.  These components are not executed by the hypervisor at all — they can be obtained through other means, but it is very convenient to have them right on the host.

Take a look at this visual to better understand the partition layout:

VMware ESXi 4 flash drive partition layout

  • Partition 4 enables the actual booting from flash
  • Partition 5 contains files that make up the VMware ESXi image
  • Partition 6 is used to store a future update to the image file
  • Partition 7 is for a core dump
  • Partition 8 contains tools, drivers, and the Windows-based vSphere Client installer

In case you are curious, here are the contents of that last partition:

Detailed listing of VMware ESXi 4 extra goodies

As you can see, it contains a bunch of Windows executables and ISO images for your various guests.

Still not convinced?

Some may still doubt the VMware ESXi 4 60MB footprint claim, but one sure way to make the case is to simply run ESXi from a very small flash drive.  Olivier Cremel, the inventor of VMware ESXi, explained to me how to do just that. In my next post on this topic I’ll walk you through it, step by step.  Don’t miss out — subscribe to the VCritical RSS feed today!

Tags: , , , ,

28 comments

  1. Nicholas Weaver’s avatar

    Nice post. Can’t wait for the next post to explain how.

  2. Eric Gray’s avatar

    Me too, I better get started writing it. 🙂

  3. tonyr08’s avatar

    whats the memory footprint? Also does esxi actually include vmotion or do you have to add the vsphere advance to it to get vmotion. if so how much does that add to memory footprint.

  4. Vladan’s avatar

    Excelent reply to the fight “which hypervizor is bigger”…. Nice explanation for everyone to understand now.

    Sometimes is better to explain like step-by-step so even people which are not “Geeks” like me can understand….. -:)

    Great Job Eric !

    1. Eric Gray’s avatar

      Vladan — Thanks, I appreciate that.

    2. Andrew Storrs’s avatar

      Nice post Eric. Clear and easy to follow. 🙂

      tonyr08, to answer your question ESXi is feature complete; all functionality in the hypervisor enabled by the highest tier of vSphere licensing is already present, it’s just a matter of entering a license key and making use of it.

    3. aharden’s avatar

      Great explanation. However, directly comparing the ESXi hypervisor size to the size of a full WS2008 w/Hyper-V installation isn’t accurate.

    4. Eric Gray’s avatar

      Andrew, I appreciate that, and thanks for answering Tony’s question as well.

      Aharden, the purpose of this article is to correct the misguided notion that ESXi is actually much larger than VMware claims. If, for some reason, you don’t think it should be compared to Hyper-V, you are entitled to that opinion. Maybe you are saying it should be compared to the free Hyper-V Server instead? Thanks for reading — glad you liked it.

    5. tonyr08’s avatar

      dang knew that about the licensing vmotion part, what I really meant to ask is does the in memory footprint stay the same wether vmotion is licensed or not? Or does another module load when it sees the valid license?

    6. aharden’s avatar

      Eric, I think we’re talking past one another. The concentric circle picture on the VMware blog post directly compares the ESXi hypervisor size (not the ESXi installed size of ~1.5GB) against the installed size of both Server Core and Full installs of WS2008 with Hyper-V. It’s not a fair comparison.

      I feel I have to couch my response here – I’m a Windows Server admin and huge VMware fan managing 20+ ESX hosts with no logical reason to switch gears to Hyper-V at this time. MS and VMware are both guilty of inaccurate comparisons in this case.

    7. Eric Gray’s avatar

      Aharden, The installed size of ESXi is not 1.5GB. Even if you count all of the guest OS tools and the downloadable vSphere Client, the size is still under 300MB.

      What would be your recommendation on how to measure the footprint of a hypervisor?

    8. aharden’s avatar

      I would measure hypervisors’ storage footprints by comparing the amount of storage space they consume immediately after the default vendor-supported installation. You spelled this out above for ESXi; I’ll check the ESXi stick I have to confirm. The ~1.5GB quote was from another blog article and it may have been more applicable to ESXi installed to a hard disk after an upgrade, which might retain more data from the previous install. Because ESXi carves out 900MB to operate normally (based on your example), I consider that its storage footprint. That is the number that should be compared against either the total space consumed by WS2008/Hyper-V installed files or, more accurately, against the default partitioning of the WS2008 Setup routine.

    9. Simon Seagrave’s avatar

      Wow, great article Eric – can’t believe I haven’t read it before now. So many people I know get confused when they see the ESXi install consuming more than the actual hypervisor size of 32/60MB.

      Keep up the good work.

      Cheers,

      Simon
      http://www.techhead.co.uk

      1. Eric Gray’s avatar

        Thanks, Simon. Glad you found it useful.

        Eric

      2. Ulli Hankeln’s avatar

        I use a similar technic to create a USB device with different ESXi options – like run ESX4i and ESX35i – see http://sanbarrow.com/phpBB2/viewforum.php?f=67

        Ulli

      3. Alasdair Carnie’s avatar

        Hi Eric,

        Thanks for this article. It answered an important question that comes up quite frequently from my delegates and has cleared up the “How big is ESXi” question once and for all.

        Slightly off Topic. Given that the ESXi log files do not survive a system reboot, would it be possible to create an extra partition on the remaining 1GB on a 2GB USB Stick and store the log files on there? I’m looking to get rid of the scratch partition and store the logs somewhere other than the local VMFS partition. This is so I can delete and recreate the local VMFS partition when I reset student servers every week.

        1. Andrew Storrs’s avatar

          Alasdair, why not configure a syslog server for each of the ESXi hosts and then you won’t have to worry about the local log files?

          http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1016621

        2. Rafael Guedes’s avatar

          Hi Eric,

          Thanks for this nice post. I had misconfigured opinion about that, now I can explain to my colleagues and mainly to our customers.

          aharden and Eric, please correct me if I’m wrong. But is the point here disk utilization or OS code to maintin? I always though this VMware claim as a way to show how small your code is, easily to maintain, less patches to apply, etc. Because that, I really never was concerned about ESXi was using 5GB or, 500MB.

          1. Eric Gray’s avatar

            You are right. The benefit of ESXi is the absence of a general-purpose OS – far less patching of components completely unrelated to the host/hypervisor.

Comments are now closed.