Building a 10 TB Array For Around $1,000
As storage hardware costs continue to plummet, the folks over at Tom's Hardware have decided to throw together their version of the "Über RAID Array." While the array still doesn't stack up against SSDs for access time, a large array is capable of higher throughput via striping. Unfortunately, the amount of work required to assemble a setup like this seems to make it too much trouble for anything but a fun experiment. "Most people probably don't want to install more than a few hard drives into their PC, as it requires a massive case with sufficient ventilation as well as a solid power supply. We don't consider this project to be something enthusiasts should necessarily reproduce. Instead, we set out to analyze what level of storage performance you'd get if you were to spend the same money as on an enthusiast processor, such as a $1,000 Core i7-975 Extreme. For the same cost, you could assemble 12 1 TB Samsung Spinpoint F1 hard drives. Of course, you still need a suitable multi-port controller, which is why we selected Areca's ARC-1680iX-20."
One: The title is a borderline lie. Yes, you can buy 12x 1TB drives for about a grand. But if I'm going to build an array and bench mark it and constantly compare it to buying a Core i7-975 Extreme, the drives alone don't do me any good! (And I love how you continually reiterate with statements like "The Idea: Massive Hard Drive Storage Within a $1,000 Budget")
Two: Said controller does not exist. They listed the controller as ARC-1680ix-20. Areca makes no such controller. They make an 8, 12, 16, 24 but no 20 unless they've got some advanced product unlisted anywhere.
Three: Said controller is going to easily run you another grand. And I'm certain most controllers that accomplish what you're asking are pretty damned expensive and they will have a bigger impact than the drives on your results.
Four: You don't compare this hardware setup with any other setup. Build the "Uber RAID Array" you claim. Uber compared to what, precisely? How does a cheap Adaptac compare? Are you sure there's not a better controller for less money?
All you showed was that we increase our throughput and reduce our access times with RAID 0 & 5 compared to a single drive. So? Isn't that what's supposed to happen? Oh, and you split it across seven pages like Tom's Hardware loves to do. And I can't click print to read the article uninterrupted anymore without logging in. And those Kontera ads that pop up whenever I accidentally cross them with my mouse to click your next page links, god I love those with all my heart.
So feel free to correct me but we are left with a marketing advertisement for an Areca product that doesn't even exist and a notice that storage just keeps getting cheaper. Did I miss anything?
My work here is dung.
How is this news? Yes, we all know traditional HDs are cheap. Yes, we know that you can buy more storage then you could possibly need. So how is this newsworthy? It really is no faster nor more reliable than SSDs. I think this is more or less a non-story.
Taxation is legalized theft, no more, no less.
That'll buy the disks. But nothing else. "Hey, look at my 10TB array. It's sitting there on the table in those cardboard boxes."
Sorry, I saw Areca and I threw up in my mouth a little. Their controllers are terrible, and gave our company nothing but trouble in the short amount of time we used them in the past. Those that are still out in the field (sold to customers and have service contracts) are a constant nuisance.
This headline is very misleading. Sure you can buy 12x1TB drives for just under a grand, but you won't have anything to connect them to, as the controller itself is another $1100. Another eye-catching headline to get click through's, that' just wrong. Sad.
What good are 12 hard drives without anything else? Absolutely nothing. An enclosure alone to correctly power and cool these drives costs at least $800 and that's only with (e)SATA connections. No SAS, no FibreChannel, no Failovers, no cache or backup batteries, no controllers, no hardware that can connect your clients over eg. NFS or SMB to it.
Currently I can do professional storage in ~$1000/TB if you get 10TB, including backups, cooling and power that would probably run you $1600/TB over the lifetime of the hard drives (5 years).
Custom electronics and digital signage for your business: www.evcircuits.com
We needed a solution for backups. Performance is therefore not important, just reliability, storage space, and price.
I reviewed a number of solutions with acronyms like JBOD, with prices that weren't cheap... I ended up going to the local PC shop and getting a fairly generic MOBO with 6 SATA plugs, and a SATA daughter card (for another 4 ports) running CentOS 5. The price dropped from thousands of dollars to hundreds, and took me a full workday to get set up.
It's currently got 8 drives in it, cost a little over the thousand quoted in TFA, and is very conveniently obtained. It has a script that backs up everything nightly, and we have some external USB HDDs that we use for archival monthly backups.
The drives are all redundant, backups are done automatically, and it works quite well for our needs. It's near zero administration after initial setup.
I have no problem with your religion until you decide it's reason to deprive others of the truth.
Another thing with RAID arrays that have quiete a few drives is, you have no method of correcting a flipped bit. You need at least RAID6 to correct these errors. With such vast amounts of data, a flipped bit isn't that unlikely.
I did someting some years ago with 200GB (and later 500GB) drives:
10 drives in a chieftec Big tower. 6 drives go into the two internal drive cases, 4 go into a 4-for-3 mounting with a 120mm fan. Controller: 2 SATA on board and 2 x Promise 4 port SATA conroller 300 TX4 (a lot cheaper than Arcea and kernel native support). Put Linux software RAID 6 on the drives, spare 1 GB or so per drive for RAID1 (n-way) system. Done.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
Ok, so let's say you built one of these monsters. Or you rolled your own with linux and a bunch of drives.... How would a home user, back this up? They've got every picture/movie/mp3/resume/recipe etc.. that they've ever owned on it.
Anybody got any reasonable ideas?
From the .COM bust, I have two leftover Netapp filers, with a dozen or so shelves, about 2T of storage. Each unit was about $250,000 new. A half million dollars worth of gear. Sitting in my shed. It's not worth the cost of shipping to even give the unit away any more. I guess it'll probably just go to the recycling depot. It seems a bit sad for such a cool piece of hardware.
On the cheerier side, it is nice to enjoy the benefits of the new densities; I have two 1T external drives, I bought for $100 each, mirrored for redundancy, that sit in the corner of my desk, silently, drawing next to no power. (Of course the NetApp would have better throughput in a major server environment, but for most practical purposes, a small RAID of modern 1T drives is just fine.)
Love many, trust a few, do harm to none.
Such a RAID is for an always-on server. Expect about 8 watts per drive after power supply inefficiencies. So 12 drives, around 100 watts. So 870 kwh in a year.
On California Tier 3 pricing at 31 cents/kwh, 12 drives costs $270 of electricity per year, or around $800 in the 3 year lifetime of the drives.
In other words, about the same price as the drives themselves. Do the 2TB drives draw more power than the 1TB? I have not looked. If they are similar, then 6x2TB plus 3 years of 50 watts is actually the same price as 12x1TB plus 3 years of 100 watts, but I don't think they are exactly the same power.
My real point is, that when doing the cost of a RAID like this, you do need to consider the electricity. Add 30% to the cost of the electricity for cooling if this is to have AC, at least in many areas. And the cost of the electricity for the RAID controller etc. These factors would also be considered in comparison to a SSD, though of course 10TB of SSD is still too expensive.
Has it been over a year since you last donated to the Electronic Frontier Foundation
Also notice that they decided to stick desktop drives in a Raid array, a big no-no if you want your array to last more than a few weeks.
Not my experience. I did this with Maxtor 120GB and 200GB drives some years ago and in >3 years 24/7 (then the systems were replaced) I had one failure in 50 drives. (Ok, there were some additional ones, but that were drives dropped in shipping.) I think the "big no-no" is just the drive vendors wanting to earn more per drive by rebranding the same hardware as "RAID edition" with a few firmware changes. At least with Linux software RAID you do not need any "RAID edition" drives.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
I mean, who is the target audience for the article??
People who just want massive amount of data storage for private use just buy a few NAS units, plug them in a gigabit Ethernet or USB hub and keep the more needed data on the internal HDD's.
On the other side, people who want fast, reliable and a lot of data storage buy something like a HP Proliant, IBM or similar Rack server with redundant PSU's, RAID controller with battery packs and SAS HDD's at 10-15k rpm (and possibly a tape drive).
The later setup costs more in the short run, but you spare your self a lot of head aches (repair service, configuration, downtime, data loss) in the long run, as this hardware is designed for this kind of tasks.
So who is the article targeted at: wannabe computer leet folks? And why on earth is this article on the Slashdot frontpage??
I've got half the uber setup they talked about and its works great for me. With 6 sata ports on my mobo and another 2 in a pci-x by 1 slot (I found a regular pci card for $10 with two ports). I've got plenty of space with only an additional $30 on the card. I use mdadm in a raid 5 with 6 x 1TB drives with one spare. One 300GB drive for the OS and I had the rest of the parts laying around. You could assemble the setup I've got for $500 if you have any old system with a large enough case. Add a backplane for another $90 if you you case is only a midsize. I have never benchmarked the speeds but It seems fast. The price was certainly right.
For those who are concerned about backing up large amounts of data. Please call your local data storage company. Yes they do exist, but I'll skip naming names as I don't like to shill for free.
Simply ask them about external storage devices you can use. They'll often lease you the equipment for a small fee in return for a yearly contract.
For 3 years I simply had a $30 a month fee for a weekly backup to DLT tape (No limit on space, and I used a lot back then.). They gave me a nice SCSI card and the tape drive with 10 tapes in a container that I could then drop off locally on my way to work. Did encrypted backups and had 2 months (8 week) rotations with a monthly full backup. With the lower cost LTO drives that came out a few years the costs should be minimal. Can't wait till all this FiOS stuff is deployed. I'm hoping to start a data storage facility.
If you have your own backup software and media don't forget to check with your local bank for TEMPERATURE CONTROLLED SAFTEY DEPOSIT BOXES. Yes banks do have some location with temperature sensitive storage. Some of those vaults can take up to 2k degrees for short periods of time without cooking in the interior content.
Where I currently am the NetOps is kind enough to provide me some shelf space in the server room for my external 1TB backup drive that I store my monthlys on. I have 3 externals giving me 3 full monthly backups (sans the OS files since I have orignal CDs\DVDs in the bank)
For home brewed off site I suggest a parent or sibling in a basement but elevated. I used a sister's unfinished basement up in the floor joist inside an empty coleman lunchbox (annual backups).
Now a days with my friends having sick disk space also we tend to just RSYNC our system backups to one another in a ring A -> B -> C -> D -> A with full backups each node syncing to the next on separate days during the day when we are not home.
PSEUDO CODE
===========
CHECK IF I AM "IT" IF SO
SSH TO TARGET NODE
CAT CURRENT TIME INTO STARTING.TXT
RSYNC BACKUPS FOLDER TO TARGET
CAT CURRENT TIME INTO FINISHED.TXT
TELL TARGET "TAG YOUR IT"
BACKUPS\ ...
A_BACKUPS\
B_BACKUPS\
Put each node's backup folders under a quota if needed to ensure no hoarding of space.
To really crunch the space you could try and pull off doing a delta save of A's backup such that B's backup is the delta of A diffed to the subsequent nodes (Might be important for full disk backups such that a lot of the data is common between the systems).
-=[ Who Is John Galt? ]=-
I've done this every 2-3 years three times now for personal use and a couple times for work. My first was 7x120 and used 2 4 port ATA controllers and software RAID5. My second was 7x400 and used a Highpoint rocket RAID card. My third one is 8x750gb and also uses a Highpoint card.
Lessons learned:
1. Non RAID type drives cause unpredictable and annoying performance issues as the RAID ages and fills with data.
1a. The drives can potentially drop out of the raid group (necessitating an automated rebuild) if they don't respond for too long.
1b. A single drive with some bad sectors can drag down performance to a crawl.
2. Software RAID is probably faster than hardware RAID for the money. A fast CPU is much cheaper than a very high performance RAID card low end cards like the Highpoint are likely slower for the money.
3. Software RAID setup is usually more complicated.
4. Compatibility issues with Highpoint cards and motherboards are no fun
5. For work purposes use RAID approved drives and 3Ware cards or software.
6. Old PCI will max out your performance. 33Mhz * 32bit = 132MB/sec minus over head, minus passing through it a couple times == 30MB/sec performance
7. If you go with software RAID you'll need a fat power supply, if you choose a raid card most of them support staggered start up and you won't really need much. Spin up power is 1-2amps typically but once they're running they don't take a lot of power.
8. Really cheap cases that hold 8 drives are hard to find. Careful to get enough mounting brackets, fans, power Y-adapters online so you don't spend too much on them at your local Fry's.
For my 4th personal RAID I will probably choose RAID6 and go back to software RAID. Likely at least 9x1.5TB if I were to do it today. 1.5TB drives can be had for $100 on discount. So RAID5 $800 for ~10TB formatted or $900 for RAID6. +case/cpu/etc...
I'd love to hear others feedback on similar personal use ULTRA CHEAP RAID setups.
From building two or three of these at home myself, my practical experience for someone wanting a monster file server for home, on the cheap, consists of these high/low points:
1. the other poster(s) above are 100% correct about the raid card. to get it all in one card you'll pay as much as 4-5 more hdd's, and that's on the low end for the card. decent dedicated PCI-E raid cards are still in the $300+ range for anything with 8 ports or more.
2. be careful about buying older raid cards. I have 2 16-port and 2 8-port adaptec PCI-X sata raid cards that are useless. why? they only support raid arrays up to 2tb in size. "update the firmware", you say. sure, let me just grab the latest, from 2005, I'm sure that fixes it. oh, wait, my raid cards already have that, and it doesn't remove that limitation. 8 drives, 16 drives, even, and they hard-code a limit of 2tb? lame.
3. I've seen nothing in a home-budget price range that performs as well as linux software raid. My 1.5 yr old 500$ tyan workstation mobo(S5397, in another computer) has dedicated SAS raid that can't seem to do better than 10mbyte/sec throughput. reading data from drives that individually bench out at 50-60mbyte/sec.
4. which leads me to: use linux software raid. It's much more configurable than any hardware raid card, both in supported raid levels and monitoring capabilities. raid disks/arrays can be easily moved from one machine to another, one controller to another, etc. I've moved most of my disks between machines and controllers at least once.
5. I've come to believe over time that what you're really looking for is X SATA ports, not "controller capable of doing raid over X disks". Use SATA "mass storage" cards, or raid cards that will let you use them in pass-through mode to access the individual disks directly in the OS. here you have to be careful you don't get bit by #1, 2, or 3 again, since some raid cards don't behave well when not actually doing raid (I'm still looking at you, Adaptec). this makes it easier and much cheaper, you can mix and match lower-capacity cards to get 8-20+ sata ports for raid.
5.1 "hw vs sw raid tangent" : what happens on a dedicated raid card when you run out of ports? you usually can't span raid cards, unless you get multiple identical fancy (aka expensive) raid controllers from the same manufacturer. all linux needs is hard drives recognizable by the BIOS.
6. when using software raid, buy a decent CPU. You don't need some quad-core beast, but you don't want to be waiting on the CPU to finish your raid calculations. any 2-2.5ghz C2D is probably more than adequate...I've drawn the line with anything under 2ghz.
7. kiss backups good-bye. the price of any decent backup system capable of covering this much storage is WAY over the price of this whole setup. Anything I really don't want to lose gets saved multiple places outside of the raid array, otherwise I factor the potential for data loss as a risk of operating this way. Personally I don't really see how you could do otherwise in a setup like this.
8. be prepared for bottlenecks. you're doing this on a home budget, you probably won't get 300mbyte/sec reads off of your array, no matter how many drives configured at what raid level. I can only get 10-20mbyte/sec across my gigE network going to/from my raid 5 array. This is probably due to the cheap PCI sata cards I'm using. I willingly make this trade-off to obtain the capacity I have for the price I spent.
If any of these points is an overriding concern for your intended use, then you'd have to re-evaluate the importance of all the other considerations.
For me, stability, capacity and price are top three, leading me to research linux-stable cheap sata expansion cards (which is just a nice way of saying, I buy and try probably 2x the # of controllers I actually use, to find ones that won't corrupt data, time out on random drive accesses, or simply not display the real drives to the OS, etc), and compromise by waiting a bit longer for network transfers. Usua
As one of the techs behind the solution linked to on FreeBSD forums, I just wanted to chime in with a "definitely give ZFS a try". Whether you run it on FreeBSD or Solaris (or even Linux via FUSE if you don't really care about the throughput) doesn't really matter.
You don't even need to use RAID controllers like we did (although the individual drives are configured as "Single Drive" "arrays" so non of the actual RAID hardware was used). Just throw in some good SATA controllers into PCIe or PCI-X slots and you're set. (We used RAID controllers for the management features, and extra level of cache.)
ZFS takes care of the RAID setup (RAID1, RAID5, RAID6, with built-in striping across arrays/vdevs), detects data corruption via end-to-end checksumming, can alert you to when a drive has issues (and tell you which one), gives you in-filesystems snapshots, filesystem compression, and a whole bunch more.
Add in rsync for network transfers (the built-in snapshot send/receive feature still needs a bit of work) and you have a very nice backup setup, even across redundant servers.
Add iSCSI and you have a very nice SAN setup.
Add Samba or NFS and you have a very nice NAS setup.
There's even support for thin-provisioning (create a volume that's 500 GB in size, but only give it 100 GB of actual disk space) making it ideal for virtualisation setups.
And you can "stack" storage boxes to create a virtually infinite storage setup (create a pair of storage servers using disks and ZFS, export a single iSCSI volume -- then use those iSCSI exports on a third server to create a storage pool -- when you need more storage, just add another pair of storage servers).
You can also replace the drives with larger drives and get (almost) instant access to the extra space.
Finally, since it's a copy-on-write, transactional filesystem, you don't lose any write speed, since you always write out new files; which also eliminates the "RAID5/6 write hole".
Once you start using ZFS and pooled storage, you'll find the whole Linux storage stack (disks -> md -> lvm pv -> lvm vg -> lvm lv -> filesystem) to be unbelievable unwieldy and wonder how you ever managed TBs of disk before.