Category Archives: virtualization

VIRTUALIZATION | Adding Intel Pro 100M Nic support to ESXi 4.1

I wanted to make ESXi 4.1 support an Intel Pro 100 PCI NIC that I owned. Below is an outline of how I accomplished that.

ESXi looks for the presence of ‘oem.tgz’ upon startup as the mechanism to introduce non-native devices and their respective drivers. I created a custom oem.tgz as the means to add support for the NIC.

You may run ‘lspci -v’ for a list of all devices present with their device ID’s. You need the device ID notation for use in the simple.map file. (Your computer needs to be in ‘Local Support’ mode, after which you do Alt-F1 to access the shell)

The driver you need is available here: http://cid-27745855ca543aa9.office.live.com/self.aspx/.Public/e100.o

Run a FTP server on your local network (Filezilla is a good option), and make your e100.0 file available via the ftp server.

Put ESXi install into ‘Remote Tech Support’ mode (you do this from the console on the host computer).

SSH to the ESXi host.

Use WGET to download the e100.o driver file from your FTP server to your ESXi host volume.

Copy the ‘simple.map’ and ‘pci.ids’ files to a temp directory location (so you can bundle them into oem.tgz file later). You’ll find these files in ‘etc/vmware’.

Edit ‘simple.map’ to add entry for the nic (using vi editor). The line I added is shown in the snapshot below.

simple.map excerpt

For peace of mind, you can also confirm the nic is already identified in the ‘pci.ids’ (below is a snapshot from my pci.ids file, confirming the presence of the device).

pci.ids excerpt

Create the tar archive file. Your files to be archive should be structured as follows:

oem/etc/vmware/simple.map
oem/etc/vmware/pci.ids
oem/usr/lib/vmware/vmkmod/e100.o

Place the tar file in /bootbank.

Confirm the new nic is connected via patch cable to your switch and shows an active link.

You’re done. When you reboot, the Intel Pro 100 NIC should get initialized and be available for use within ESXi.

I understand this post is a little short on details. It is closely related to another of my posts here. If you look at the more detailed steps of that post, they may help you to understand my more general instructions in this one.

Advertisements

VIRTUALIZATION | Run ESXI 4.1 on HP Compaq dc5750 Workstation

I purchased a 5750 on the cheap with an eye to making it a virtual host. It’s dual core and can accept up to 8GB of RAM. I confirmed it runs Hyper-v without a hitch, but I am partial to vmware esxi. Unfortunately, it’s SATA controller is not supported for esxi 4.1, so I worked a bit to arrive at the following methods to make enable support for the controller.

Here’s an overview of the steps, which are provided in detail below:

  1. Install esxi 4.1 to a usb drive
  2. In the running esxi host, enter the support mode shell to create a custom oem.tgz (with support for the storage controller as a result of an addition to the simple.map) which you place in /bootbank
  3. Restart, and the oem.tgz is appended to the boot and enables your usb-based esxi host to recognize your local SATA drives as available datastores.

Section 1 – Install esxi 4.1 to usb drive — this will serve as your hypervisor drive (adapted from http://blog.jargontech.com/installing-esxi-4-1-to-usb-flash-drive/)

  • Download the ESXi 4.1 ISO and burn to CD.
  • Insert your 1GB USB stick into the server and pop-in the CD to the server.
  • Boot from the CD
  • Select (Enter) Install
    Press F11 To accept the EULA and continue.
  • Select to USB Device (remember must be at least 1GB, but anything larger than 1GB will essentially be unused) and click Enter to continue.
  • You will get a notification (potentially) about overwriting the device, click Enter to continue.  All data on the USB will be lost so please use a blank USB or move data off of it before proceeding.
  • Press F11 to confirm the installation.
  • Press Enter to Reboot after install completes and eject the CD.
  • During the boot up process press the appropriate key to enter your server’s BIOS settings.
  • Ensure that Boot from USB is enabled and that the USB boot device is in the proper boot order  for your preferences (above Hard Drive but below CD/DVD in my case).
  • Save your setting and let the server complete the boot up process.
  • At this point your server is booted up to ESXi via USB and you can complete the customization of your specific ESXi deployment by setting the hostname, IP address and so forth.

Section 2 – Create and deploy a custom oem.tgz on your usb flash boot drive (adapted from http://www.vm-help.com/esx40i/customize_oem_tgz.php)

Let your dc5750 boot esxi from the usb drive. After esxi boot has completed, press F2 (customize system), go to Troubleshooting Options, and Enable Local Tech Support. Now you can do Alt-F1 to obtain shell access. From the the shell, complete the steps below:
1. cd /tmp/
2. mkdir -p oem/etc/vmware
3. cd oem/etc/vmware
4. cp /etc/vmware/simple.map simple.map
5. vi simple.map

— scroll to the 1002 section and add a line before the first 1002 as follows: 1002:4380 0000:0000 storage ahci (added line shown here).

simple.map clip6. close vi – press ESC and enter :wq
7. cp /etc/vmware/pci.ids pci.ids (note that the pci.ids does NOT need modification, as it already has an entry for the 1002:1038, shown below)
pci.ids excerpt 8. cd /tmp/oem
9. tar -cvzf oem.tgz etc
10. cp oem.tgz /bootbank/oem.tgz
11. reboot

Section 3 – You are set to go. Set your network settings on the esxi host and then access it using the vsphere client to begin operations.