ESXi is the small footprint hypervisor created by VMware. It can be implemented on bare-metal servers and is used to host virtual machines. It can be managed by vCenter and is supported by all other VMware product.
So as far as the above few lines state, it is the same as VMware’s “thick” hypervisor : ESX. And there are even some advantages which the “thin” ESXi has over ESX, being :
- It’s “thin”; As I already stated above, ESXi is a small footprint installation. 32 Mb(!!!) agains approx. 2~3 Gb.
- Quick install; Boot,accept license, choose disk, install, run. A simple installation method to install it on your server. You can even use a USB drive to boot from.
- Easy update; Updating ESXi can be compared to flashing a BIOS. Because it’s such a small footprint, just download the newest version and replace the current one. Fast and easy.
- Simple configuration menu; ESXi comes with a simple configuration menu (again BIOS like) which provides you with all the options you can configure in ESXi. No more service console!
- More secure; ESXi having such a small footprint (less patches!) and having no external communication interface (CLI for example) except for VC / RCLI makes it more secure then ESX.
Ok, so why don’t we all switch to this small and practicle hypervisor? Well there are some disadvantages which can withhold you from implementing ESXi in a IT production environment, being :
- Service console is gone; For people already working with the fat ESX : No more service console. Which can be a disadvantage if your IT department frequently uses the command line.
- No central unattended distribution method; You can’t install ESXi unattended. Which is something you want if you have a large VI. Currently there are no unattended distribution methods as far as I know.
- Can’t install local agents; There is no service console anymore. So you can’t use local agents on your ESXi host. Everything needs to be able to communicate with the VI API or any other remote connect method to gather information.
Conclusion : ESXi is very suitable for corporate production environment. ESXi has the same functional specs as ESX; you can host virtual machines on it and it can be managed using vCenter. However ESXi has advantages and disadvanstages over ESX. Every environment needs to be evaluated if ESXi is suited for it. If currently you are still dependent on something ESXi can’t provide, for example agent in service console, then continue using ESX.
But switching to ESXi is the future! So if you decide not to switch now, prepare yourself for the future. Start using ESXi in your test environment, gain experience. Communicate current flaws to VMware and your third party tooling / hardware vendors. They can make this product better with your input!
For more information look at following links. There is a lot of information about ESXi. Read it and make your decision.
VMware whitepaper The Architecture of VMware ESXi
VMware whitepaper Managing VMware ESXi
Presentation by Amir Sharif (VMware) Managing ESXi in the datacenter (Need VMworld login account)
David Sumsky : Differences between ESX and ESXi
David Sumsky : Technical differences between ESX and ESXi
KB 1006543 : ESX and ESXi comparison
KB 1003345 : Differences in supported networking features between ESX server 3.5 and ESX server 3i
Update: When using ESXi you can install agents in VMware’s VIMA. Which also can be used to run the esxcfg commands (Thanx for the additional info goes to Duncan Epping)
I have been asking myself the same question and regarding the centralized deployment I was wondering if ESXi embedded + configuring via Powershell scripts would give enough of a speed increase in deployment for ESXi vs. wide scale ESX deployment via EDA or similar tools to make it an alternative for larger deployments?
Mike DiPetrello docummented a lot about booting ESXi with PXE and automate the installation (http://www.mikedipetrillo.com/mikedvirtualization/2008/11/howto-pxe-boot-esxi.html). Still in a large corporate environment it wouldn’t be my recommended choice.
Also have been thinking about using something like Veeam Configurator. But also a lot of hassle to get that to work.
In my opinion VMware should provide some kind of deployment tool in vCenter for ESXi (and ESX) to auto-configure and add the server to the vSphere.