…more than I can tweet…
I left off writing about this project after having completed setting up the hardware — or so I thought. While I was evaluating KVM vs. VMware ESXi, I learned that ESXi isn’t compatible with the fake RAID controller in the Microserver. I didn’t want to drop another $300-400 on a compatible RAID controller, so I chose KVM on Ubuntu with software RAID 10.
It turns out I was a little ahead of my time with my plan to do all this while booting from a USB thumb drive, though.
Booting Ubuntu Server from a USB thumb drive is actually pretty easy to do, but I wanted to do it more efficiently with /var, /tmp and swap partitions on the RAID 10 array. USB flash drives are great for reading from, but not for writing to a lot. By moving these partitions to the RAID, I would have been keeping most of the heavy writing off the flash drive and thus had much better performance and a longer-lasting flash drive. GRUB wasn’t playing along, though.
I still didn’t want the OS on the RAID; I wanted all the RAID space reserved for VM storage. So, I ended up pulling out the DVD drive I had just installed and mounted a 5th hard drive in the optical bay of the HP Microserver. But now that I didn’t have a DVD drive, I had to install the OS from the flash drive. The Ubuntu server 12.04 installer gets confused by the presence of a RAID array during the partitioning step, so I had to remove all the RAID drives before I could complete the install on the drive in the optical bay.
After all this, my virtualization server was ready to go. Now to create some VMs!
While it is possible to configure VMs using the command line, just about everybody uses the GUI-based virt-manager tool. I had enough swimming upstream with my boot from USB plan, so I wanted to use virt-manager too. The problem is that I like my servers like I like my zombies: headless. Rather than re-install xubuntu, I just installed the xfce manager and then finally virt-manager.
Virt-manager is really easy to use; I had 2 virtual machines running Ubuntu server within minutes. The only trick was the networking — making it so the hosted VMs can see and be seen by the rest of my physical network. I’ll cover that in part 3.