The DS-1220 is great. It was dead easy to setup and has caused me to trouble at all. I installed Fedora 8 in the days leading up to the delivery the the DS-1220 based solely on the fact that I saw something on the web that said the controller card worked in Fedora. Come to find out the drivers for the card are actually available in the current kernel and most distributions are coming with the driver available as a module. I did nothing to setup or install the Norco DS-1220 at all.
Let me take a short step back and bring you through the torment that got me to this place. When my Thecus died for the 5th time I decided to bite the bullet and try something else. I paid a lot (too much) for the N5200 and I was always hesitant to walk away from it because of that but, what good is a device that you don’t trust? I began looking around for some good deals on servers trying to find something that would fit my budget and my needs. When I’m server shopping for myself I’m always drawn to the small companies that make really good servers with standard off the shelf parts. It makes it easier for me to grow with the server and to tweak it to my needs. If you go with a big brand it’s a lot of custom made stuff and comes at a price premium. If you are supporting a couple hundred users and down time is not an option, a big brand makes sense; You need that support team to back you up. If you are supporting yourself and your friends and family, down time is less of an issue but, finding good value replacement parts that are easily available is of key importance. For those reasons I’m drawn to Thinkmate and more recently Servers Direct. Unfortunately, neither of those companies had anything that would meet my needs for the price I wanted to pay right now.
When I budget for something I try to focus less on price and more on need. I don’t care if it takes me nine months to save the extra cash to buy a product as long as that product is worth it. In this case I needed to get something now, cheap. I wanted to spend less then $750 and I needed to be able to hold at least 10 hard drives. That’s a tall order and I never really expected to find a complete server that would do that. My searching became focused on a what is referred to as DAS or direct attached storage. My current server is basically a souped up desktop machine that I had been using as the core of my recording setup. When I replaced it with a Mac Pro this Intel machine got a good dose of Linux and has been running great ever since. I considered replacing the case it’s in to handle a ton of hard drives but the cost wasn’t worth it. I’d have to find an older case that was designed to handle the processor I am using and it wouldn’t be capable of handling any future upgrades. Not a good value. I then looked for some kind of external enclosure that would house my current 5 drives but all the ones on the market used a proprietary system to manage the array and came with drives. Talk about redundant. I needed a system to hold the drives I already have…
It then occurred to me that I had seen a product that would do what I am asking a few years back. I remember reading about the Norco DS-1200 series when it was first released. It was much touted as a great device but then a few months later the fanfare died away. I started to hear that they weren’t all that great. The devices out at the time used only PATA drives, not the new SATA drives. They were in hot swap trays but if you pulled one drive, the drive next to it would stop working as well. PATA uses a master/slave setup that puts two drives on one cable. If you pulled one out they both stopped working. The reasons to look elsewhere stacked up but on a whim I took a peak at their site to see if they had made any improvements. Lucky for me, they had. They had released a SATA version using something called port multipliers. This caused me much head scratching.
SATA was always designed to be a drive interface that plugged one drive into on port on a controller. I had never heard of port multipliers for SATA. After doing a bit of reading it turned out that they didn’t have really great linux support when the DS-1220 was released. You could mod a kernel to get them to work but by and large it was a messy process. The only trouble was all the information I could find was from mid 2006 and linux has changed a lot since then. The Norco website was very transparent as to what mojo they used to make the device work. A big, big plus in my book. They even make it very clear which chips they are using on their cards and in their enclosures. Using that information and some basic linux know-how I was able to back track into the kernel and see if support existed now for those chips. Thankfully, support could not be better. Most distributions have it built right in. This was the final push I needed to actually buy the device. Enter the price search.
I’m cheap, but I only want quality. When I find the product I want I search for the best price I can find. This means I buy a lot of refurb’d and ‘open box’ products. The best price I could find for the DS-1220 was at Newegg but it was open box. Newegg’s Open Box Policy is pretty scary so I didn’t know what to expect. Basically, they will ship you whatever they have, if it’s missing parts you can send it back, but they assume no responsibility even if the parts missing are necessary for it’s operation. :: Gulp :: It was $180 off the normal price though so I took the plunge…
The gamble paid off… sort of. Truth be told it was only missing two things: the power cable, a standard computer cable that I have about 10 million of and the controller card. Yes, the card that interfaces the DS-1220 with the computer was missing. Luckily the controller card only cost about $60 and having it over-nighted to me from a different supplier that had it in stock was still well under $100 so while I didn’t save the full $180 off the price I did still get a good deal.
When the card arrived last Friday I had a lot to do and didn’t have a lot of time to fiddle around. I put all the drives from the Thecus into the enclosure, stuffed the card into the computer, wired in all the cables and hoped for the best. If it worked when I first powered it on, great, if not, I would need to wait for Saturday to dig in and find out why. Following the instructions from Norco the DS-1220 was powered on first and then the tower. Lights started flashing and the server just started to do its thing. Everything was going great. The server ‘posted’ as we say, meaning the BIOS screen came up and the RAM test happened and then, as if my magic linux even began to load. I guess I shouldn’t have been too surprised. The hard drives in the server didn’t change, the OS drives were still loaded in the server case not in the Norco so there wouldn’t have been any reason for it to not boot.. but with my luck I was expecting an explosion.. or at least a puff of smoke.
Everything was going fine, Fedora started to come and I though I was going to be OK until Fedora said it was starting ‘udev’. The system seemed to have hung. Nothing was happening. The Norco was kind of flashing. Drive lights would go red, then off.. then green and back to rad. This happened for what felt like hours but was really closer to about 90 seconds. Eventually, reds went to greens and after some flickering the server continued to boot. I dashed up the stairs and back to my laptop and logged into the server to find 13 hard drives available to the system. I had access to drives /dev/sda through /dev/sdm. I giggled.
It worked. It worked without a single hiccup. Fedora 8 had no problem at all dealing with all the drives and picked up the card without any problems. I did nothing more then plug it all in and voila! I was not out of the woods yet though, I still needed to be able to access the data from the hard drives that had been in the Thecus. When the Thecus created the RAID array it used both mdadm and LVM to make it work. (I written about this already) When I tried to put that all back together it turns out the Thecus has hard coded some of the information about the setup into the drives and they were unwilling to reassemble themselves in the new system. After a lot of fighting and –force commands I had to brace myself and blow away all data and configuration information on the drives and start from scratch. Thankfully, I had created a backup and wasn’t looking at any data loss but it was still quite nerve racking. So, after much gnashing of the teeth and various commands I was able to create a new, clean, 2TB RAID array and begin the build process, which took a little less then 8 hours to complete. Not bad I’d say.
People like to look at performance data to decide if something works or doesn’t. I’m not a big performance chart kind of guy, I’m a real world guy. But, I will admit I did do a small amount of testing. All I did was run hdparm -t on the array. I ran it six times and the average response back was about 50MB/s. While I was doing that test though I should admit that the server is overloaded and I was copying and reading other data to the array. Your mileage may vary. What’s important is that it works well and is able to handle all the data throwing at it with reasonable speed. It’s never going to match up to a 15k RPM SAS RAID 0 but for a SATA software RAID 5 I am quite happy. My Thecus used to have trouble managing even two video video streams across the local network, this setup has not hiccuped at all. It comes up working 100% after a reboot and I’ve not had any of the permissions problems I had before with the Thecus. Nice the drive is directly plugged into the host OS I was able to run a simple command to reset all the permissions and have not had a single problem since then. (I live dangerously and simple ran ‘chmod -Rfv 777 /serve’ which is where I had the array mounted.)
If you have a spare PCI or PCI-X slot (I’m using straight PCI) and have a room you can stuff this thing into, I can’t think of any reason not to buy it. It’s in a 3U rack case and has 3 70mm fans on the back that do make a bit of noise but it no different than any other server style hardware. The cooler it runs the longer it will last. Linux support is 100% top notch and performance has been great. The drives come up with the same assignment after a reboot and I’ve not has a bit of trouble with stability since I’ve installed it. As always, if it starts to go south, I won’t hesitate to post about it.
The only problem I had leading up to this was the lack of good linux information about this device on the internet. To help fight that here are some key points, spelled out crystal clear. The Norco DS-1220 works great in linux. The Norco DS-1220 has great support in the linux kernel. I am currently using the Norco DS-1220 in Fedora 8 and did not need to install any extra drivers or modules to make it work. Is that pretty clear? Hopefully someone else won’t be as lost and confused as I was….