So I’ve just grabbed a Dell H310 off of fleabay as part of my new server build. First challenge is to figure out how to flash it with an IT firmware, so that I can use it as a controller card for a virtualised file server.
The Perc H310 is a sas2008 based card, and importantly, its a 6Gbps card, which means it should last me through multiple iterations of my usual server upgrade schedule (every 2 or so years). With any luck, it’ll last me to the stage where terrabyte-sized SSDs are affordable enough for home use 🙂
Here’s a link to the spec sheet from Dell. As you can see, even without flashing its a decent looking card, supporting a whole lot of RAID setups including 5 and 50. However, all that isn’t much use to me, as I’m a big fan of software RAID, on the basis that if a motherboard or disk controller fails, I can transplant just the drives into a different machine and at least have short-term access to my data. Besides, I want to go with zfs this time – the filesystem-level checksums and data integrity are very attractive.
So, plugging it in, and on the first boot I check the controller BIOS which says:
Product Name: PERC H310 Adapter Package: 20.10.2-0002 FW Version: 2.120.14-1504 BIOS Version: 4.29.00_4.12.05.00_0x05110000 Boot Block Version: 2.02.00.00-0001 Security Capable: No Controller ID: 0 PCI Bus: 0x02 PCI Device: 0x00 PCI Function: 0x00 PCI Slot ID: 0x04
All good, the card works. So after hunting around for write-ups, I found a couple of posts in forums on the topic.
So after piecing those together, and a bit of experimenting, here’s the steps which worked for me:
> sas2flsh -list
> megarec -adpList Identified MR cards count: 1 MR Card 0 Type: 2008 Vendor ID: 0x1000, Device Id: 0x73 Slot No: 2, Device Function: 0x0
> megaoem -adpallinfo -a0 > allinfo.txt
Buried in that file is this bit:
HW Configuration ================ SAS Address : 5b8ca3a0f2xxxxxx
> megarec -cleanflash 0
Success – all worked just fine. I’ve since emptied out the bios too, so the host boots faster. Thats a little easier, as you can use sas2flsh to do it all, and keep the sas address intact.
To erase the card but keep the SAS address, its:
> sas2flsh -o -e 6
Then you can jump back a few lines above to re-flash the 6gbpsas.fw firmware.
Now the painful work starts.. regression testing all the bits of the puzzle I’m trying to assemble, to make sure that in isolation, each virtual machine’s OS will work with the hardware concerned. I’d like to run either Nexenta, or Nas4free, using the Perc H310, so first stop will be to do a quick test install of Nexenta to see whether it works with this card/firmware.
One last note – I took a comparison power consumption reading of the system with the Perc H310 installed.
Without H310: Idle 30.8W
With H310: Idle 38.8W
(Idle measured at Centos LiveDVD desktop)
My PSU is likely around 75% efficient at these low wattages, so the card on its own is pulling about 6W DC from the system.
More posts on that topic as I go.