Alright, now as I said before, I suspect this blog will usually be used for documenting some of my many projects. (When and if I actually find the time of course >_>) The first such project is building a VMware ESXi infrastructure.
Now before I begin, I need to provide some background info. I had a server running VMware Server on Ubuntu with several virtual machines. For a long time, I have wanted to convert this system to an ESX/ESXi infrastructure, and also to provide the necessary hardware (a large raided storage space) to use as a backup server. Unfortunately it was forcibly moved to the top of my priorities when both the main hard drive and the power supply failed within a week. No I did not have adequate backups, lets move on.
The core salvageable parts of the server are below:
- Intel® Core™2 Quad Processor Q6600 ( http://ark.intel.com/Product.aspx?id=29765 )
- Gigabyte GA-G31M-S2L Motherboard ( http://www.gigabyte.com/products/product-page.aspx?pid=2693#ov )
- Corsair 2GB PC6400 800MHz DDR2 memory stick
- The case
- The cooling system
After considering my options (and available cash) and doing a good deal of research, I decided to go with a three step plan to get the base infrastructure I want up and running.
- Get a server up as quickly and cheaply as possible running ESXi using the salvageable parts listed above.
- Build an external storage array that the ESXi server can connect to via SAN or NAS. It should include at least four or five 2TB hard drives in RAID5.
- Build a new server to replace the server in step 1 using the latest and greatest hardware. (I am thinking at least 16GB of ram, if not 32GB)
This post will cover step number 1.
I decided I wanted to attempt to install ESXi onto a USB flash drive and use a new internal hard drive as my datastore. I would also need to get a network card as the onboard Ethernet on that Gigabyte Motherboard is not compatible with ESXi, and ESXi would apparently refuse to install. I splurged a little bit (compared to everything else) on the network card and got a dual gigabit adapter with the assumption that I could just move this to the new server in step 3 when the time came. I also bought another stick of ram and of course a cheep (but still good) replacement power supply. Below is the hardware:
- LaCie 130981 MosKeyto 4GB USB Flash Drive ( $17.99 - link )
- Hitachi 7200RPM SATA 500GB Hard Drive ( $39.99 - link )
- Intel PRO/1000 PT PCI Express x4 Dual Port Network adapter ( $167.99 - link )
- Corsair XMS2 PC6400 800MHz 2GB DDR2 Desktop Memory ( $34.99 - link )
- Diablotek PSDA600 600W ATX Power Supply ( $34.99 - link )
I assembled the hardware, downloaded ESXi from the VMware site ( http://www.vmware.com/products/vsphere-hypervisor/overview.html ), burned it to a CD, and boot up the system from the CD. The installation took a bit, but went very smooth. I was able to select the USB drive, and everything completed successfully.
On reboot, I configured the bios to boot from my flash drive, and waited anxiously. Here I met my first, and really only, problem. "PANIC: Failed to find USB boot partition" As you can imagine, I was quite lost as to what was going on. Apparently that Gigabyte motherboard has more issues than just the Ethernet compatibility issue. I got conflicting reports on what was actually happening, but it looks like it has something to do with the Gigabyte motherboard not properly emulating the USB as a hard drive. In any case, I found the fix thanks to this blog post: http://doomdogus.wordpress.com/2009/10/27/booting-esxi-from-usb-on-gigabyte-motherboards/ The first comment by "Zoltan Csizmadia" shows the steps in a strait forward fashion:
[First boot from a linux live CD like Ubuntu]
fdisk /dev/sd*
choose x => extra functionality (experts only)
choose f => fix partition order
chhose w => write table to disk and exit
After this, I was able to boot properly into ESXi and was good to go. My server has been reborn. Step 1 complete!
~David