Search This Blog

Friday, 20 February 2009

Installing ESXi onto Intel Optiplex 745



What a fuss!!


So I got the machine, plugged in a cheap 1TB Samsung HD103UJ disk along with the 80Gb disk that came with it. I coneected the 80GB into SATA 0 and the 1TB into SATA 1, and the CD into SATA 4. The 745 comes with SATA 0, 1, 4 & 5.


So, first i tried installing ESX, but this failed as the storage controller wasn't recognised. I then put the ESXi installer onto a USB stick (here's how to do this) and tried installing, but again, this failed for the same reason.


So, a bit of surfing later, I had discovered that the OEM.TGZ that comes in the root of the 3i installer, and contains all the PCI IDs for all the devices for ESXi (heres the list) doesn't have the ID for the Intel controllers on my motherboard which seem to be 8086:2820 (4 port SATA IDE Controller (ICH8)) and 8086:2825 (2 port SATA IDE Controller (ICH8)). To discover these PCI IDs for the device, I booted the 3i installer, and when it booted, I hit F1, logged in as root with no password, and entered lspci -v or lspci -p. This will list all the PCI IDs, fortunately, the storage devices were at the end of the list as I couldn't pipe the output to more for some reason.


Fortunately, the post here provides an updated oem.tgz that contains the updated OEM.TGZ for my controllers in the simple.map file.


So, i just copied this OEM.TGZ onto the USB stick to replace the current one.


I then booted my machine, but the install still failed. Looking at the output of lspci -p, it seemed that the ata_piix driver had been loaded for the 8086:2825, but not the 8086:2820 - no idea why. So, I unplugged the 80GB disk, and plugged the 1TB disk into SATA 4, and enabled this connection in the BIOS, rebooted and bingo, the install worked!!


So, now we are on to the next problem. The OEM.TGZ is only used when running the installer. As soon as I unplugged the USB stick and rebooted so that ESXi would boot, it failed as it didn't recognise the storage controller. So I need to either go into this install and replace the OEM.TGZ file that has been installed, or replace it in the installer files contained on the memory stick.


Now I've decided that I think it will be better if I try and make a memory Stick bootable with 3i, rather than trying to get the OEM.TGZ into the file system on the newly installed machine.

The instructions that Duncan gives (here) help me get the standard 3i install onto the memory stick, but without the new OEM.TGZ for the storage controllers. So, after you have extracted the VMware-VMvisor-big-3.5.0_Update_3-123629.i386.dd file, you will then need to start Winimage, and select Disk -> Convert Virtual Hard Disk Image, select the .dd file, and create a .vhd image.

You then need to open this new file with winimage, connect to the first partition which should be labelled Hypervisor 1. All you then need to do is inject the new OEM.TGZ and overwrite the existing one.

Booting my machine with this memory stick now works like a dream, and the on-board NIC works too!!

This method of editing the .dd disk file should also work with updating the installer on the memory stick as described above, but I haven't tried this yet.