During my experimentation with VMware Player and VirtualBox, and learning about Ubuntu Server, I found out about ESXi. ESXi is a FREE Software System from WMware, which provides a "minimal" operating system, to host virtual machines. I tested an installation of ESXi, running inside VMware Player on my LinuxMint desktop system, and not only did it actually work, I was able to learn enough about it to convince me that I want to install ESXi on my new server.

Up until this point, I had been using ImageWriter on LinuxMint to copy .iso images of various Linux installs to a USB stick, as opposed to wasting CDs.

So I popped a USB stick into my LinuxMint system, ran ImageWriter, selected the ESXi 5 .iso file, and hit the button to copy it to the USB stick. It just sat there, for the longest time doing nothing. After about 10 minutes, I exited ImageWriter. hmmm. Is it my USB stick thats somehow become damaged? So I tested another one. Same result.

I was bewildered. After all I had done this a few times with various Linux distros. Why isn't this working? So this time I selected my Ubuntu Server .iso file, and hit the button to copy it. It worked, as it had done many times in the past. hmmm..

I did some Googling. It appears ImageWriter only works with distros that it "knows about". Several posts suggested using another program called UnetBootin to copy ESXi to a USB stick. So I downloaded that. Unetbootin would NOT detect any of my USB sticks.. More Googling.. Oh, Unetbootin expects the USB stick to be pre-formatted to FAT32. Really?? Ok fine. I figured out how to do that. Finally Unetbootin detected the USB stick. I told it to copy ESXi to the USB stick. It took FOREVER for it to copy ESXi to USB. After it was finally done, I took the USB stick, and put it into my new server. It would NOT boot off the USB. What now I wondered??

After a few more attempts at running Unetbootin without any success, I decided to burn ESXi to a CD. Put the CD into my new server, and it booted. OK I thought, maybe now we can make some progress towards getting ESXi installed on this machine!

After following the prompts in the ESXi installer for a while, I got to the point where it detects the hard drives in the system. My underlying goal was to be able to use the new Adaptec 6405E Hardware RAID  controller for this new system. It DID NOT DETECT THE ADAPTEC CONTROLLER! It simply showed NO DRIVES at all.. hmmm..

After much more Googling, it appears ESXi is VERY PICKY about the Hardware that it supports. While it appears to support LSI RAID controllers "out of the box", it does not appear to like my Adaptec controller. I found a few references on the web which told me it was possible to add the adaptec driver to an already running ESXi system. Well, in my case I dont HAVE it installed yet. What do I do now?

One of the forums had an entry buried deep down within it, which mentioned creating a custom build of the ESXi installer, and yet it didnt have detailed instructions on HOW to do that. Another idea occurred to me. Lets go look in the Adaptec installation guide, which came on the accompanying CD in the Adaptec box. Maybe that will shed some light on all this. Here's what I found:

The following are excerpts from the Adaptec RAID Controller Installation and Users Guide:

To install the Adaptec RAID controller with VMWare ESXI 5, you must create a custom boot image using the WMware Image Builder. The VMware Image Builder is distributed as a snap-in component for vSphere PowerCLI, a command-line and scripting tool from VMware based on Microsoft PowerShell.

You can download PowerCLI from the WMware Download Center at www.wmware.com/downloads.

