First off I'll start with what I have (links because of resolution.) tl;dr at bottom
http://i.imgur.com/Dqs5YTk.jpg
http://i.imgur.com/uTeaa7p.jpg



This is a HTPC case. cramped, but it works. OS is Ubuntu 14.04. I'm using this computer as a samba share for my windows desktop, to export /home to other linux boxes, and as an iscsi target.

Motherboard is a GA-G31M-S2L with a core 2 duo 3GHz processor and 2GB ram. 4 sata II ports. Nothing special, it's what I had around. I also purchased a SYBA controller card to add another 4 ports.

/ is 320GB laptop drive. At one time I had / on the raid array, but when hammering it with files, the terminal becomes unusable. This solves that issue.

The raid array is a little complicated and this is why I love linux. The bottom layer is a 5TB, 6 disk RAID5 mdadm array. Above that is bcache with writeback enabled and backed by a 120GB ssd. Finnaly on top is Logical Volume Manager. LVM allows you to expand noncontigious partitons on the fly. In addition to that, it lets me allocate partitons to then use iscsi targets, bypassing fileio and going directly to the block layer. In summary:

6 drives -> mdadm -> bcache -> LVM (FTW)

Now, This setup works very well and virtual machine performance is fantastic. What I'd like to do is change this from extremely cramped to extremely robust (but still cramped unfortunately.) A week ago it was a 4 drive array. A week of downtime and rebuilds later, I managed to grow it to 6 drives and prevent data loss. When it was adding the 6th drive, one of the drives decided to die. So I replaced it and becan resyncing. Then another decided to drop out durring that resync. This was not fun and I'd like to minimize the chance of this happening again.

Ideally, I'd like to get / in RAID1
mdadm array in RAID6 with hotspare
SSD's in RAID1 for bcache

If any drives fail in this, there is at least a spare and can keep running.

Ebay has a tremendus amount of surplus PCI-x server parts now that PCI-e is prevelant. For starters, this board looks nice. With the core2quad its also bit of an upgrade from what I have and dual NIC's for link aggregation would be nice. The speed of the 133MHz slots or even the 100MHz is more than enough for my array. It seems in the manual that the 133 and 100 slots are independently controlled, but I don't know if i could get a total of 14Gb/s bandiwth, not that I will come close to that. The pci-e 8x slot is a boon, because I would like to get infiniband on there as well in the future.

Enough on that though. I'm in the market for a pair of hard drive controllers, preferably an inexpensive, surplus pci-x once. What should I be looking for? controllers, HBA, RAID cards are new territory for me.


tl;dr what should I look for in a HBA/RAID controller when i'm looking to use it with software raid.