About a month ago, I posted about the dizzying array (for me) of stupid technical projects I had going on at the same time. One of the projects was installing a new RAID controller as part of my server rehab. I wanted to move from a 1TB array resulting in about 780GB of disk space in RAID 5 form to a 3TB array, giving me a little over 2TB in RAID 5. I knew that this was going to be painful, but I had no idea that it would take me about a month of very conservative (out of fear of losing data) work to make the transfer.
I chose a 3Ware 9550SX 8-port controller. I made the choice for a few reasons:
- It was recommended by several people (who I will never speak with again – you know who you are)
- It was a SATA II RAID Controller, working, theoretically, at 3GB/sec
- It was an 8-port controller – since I only initially needed 4-ports (4 drives), I had some expansion room
- It runs on a PCI-X bus at 100MHz – my server motherboard, being a bit dated, only supported up to 100MHz
- And most importantly, it supported online capacity expansion (OCE) so that you can dynamically add disks to it to expand its capacity without having to rebuild the array
The controller installed easily enough and its post-time configuration was fairly basic and straightforward. Since I don’t have my boot disk in this array, I had none of the usual driver issues in recognizing the array once the operating system (Windows Server 2003) was up and running. The Windows-based administration tool (actually, a small web server – I hate that) is VERY wimpy – Adaptec and Silicon Image do a much nicer job.
Initially getting the data over to the array went slowly (I highly recommend that you put all the performance settings at their most aggressive setting – you sacrifice some security, but it’s the only way to get reasonable speed out of the array, at least for RAID 5). Using Robocopy (a must have free tool from Microsoft for copying and syncing data in Windows), I was able to get most of my data over to the newly installed array fairly easily. Then I added another disk to the array . . .
The 3Ware utility saw it pretty easily (although it took almost 5 days to get the newly extended array initialized), but Windows never saw the additional space. After going back and forth with 3Ware support (a slow process in and of itself), they decided it was a Windows problem and stopped replying to my support requests. So, after trying a set of other stuff, I decided to boot the server with Linux. I was hopeful, but Linux couldn’t see the extended array either. I even tried the Gparted Live CD, a very slick open source project that boots your machine with Linux and runs parted – the Linux-based partitioning utility in the Gnome GUI. It also failed to see the newly added drive.
In the end, I had to copy all the data off the array (it’s hard to find places to back up 1TB of data) and recreated the 3TB array from scratch. That worked fine, of course. The bottom line is that 3Ware’s OCE just doesn’t work in a way that you can ultimately use the additional space. Since this was the main reason I chose this RAID card, I’m obviously a bit pissed off about it.
As with most projects like this, I learned loads and wasted a ton of time. As usual, a lot of the time I wasted was a result of me being either stupid or uninformed. Since I can’t change the former, I need to work on the latter. Hopefully, posts like this will help you become a bit more informed about such problems before you get knee deep into issues like I did. But, I’m up and running now. My server has two new processors, loads more memory and a boatload of disk space. Ahh . . .