Recently we bought a low-end IBM xSeries 306m server to handle generic IT utility tasks, such as hosting an installation of Request Tracker, Cacti and, in the near future, Nagios. The server came with a pair of 160GB SATA disks attached to a ServeRAID-8e HostRAID controller. I quickly discovered that HostRAID is an awful hack; it’s not real hardware RAID, but software-emulated RAID, utilizing the host system’s SATA controller to do the actual I/O to the disks, but with the RAID processing done in software using a proprietary driver, in my case, a driver called adpahci. In other words, it’s "A Fake RAID", which some pundits have noted collapses into the fitting acronym AFRAID.
Several admins have criticized HostRAID for a number of reasons:
- Performance is terrible because the AFRAID controller must do polled I/O (PIO) through the CPU
- The drivers are, by nature, proprietary, since the RAID logic is licensed from a third party
- Limited sophistication in array rebuilds, since the controller has a minimal BIOS and online rebuilds are not possible
- Disks in an AFRAID array are probably unusable outside of the array, given that the driver is chipset-specific
Although I don’t really care about performance for such a low-end utility box, I have been seriously bitten by the second point. We use RedHat Enterprise Linux 4 Update 3 on all production servers like my utility box. IBM only provides binary HostRAID drivers up to RHEL4 Update 2. You can allegedly rebuild the drivers using a SHIM from Adaptec, but it doesn’t work; although the SHIM package contains C drivers for all the Adaptec HostRAID controllers (aar81xx, adp94xx, adpahci, adpsata, etc.) the only binary blob you can obtain is the one for the aar81xx. Ergo, I am S.O.L. I’m stuck with a RHEL 4 Update 3 userland on a RHEL 4 Update 2 kernel.
I guess the appropriate solution if you’re going to buy this model of server (with SATA) is to ditch the on-board AFRAID and buy a ServeRAID-7t SATA controller, which has a real 80302 processor and 64MB of cache memory, or any of the other ServeRAID products which fit in the server.
On a final note, what the heck is with IBM’s insane naming schemes for all of its ServeRAID products? I can’t keep the 6i+, 7t, 7k, 7e, 8e, 8i, 6M, etc. straight — can you? Have a look at this driver matrix and your eyes will glaze over. Why don’t they name the controllers something meaningful?
GROAN 😛
(nice title)
I work for IBM and I have a hard time keeping up with the crazy naming scheme myself. We recently got a bunch of 306m's for our project to do similar low-end tasks, and I have been struggling for 2 days trying to get this fakeraid working with RHEL4 QU4. Looks like QU3 drivers are available these days, but not QU4. HostRAID is a pretty lame idea if you ask me; you're almost better off just using the OS for software RAID. The only benefit I can see – provided you can get it working – would be for seamless integration with the ServeRAID managment software and IBM Director. /endrant
You can run these disks in compatibility mode by disabling HostRAID and ahci in the BIOS; then pop software raid over the top of that.
Have fun.
Nice little rant. I whole heartedly agree. IBM have insane in regards to their naming convention for the HostRaid software and hardware.
Secondly. I am running Fedora Core 5 and guess what I can't use any of the available software to montitor the RAID due to "Fedora Core 5 is not supported, because of the GPL License definition issue within the Fedora
Core 5 kernel, driver compiled for Fedora Core 5 kernel will contain an undefined variable and
thus is not able to initiate itself.
"
Bah!
After spending a whole day trying both Fedora Core 6 and RHEL 4 loading in RAID I have finally given up on the 306m and am just going with a NON RAID configuration. I'm building this server up to be a cross net backup to an identical server that somehow I DID get RAID installed on.
But, I have no idea how I got the first one to work and this one simply would not boot after a complete overnight feed of RHEL disks.
Oh, on Fedora Core 6, the X Server never came up after booting even though I completely scanned all my downloaded disks to make sure they were not corrupt. SO I prompty gave up on Fedora as probably not supported by this hardware.
IBM should wake up and provide some better support and instructions. The stuff they send with their server product can probably be barely understood by a barefoot, pony-tailed, Linux Admin, much less just a "normal" Linux computer geek.
-SD
Thank you for this article. My workplace purchased these same servers before I started. Performance was terrible, I was stuck running Windows because I couldn't get any Linux distors up on these boxes, and I couldn't understand why these IBM 306ms sucked so bad.
AFRAID explains it all. I just switched them to using a SATA RAID Controller instead.
wow there's so much hate here… lets see now, its an Adaptec controller and you blame IBM? IBM includes onboard raid versus none from other vendors. Moreover onboard raid does not take up a pci slot – we need extra NICs so that important to us… we just moved to the new x3250's and still think its the best value for the money especially now with RH 5..
picky picky picky