Back in the fall I started work on a virtualization project. I’ll write more about it in some future articles, but in terms of background, I wanted to build a VMWare ESX-based system to make testing software products easier. ESX is a server virtualization product that allows me to run multiple virtual machines on one physical box. If, for example, I need to test a product on Windows XP, I can simply boot up XP and install it. ESX also provides snapshot capability. For example, I can snapshot a virgin XP installation, install and test software, and then revert back to the snapshot when I’m done.
If you’re going to play with virtualization, you need a lot of disk space, and it must be reliable. In a production environment, when you consolidate servers you also increase the impact if one physical server goes down. In a test environment, you risk spending a lot of time reinstalling operating systems if a hard drive crashes.
The answer, of course is a RAID array. I won’t go into the technical details (you can read all about it on Wikipedia), but in summary a RAID system uses several drives to create a larger, fault-tolerant logical drive. There are quite a few RAID products available. Some motherboards include RAID capability, and you can purchase various RAID controller cards for desktops and server. However, as many who have tried ESX will tell you, only some RAID controllers are support. Plug in one that isn’t, and it either doesn’t work or ESX sees each drive as a separate drive.
So we turned to the leader in RAID controllers: LSI Corporation in Milpitas, California. They very kindly sent over a MegaRAID SAS 8708EM2 to help us out.
The card plugs into a PCIe slot and will handle up to 8 SATA hard drives. My test machine’s motherboard was about two years old, but fortunately had on-board video, leaving the full-size PCIe slot empty. I plugged in the MegaRAID card, connected it to three 1 TB hard drives, and fired it up. I first tried the card’s built-in configuration GUI, but it wouldn’t work. (I later confirmed that the problem was entirely due to the old desktop-class motherboard I was using.) I rebooted the system, selected the command-line interface instead and within a few minutes I had the three drives in a RAID 5 configuration. Then I rebooted, installed VMWare ESXi, and the performance can only be described as flawless.
If you haven’t used lower-end RAID controllers, it’s hard to appreciate what a good one will do for you. For example, in days gone by I’ve rebooted my desktop PC only to have another vendor’s RAID controller decide that it needed to rebuild a mirrored drive (RAID level 1) by copying 250 GB of data — before allowing the boot to continue. Creating the RAID array with some controllers is also just as slow.
In sharp contrast, once I configured the LSI product, I simply rebooted the machine and never looked back. Because VMWare fully supports the LSI controller, I can see the status of the individual drives from within the VMWare admin software.
The LSI MegaRAID SAS 8708EM2 has a number of features that I haven’t had the opportunity to test. For example, it can automatically rebuild hot spare drives and allows online RAID level migration and online capacity expansion. So when I run out of space, I should be able to plug in another few drives and either add them to the existing array or create another.
I recently migrated to a brand new Intel DX48BT2 motherboard (more on that product in a subsequent article) with two full-size PCIe slots. I put a video card in one, the LSI MegaRAID in the other, booted, entered the GUI, and was reassured that my RAID array was still intact. LSI’s flawless performance continued through the hardware migration.
I’ve had the opportunity to use a number of different RAID products over the years. In summary, the LSI MegaRAID SAS 8708EM2 is simply the best that I’ve seen. If you’re building a server or high-end desktop and need reliable disk storage, look no further.