You learned about VMware Auto Deploy’s benefits in part one of our two-part series, but it’s also important to know the vSphere 5 feature's nuts and bolts and how to set it up for customers.
Auto Deploy takes advantage of the Preboot Execution Environment (PXE) boot feature that is present in many physical network interface cards (NICs). This allows a server to boot from a remote image file using only a physical NIC and without local storage.
A server booting with PXE first obtains an IP address using Dynamic Host Configuration Protocol (DHCP) and then loads a boot image from a Trivial File Transfer Protocol (TFTP) server. Auto Deploy uses PXE booting to download an ESXi image file to a host and its components work to define which image a host should use, customizations and host-specific configuration information.
Auto Deploy relies on software depots that are used to store collections of vSphere Installation Bundles (VIB) and image files that are accessed remotely via HTTP to deploy or update hosts. VIB files are used to deploy the ESXi software and any hardware vendor customizations. The Auto Deploy Server uses the software depot to pull VIBs and image profiles when booting an ESXi host.
These are the initial steps for an ESXi host boot:
1. The PXE boot sequence begins and the host is assigned an IP address from a DHCP server.
2. Host contacts a TFTP server and downloads the gPXE, an open source, pre-execution environment, network boot loader.
3. The gPXE configuration file tells the host where the Auto Deploy server is located on the network so the host can make a HTTP boot request from the server.
4. The Auto Deploy server then queries the rule engine for the host and streams the components specified in the image profile and host profile to the host, and it also tells it the vCenter Server’s location.
5. The host boots from the image profile and applies a host profile.
6. The Auto Deploy server assigns the host to a vCenter Server.
7. If a rule exists for the host, it is placed in the defined folder or cluster. If no rule exists, the host is added to the first data center displayed in the vSphere client user interface.
Once a host has been provisioned the first time, subsequent host reboots are automatic and the host is simply re-provisioned. The big risk, however, with using Auto Deploy is that hosts depend on all Auto Deploy components and software depots being available when a host starts up so they can boot properly. If a vCenter Server is unavailable, hosts are still able to boot, but if a host uses distributed vSwitches they will be unavailable, the host won’t be able participate in a cluster and will be put in maintenance mode.
Preparing for the worst and setting up Auto Deploy
As a result, careful planning is needed to ensure that your Auto Deploy components will be highly available (HA). If you run the Auto Deploy server as a virtual machine (VM), you can run into a big problem. In the instance the host that is running the VM is down, it will never be able to boot, and as a result you need to ensure that Auto Deploy server is part of an HA cluster.
The big problem is your customer’s data center going down because you won’t be able to bring any hosts up since they’re all relying on the Auto Deploy VM being up. This essentially creates a chicken or egg scenario, and as a result, you should ensure that your Auto Deploy server and software depot locations are either physical or on a host that does not need an Auto Deploy boot.
Setting up Auto Deploy is a bit complicated and something that you will want to assist your customers with. The prerequisites for Auto Deploy are as follows:
- It’s only available with the Enterprise Plus license.
- A DHCP Server must be available on the network.
- A TFTP Server must be available on the network.
If you choose to deploy vCenter Server using the vSphere 5 virtual appliance, both the DHCP and TFTP servers are included already, otherwise you can set one up on any server on your network. The Auto Deploy server is included as part of the vCenter Server virtual appliance as well. The Auto Deploy server installation media is included on the vCenter Server installation media and can be deployed to either a standalone Windows server or vCenter Server.
It’s recommended to install it on a standalone server for a customer with a large environment. You’ll also need to install Power command-line interface (CLI) on a workstation so you can manage software depots and rule sets. The vSphere 5 installation and setup guide contains detailed instructions for setting up both Image Builder and Auto Deploy.
It may seem complicated and a lot of effort to set up Auto Deploy, but, as you learned in the previous tip, there are many benefits for you and your customers after setting it up. After your customers understand the principles and procedures for using Auto Deploy, your customer’s vSphere 5 environment becomes much easier to manage. Just be sure to implement a design architecture that ensures that Auto Deploy’s various components are HA.
About the expert
Eric Siebert is a 25-year IT veteran whose primary focus is VMware virtualization and Windows server administration. He is one of the 300 vExperts named by VMware Inc. for 2009. He is the author of the book VI3 Implementation and Administration and a frequent TechTarget contributor. In addition, he maintains vSphere-land.com, a VMware information site.
This was first published in September 2011