UPDATE 2 5/15/2012: Looks like VMware/Cisco pulled the 5.0 U1 custom ISO installation media. So follow my blog post below to create your own.
UPDATE 1 4/23/12: Cisco released a customized vSphere 5.0 U1 installation ISO with all of their latest drivers. You can download it here under OEM Customized Installer CDs. The instructions below are still valid, and would be good for incorporating future updates in your ISO image.
Some vendors, like HP, produce customized VMware installation ISOs that have all of their drivers integrated. This is a great time saver, but unfortunately Cisco does not provide customized vSphere 5.0 installation media with the very latest drivers. Starting with vSphere 5.0 VMware gave users a method to build their own installation media and include updated packages, such as drivers. The procedure below creates a bootable ISO image using the very latest ESXi build (5.0 U1 plus the latest patches). Your machine must be connected to the internet, as it will pull down the latest bundles in real time. You do NOT need to start with an offline depot.
1) Open a PowerCLI window with Administrator rights and type the following command:
2) At this point you can list all of the packages in the depot with the following command. A partial listing is shown below.
Get-EsxSoftwarePackage | select Name,Version,ReleaseDate | sort ReleaseDate
3) Download the driver packages for your hardware from the following VMware URLs. Personally I would suggest you download all of them, so you don’t have to rebuild the image if you get a different server model.
4) You need to unzip each of the files that you downloaded, which will reveal another ZIP file and a VIB file, among others. We will be using the embedded bundle ZIP files. If you downloaded all of the drivers, unpacked them, and moved the bundled ZIPs to a single directory it should look like:
5) Repeat step 1 from above, but substitute the bundle zip files from the above screenshot. A sample is below:
6) Now you want to create a copy of the “latest” VMware profile and give it a unique name. To list all of the standard ESXi profiles use the following command:
Get-EsxImageProfile | Sort-Object “ModifiedTime” -Descending | format-table -property Name,CreationTime
7) You will notice that the latest profile has a date of 4/16/2012, but the build number is only 469512, which is far from the latest build. The latest build is actually ESXi-5.0.0-20120404001-standard
. You can validate the latest patch build here
Looks like the 4/16/2012 builds were a glitch, as the profile list on 4/17/2012 no longer showed the 4/16 builds and the latest was in fact the 3/16/2012 build.
8) Now you need to build a new profile based on the latest patch build. I called my new profile “ESXi-5.0.0-UCS-04152012“. The build profile name will be displayed during the boot selection process if you create an installable ISO file, so think about the name you use.
new-esximageprofile -cloneprofile ESXi-5.0.0-20120404001-standard
9) After you create a new image profile, you now want to add the updated UCS drivers to the profile. To determine what software package name to use, look in your driver directory at the VIB filenames. The filename prefix (e.g. net-be2net) is what you will want to use when adding the driver files.
When I tried to update the scsi-megaraid-sas bundle it said it already existed, so I skipped that in example below. To add the remaining drivers issue the following commands:
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 net-enic
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 scsi-fnic
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 scsi-lpfc820
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 net-ixgbe
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 net-be2net
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 scsi-qla2xxx
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 net-qlcnic
add-esxsoftwarepackage -imageprofile ESXi-5.0.0-UCS-04152012 net-qlge
10) To validate that your new profile in fact has the updated and new UCS drivers, use the following command:
compare-esximageprofile -comparisonprofile ESXi-5.0.0-UCS-04152012 -referenceprofile ESXi-5.0.0-20120404001-standard
As you can see in the screenshot below two new drivers were added to our custom image (net-qlge and net-qlcnic) while four others were upgraded. So yes, our custom image did get injected with the new drivers.
11) To create a customized bundle that you can use later, issue the following command:
export-esximageprofile -imageprofile ESXi-5.0.0-UCS-04152012 -exporttobundle -filepath e:\ESXi-5.0.0-UCS-04152012.zip
12) To create a customized bootable ISO image, issue the following command:
export-esximageprofile -imageprofile ESXi-5.0.0-UCS-04152012 -exporttoISO -filepath e:\ESXi-5.0.0-UCS-04152012.ISO
13) If all goes well, and you use the exact same bundles that I did, when you install ESXi 5.0 you should see build 623860.