3rd party driver for 3ware in VMware ESXi 4.0

I have a server that has an AMCC 3ware 9650SE RAID controller for all its disks. For this controller, a 3rd party driver for VMware ESX 4.0 is available. It is not contained on the default installation disk of VMware.

Installing ESX 4.0 on this host is a very easy task, described at http://www.3ware.com/kb/article.aspx?id=15548.
Unfortunately, it is not that easy for the free ESXi 4.0 product, as you cannot supply a 3rd party disk during installation. Instead, you have to integrate the driver into the ESXi installation media. Here's a very short howto for this process:

  1. Get the driver .iso from the 3ware site (location above) and extract the RPM file from it. There's onyl one RPM file in there.
  2. Unpack the RPM package
  3. Extract and unpack the file install.tgz from the ESXi install .iso
  4. Put the files from the RPM driver archive from the directories /etc/vmware/pciid, /etc/vmware/init/manifests and /usr/lib/vmware/vmkmod into install.tgz
  5. Create a .iso that contains the new install.tgz

Now you can install ESXi from this .iso. During the installation process, it will recognize the controller and set it up properly. Unfortunately, it will not copy the actual driver to the disk, so it will not be able to boot up after installation. A few additional steps are required:

  1. Take all unpacked files from the RPM and tar them into a file named oem.tgz
  2. Boot your host with a Knoppix CD (or similar Linux Live CD) and find the partition containing an empty oem.tgz file.
  3. Replace the oem.tgz with your created file.

Voila! Now the Server will boot up just fine and run completely on your 3ware RAID disks.
Update: Hetzner has a script prepared for this. I haven't tried it, but it looks promising!
Update2: I missed to describe the etc/vmware/init/manifests directory for oem.tgz. It is also needed. Thanks to Brian for pointing me to the incomplete description.

ESXi-Customizer

Great page!  I would also recommend you guys use this awesome app for combining the ESXi 4.1/5 ISO and an oem.tgz/vib file without even extracting and re-archiving anything:
 
http://esxi-customizer.v-front.de/

ESXi 4.1

Very good page. With ESXi 4.1 you need to use vmtar to change from .vgz to .tar. Then you can follow your instructions, but then at the last step change from
.tar to .vtar and then gzip it to a .vgz

THEN it will work with 4.1

You can get vmtar on the normal ESXi CD.

Nevermind - I missed the

Nevermind - I missed the question posed at
http://www.bock.nu/blog/3ware-esxi4#comment-60
which was essentially the same thing. Please update your post.

Dead link and question.

The link to
> http://www.3ware.com/kb/article.aspx?id=15548.
is dead. This is the closest one I've seen http://kb.lsi.com/KnowledgebaseArticle15548.aspx

Question: You say

Put the files from the RPM driver archive from the directories /etc/vmware/pciid, /etc/vmware/init/manifests and /usr/lib/vmware/vmkmod into install.tgz

But WHERE in the install.tgz do you put them? install.tgz doesn't have an /etc directory. Just usr and sbin. Do you create those directories in install.tgz or just drop them anywhere?

RPM Drivers

Hi,
Would you tell me where I can locate the RPM driver archive as indicated in (4)?
 
thanks

Questions

AWESOME instructions, but I have a few questions.  How do you make the install.tgz file?  When I open the install.tgz file I see a sbin and a usr directory, but how do you add those 3 files to the install.tgz and do you put them in the root?  Also how do you edit the iso or make another bootable iso that works like the original one so that you can add the install.tgz file in?  Is there anyway you could just post your install.tgz file?  That would help a bunch I think.  Thanks!

install.tgz and iso file editing

Hi,unfortunately I cannot post my install.tgz, as this would be a copyright issue.Here are some tips how you can achive the file manipulations:

  • For the tgz files, you can unpack them on any Linux system with the command 'tar xzf install.tgz' in an empty directory, place the files into the created directory structure and pack it to a new tgz with the command 'tar czf /tmp/install.tgz *'.
  • The install.tgz is relative to the filesystem root, so you put e.g. the file pciid in <directory where you unpacked the install.tgz>/etc/vmware/pciid. You need to create the folders etc and etc/vmware. The same applies for the other two files.
  • For the iso file, I use the Linux tool ISO Master for editing the image in-place. No need to unpack and re-generate the iso from scratch.

Last Step

Nevermind, I was able to get the oem.tgz loaded successfully.  I was using a Windows program to make the tgz file and once I did it with the tar czf on the knoppix it worked properly.Thank you for your help with this, it's definitely awesome to be able to get ESXi to work with the RAID drivers without having to use a USB implementation.

Ok, next step :)

Ok, thanks for those instructions.  I was able to make the iso and install it.  I got knoppix and found the oem.tgz file on sda5.  I then extracted the RPM (I assume you mean the same RPM from before - the one on the iso) and so I have the etc and the usr directories.  I put those directories into the root of the oem.tgz file and then rebooted, but when the ESXi is booting, I get a pink panic screen that says boot file is corrupted.  I assume it just says that because it's not loading the drivers correctly?  Am I doing something wrong there?  How did you make the oem.tgz file? Sooo close...

boot file corrupted

Sounds like you are doing it correctly. The process worked for me.I did have a corrupted boot file once on a totally unrelated topic. IIRC it was due to a knoppix session that did not unmount / sync cleanly before reboot. I found a corrupted file which was ASCII text on other ESXi machines and binary garbage on the broken one. I replaced it from another machine and was up & running again. Unfortunately I do not remember the name / location of that file. You'll have to dig it up yourself.OTOH, maybe you just want to retry the installation process?

Corrupted File

Hi.  Any idea if the previous post about the pink screen / corrup file had any luck resolving it?  I'm getting the same thing.

 Had the problem with the

 Had the problem with the pink screen as well.  Was able to get it installed by downloading the original ESXi 4.0 iso (the current version is Update 1).  Haven't fully finished yet but its at least moving past where the pink screen would show.

init, manifest

I had problems with the pink screen under ESXi 4.1. I finally resoved the issue by adding the driver's etc/vmware/init/manifests/*.mf and etc/pciid/*.xml files to my oem.tgz.

Thanks!

Bernhard,
You just saved me a *ton* of fiddling around trying to figure out how to do exactly this. Thank-you so much! :-)