After completing Part 1, we have DHCP configured to assign a reserved IP address to the Cisco B200 M2 blades when they boot to the vNIC. Now the goal is to create the image that the auto-deploy hosts will use..
The image building procedure sounds complicated, but once you break it down, it’s not too bad. First, we need to inventory the components (VIBs) that’ll be needed on the hosts; above-and-beyond the base install. In our case, we needed the HA agent, the Cisco Nexus 1000V VEM and the EMC NAS Plugin for VAAI. The HA driver will be downloaded from the vCenter Server, but you’ll have to download the licensed ZIP files from Cisco and EMC for the others.
In addition to the enhancements, we’ll need the VMware ESXi 5.0 offline bundle, “VMware-ESXi-5.0.0-469512-depot.zip” from the licensed product downloads area of VMware.com. This is essentially a “starter-kit” for image builder, it contains the default packages for ESXi 5.0.
- Copy these files into C:\depot
- Launch PowerCLI
On to the PowerCLI code:
Register the offline bundle as a Software Depot (aka source)
Connect powerCLI to your vCenter server (replace x.x.x.x with your vCenter server’s name or IP)
Connect-VIServer –server x.x.x.x
List the image profiles contained in the offline bundle, ESXi-5.0.0-469512-no-tools and ESXi-5.0.0-469512-standard. We’re going to work with “standard”.
Register vCenter Server depot for HA agent
Add-EsxSoftwareDepot -DepotUrl http://X.X.X.X:80/vSphere-HA-depot
Register depot for updates to ESXi
Add-EsxSoftwareDepot -DepotUrl https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
Register depot for Nexus 1000V VEM and VAAI plugin for VNX NAS
List the image profiles, except now it will list several more versions. For each, there is a “no-tools” and a “standard”. Make a note of the newest “standard” image (or the one you want to use)
Clones the standard “ESXi-5.0.0-20111204001” image profile to a new image profile with the name “ESXi-HA-VEM-VAAI-20111204001”
New-EsxImageProfile –cloneprofile ESXi-5.0.0-20111204001-standard –name “ESXi-HA-VEM-VAAI-20111204001”
Add the HA agent (vmware-fdm) to our custom image profile
Add-EsxSoftwarePackage -ImageProfile “ESXi-HA-VEM-VAAI-20111204001”-SoftwarePackage vmware-fdm
Check for the VEM package “cisco-vem-v131-esx”
get-esxsoftwarepackage -Name cisco*
Add the Nexus 1000V VEM to our custom image profile
add-esxsoftwarepackage -Imageprofile “ESXi-HA-VEM-VAAI-20111204001” -SoftwarePackage cisco-vem-v131-esx
Check for EMC VAAI Plugin for NAS “EMCNasPlugin”
get-esxsoftwarepackage -Name emc*
Add the EMC VAAI plugin for NAS to our custom image profile
add-esxsoftwarepackage -Imageprofile “ESXi-HA-VEM-VAAI-20111204001” -SoftwarePackage EMCNasPlugin
Export our custom image to a big zip file – we’ll use this to apply future updates
export-esximageprofile -imageprofile “ESXi-HA-VEM-VAAI-20111204001” -Filepath “C:\depot\ESXi-HA-VEM-VAAI-20111204001.zip” –ExporttoBundle
OK, now we have a nice image profile, let’s assign it to a deployment rule. To get Auto-Deploy working, we’ll need a good Host Profile and details from a reference host. So, we’ll apply our initial image profile to our reference host, then use our reference host to create a host profile and update the RuleSetCompliance
Create a new temporary rule with our image profile and an IP range; then add it to the active ruleset.
New-DeployRule –Name “TempRule” –Item “ESXi-HA-VEM-VAAI-20111204001 –Pattern “ipv4=10.10.0.23”
Add-DeployRule -DeployRule “TempRule”
At this point, we booted up the blade that would become the reference host. I knew that DHCP would give it the IP that we identified in the temporary deployment rule. BTW – Auto-deploy is not really fast, it takes 10 minutes or so from power-on to visible in vCenter.
You may have noticed a warning about a component that is not auto-deploy ready; we have to fix that.
In the following code, “referencehost.mydomain.com” is the FQDN of my reference host. This procedure will modify the ruleset to ignore the warning on the affected VIB.
$tr = Test-DeployRuleSetCompliance referencehost.mydomain.com
After this completes, reboot the reference host and add it to your Nexus 1000V DVS.
Part 3 (coming soon!) will cover the host profile and final updates to the deployment rules.