Note: in the following instructions perform steps 1-7 on your Windows build machine-the machine used to build the custom boot image - and Steps 8-11 on the machine where you want to install the custom image.

  1. Download Microsoft PowerShell and Microsoft .NET 2.0.
    Note: PowerShell is preinstalled on Windows 7 and Windows 2008 systems.
  2. Run PowerShell as Administrator, then set the execution policy to Remote Signed.
    # Set-ExecutionPolicy RemoteSigned
    Note: this step will require responding with a YES.
  3. Download and install vSphere PowerCLI on your Windows build machine.
  4. Download the VMware ESXI5.0 Standard Software Depot and store in a temporary location on your Windows build machine.
    Note: I searched VMware's web site for this, and was not able to find it on their web site. So I Googled it. I found the following snippet HERE. Just in case one day this becomes a dead link, I copy/pasted the relevant snippet here:

    "The instructions call to download the “Offline Depot” from VMware, particularly a file called “VMware-ESXi-5.0.0-469512-depot.zip“. This however, is not possible (any longer) with only a trial license associated to a VMware Account. However after a little digging around I found out that you don’t actually need to download the file. You can add a network based software depot instead:

    Add-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

  5. Insert the Adaptec Installation DVD, navigate to the linux\driver folder, then copy the Adaptec AACRAID driver binary, aacraid-esxi5.0- to a temporary location on the Windows build machine.
    Note: the version string in the file name may differ from the one above.
    After you copy the file, remove the Adaptec Installation DVD.

    My Note: sure enough, on my Adaptec DVD, the file is named:
    I copied the zip file to the root dir of my D: drive.
  6. Launch vSphere PowerCLI, the follow the steps below to create the custom boot image:
    • At the PowerCLI prompt add the VMware Image Builder snap-in by running the following cmdlet:
      Add-PSSnapIn VWware.ImageBuilder
      Note: You will see a message if the Image Builder snap-in is already installed.
    • Add the VMware ESXI5.0 Software Depots:
      My Note: Per the above point #4, I did the following:
      Add-EsxSoftwareDepot https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml
      After a brief pause, it came back with a message which lead me to believe this step actually worked.
    • Add the AACRAID driver binary as a software depot:
      Add-EsxSoftwareDepot C:\ESXi5.0-PMC-CustomISO\aacraid-esxi5.0-
      My Note: I adjusted the above command to reflect the location of the driver on my system like this:
      Add-EsxSoftwareDepot D:\aacraid-esxi5.0-
      After a brief pause, it came back with a message which lead me to believe this step actually worked.
    • Verify the software depots are added:
      My Note: The output from this command showed me the Software Depot and the driver zip file had indeed been successfully added.
    • List ESX Image Profiles:
      You should see a display like this:
      My Note: The above command output many lines of text, which included the above 2 lines, so things are looking good at this point.
    • Create a copy of the standard image profile, using the -CloneProfile option:
      New-EsxImageProfile -CloneProfile ESXi-5.0.0-469512-standard -Name "ESXi5.0 Adaptec Series 6"
      My note: It prompted me like this (which was not in the Adaptec documentation):
      Reading ahead to the next step in the Adaptec manual, which I list next, I responded with "PMC-Sierra".
    • Change the vendor and acceptance level of the new image profile:
      Set-EsxImageProfile -ImageProfile "ESXi5.0 Adaptec Series 6" -vendor PMC-Sierra -AcceptanceLevel communitysupported
    • Check if the new driver image is available:
      You should see a line that looks like this:
      scsi-aacraid… Adaptec 19.08.2011
      My Note: This command output what appeared to me to be a list of all the drivers in the current installer, which included a line which looked like the above, so things are looking good at this point.
    • Add the scsi-aacraid software package to the new image profile:
      Add-EsxSoftwarePackage -ImageProfile "ESXi5.0 Adaptec Series 6" -SoftwarePackage scsi-aacraid
      My Note: The response from this command appeared normal.
    • Export the custom ISO image:
      Export-EsxImageProfile -ImageProfile "ESXi5.0 Adaptec Series 6" -FilePath C:\ESXi5.0-PMC-CustomISO\ESXi5.0-PMC-Sierra-Series-6.iso -ExportToISO
      My Note: I adjusted the output path to reflect my own system, like this:
      Export-EsxImageProfile -ImageProfile "ESXi5.0 Adaptec Series 6" -FilePath D:\ESXi5.0-PMC-Sierra-Series-6.iso -ExportToISO
  7. Burn the custom ISO image to a CD.
  8. On the VMware ESXi machine, insert the custom boot CD, then restart the computer.
  9. Follow the on-screen instructions to begin the VMware installation.
  10. Complete the VMware installation, following the on-screen instructions.
  11. Remove the custom boot CD, then reboot the computer.