I’ve been working away on both the ESXi Host and ESXi Install sections for the vReference card, and I came across something I found interesting about the all new Auto Deploy tool. Here’s a quote from the penultimate paragraph on Page 68 of the current Installation and Setup Guide PDF for vSphere 5:
If the vCenter Server system is unavailable, the host contacts the Auto Deploy server for image profiles and host profiles and the host reboots. However, Auto Deploy cannot set up vSphere distributed switches if vCenter Server is unavailable, and virtual machines are assigned to hosts only if they participate in an HA cluster. Until the host is reconnected to vCenter Server and the host profile is applied, the switch cannot be created and, because the host is in maintenance mode, virtual machines cannot start.
So if you are running a fully virtualized environment, and planning to use Auto Deploy to build and configure all the hosts via Image Profiles and Host Profiles, then you need think twice about the design. Imagine you were ever faced with a complete power outage in your datacenter. Now in this day and age, you’d hope that this never happens. However, considering the number of complete outages I’ve seen at sites, I know I wouldn’t bet my job against it never happening.
So here’s the scenario. Everything powers off, all at once. You hit the power button on the servers. The hosts boot up, but stay in Maintenance Mode because they can’t hit the vCenter VM or Auto Deploy VM for their Host Profile. In Maintenance Mode the VMs won’t power on. The vDS switch cannot be created. You can’t power on your vCenter VM. You can’t power on your Auto Deploy VM.
Now, I’m not saying that you couldn’t get out of this situation if you knew what you were doing. Presumably you could recreate some Standard vSwitches from the ESXi Shell and force the host out of Maintenance Mode. And through good prior planning you’d already pinned your vCenter VM to a set host so you knew which one to start working on.
So how do you design around this? A physical server, a separate management cluster, a remote secondary Auto Deploy instance, …
This is certainly something to consider carefully before jumping into a full-scale Auto Deploy rollout.
Update: Michael Webster (AKA @vcdxnz001) just sent in the following addtional Auto Deploy design consideration. vShield App isn’t supported with Auto Deploy.
Update 2: VMware has released a new video-based technical note explaining how to build a Highly Available Auto Deploy Infrastructure. Their recommended path is to create a separate management cluster in which the hosts are not deployed via Auto Deploy. In the video, they call-out the following services as important to segragate:
Infrastructure VMs
- vCenter
- Active Directory
- DNS
PXE Boot Infrastructure
- TFTP
- DHCP
Auto Deploy Environment
- PowerCLI
- Auto Deploy
- vCenter