Which RAID for a Personal Fileserver?
Dredd2Kad asks: "I'm tired of HD failures. I've suffered through a few of them. Even with backups, they are still a pain to recover from. I've got all fairly inexpensive but reliable hardware picked out, but I'm just not sure which RAID level to implement. My goals are to build a file server that can live through a drive failure with no loss of data, and will be easy to rebuild. Ideally, in the event of a failure, I'd just like to remove the bad hard drive and install a new one and be done with it. Is this possible? How many drives to I need to get this done, 2,4 or 5? What size should they be? I know when you implement RAID, your usable drive space is N% of the total drive space depending on the RAID level."
For personal use, a two-drive RAID 1 is probably the easiest way to go, and involves the fewest drives, but loses the most space (half). Raid 5 is the standard, but the hardware is more expensive and it involves at least one additional drive.
For simplicity and low expense, even though you lose a full drive worth of capacity, go with RAID 1.
You might want to read The Tech Report's recent article mentioned on Slashdot if you haven't already.
That what was all this school was for... to teach us how to solve our own problems. -- janeowit
RAID 0, you need a hero,
RAID 1, is equally fun,
but RAID 5 keeps you alive!
stuff |
I would choose RAID-1.. because RAID Level 1 provides redundancy by writing all data to two or more drives. The performance of a RAID-1 array tends to be faster on reads but slower on writes when compared to a single drive. However, if either drive fails, no data is lost. This is also a great entry-level starting point as you only need 2 dirves. The downside is the cost per MB is high in comparison to the other levels. This level is often referred to as disk mirroring.
Hmmm.
Try RAID 5 or RAID 10 (not to be confused with RAID 0+1). This site has a nice overview of all the RAID options. And, of course, Wikipedia has some info.
Quick overview:
RAID 5 - Requires at least 3 HDs (many times implemented with 5 - can be used with up to 24 I believe). Data is not mirrored but can be reconstructed after drive failure using the remaining disks and the parity data (very similiar to how PAR files can reconstruct damaged/missing RAR files for the Newsgroup pirates out there). % of total space available dependent on number of drives used.
RAID 10 - High performance, but expensive. You get ~50% of the total HD space as it is fully mirrored. So, 1 TB total disk space nets you 500 GB total storage space. Your data is mirrored so if one drive fails you do not lose everything. However, if you experience multiple drive failure you can be in big trouble.
Casual Games/Downloads
Whatever you do, never have more than one disk on an ide channel. Only one disk per channel can be written to at the same time, so you will get absolutely horrible performance if you get more than one hd per channel. If possible, get an ide raid card (if you can afford it) or a SATA card/mobo and drives, which dont have this problem
95% of all computer errors occur between chair and keyboard (TM)
Wow inexpensive & reliable... Those are two words you don't see together too often.
Your good options are raid 1, raid 0+1, or raid 5, depending on what you want..
Raid 1 is the safest.. just mirroring the drives, but it results in no speed increase..
Raid 0+1 does mirrored stripe sets -- you get the speed advantages of raid 0 with the full protection of raid 1.
Raid 5 is good middle ground. Raid 5 stores 1 drive's worth of parity. When you lose a drive, your system goes down (if you don't have a hot spare), but you throw another disk in and it'll come back up. You also get some speed increase over a normal drive setup. With RAID 5, you only lose a single drive's worth of capacity no matter how many drives are in your array, whereas with raid 1, you lose 50%.
Thank you for fulfilling the "Why didn't you check google?" quota. No one else needs to this until the next Ask Slashdot!
Keep your eyes to the sky.
*ducks*
I went through this last year and here's what I came up with for the best benefit to cost ratio with the lowest hassle. In short, take an old PC and put a four channel raid controller card in it to do RAID 5. Add a big extra fan for safety and you're done.
Here's what I came up with: Total cost about $1200 (probably less by now).
0) Red Hat Linux, ext3 filesystem.
1) 3Ware Escalade 7506-4LP card (64 bit card, but fits in 32bit slot)
2) 4x 250Gb Western Digital drives
3) Big fan.
At RAID 5 This yields 750gigs (715Gb after crappy GB conversion).
The 3Ware software has a nice web monitor interface and does daily or weekly integrity checks. It emails me if there is a problem - I did have one drive die already and replaced it easily.
Pat Niemeyer
Author of Learning Java, O'Reilly & Associates
I work for a company that uses all types of RAID. I've experience with 2 bay, 8 bay, and 16 bay RAIDs, as well as RAID cards. If you want the cheapest option, just get a two drive system (either with bays or just a card) and use RAID1. It's basically drive mirroring.
Bottom line, you need to figure out how much you're willing to spend on this and then go from there and see what your options are. RAID5 is the hotness, but it's very expensive (easily over $10K for large capacity devices).
Best way to go is RAID5, do it in software with Linux isn't much of a headache unless you change the size of it. RAID 5 is N-1 where N is the size of a member partition, you don't have to use an entire disk. For instance, my setup: 80GB HD 120GB HD 200GB HD the raid 5 members are the size equivolent to the 80GB itself. the remaining space on the 120 houses the system and a few miscellaneous things, the remainder of the 200 is a 110GB file dump.
Logistical Chaos Officer http://www.slagg.org - LAN Gaming in Sarasota FL,USA
Another missed opportunity to use the internet's, uh, hottest new acronym: FGI.
"I'm tired of HD failures. I've suffered through a few of them. Even with backups, they are still a pain to recover from.
If you just run Gentoo, you can type "emerge new_harddrive" and it takes care of everything by the end of the month!
or..
Your shit PEECEE WINTEL crap parts made in china are no match for real quality Mac hardware, which are fully integrated with the UNIX UNDERPINNINGS that have the Best GUI Ever(tm) on top.
Disclaimer: I love trolls.
do() || do_not();
Dear Slashdot,
which is better, SCSI or IDE?
Googleless in VA
If I could, I'd get 2x 250GB HDDs in a RAID1 (promise controllers are good for this), and a third 250GB for a cold backup of all my data that syncs weekly.
:)
Raid's great, but an rm -rf is still an rm -rf, thus the third drive
-- The unsig...
It's axiomatic that the more money you spend for reliability the more likely you are to have some kind of failure. Our fancypants Dell PowerVault RAID enclosures are constantly giving us trouble, yet the machines with just a single IDE drive keep on ticking for years and years.
If your running a fileserver with a decent ammount of writes yours going to want RAID5 as it has the least penalty. Hot swap drives are easy enough with SCSI or FC a bit more complicated with SATA and rather complicated with IDE but can be done. For a simple setup as little as 3 disks will do and you will get 2 disks worth of space performance setups will have more spindles. You didn't state as to what sort of load your expecting and that makes a huge difference. For the ultra cheap I have picked up IDE raid 5 cards supprting 4 drives with hot swap for sub 30 bucks on ebay they will only work with 120 gig drives max and are limited to ultra 66 but thats a third of a TB usable as well for a few hundred bucks and it's performance is good enough for a 100bt file server.
No sir I dont like it.
Seriously. Raid is all about risk. Figure out how much risk is acceptable to you. If you have a stack of 6 drives and you only believe 1 is ever going to fail at any one time, then go with raid 5.
If you have a stack of 6 drives and believe not a single one is ever going to fail, go for level 0.
If you are a government contractor and are required to handle simultaneous failures of 75% of your drives, either mirror them all or go with 5+1 or a raid 10 setup.
All in all, its a poor question to ask slashdot. You need to let us know what you consider an acceptable failure, and by the time you have that figured out determining what raid level you need is easy.
Karma: SELECT `karma` FROM `users` WHERE `userid`=138474;
RAID 5 or 6 will stripe the data across all drives in the array. You will basically need about 8 - 10 % of the total space set aside for data recovery. You can loose 2 hard drives (as long as they are not next to eachother) and not loose any data. RAID 5 and 6 are only incredibly useful in application with more than 4 hard drives and about 500 gb of storage. It's a little faster than the lower raids becuase the redundancies are simple pairity bit calculations, and are done twice for each single data change on disk. The lower raids will have a set of disks that actually mirror the data in tact (raid 1) or perform more intensive Hamming Distance calculations and store the results on another set of disks.
So, RAID 5 or 6 would be the best (RAID 6 is worth the extra bit of space for the 2nd calculation, and really helps when you can test the pairity bits against another pairity to create the lost data.)
There will be some slow down associated with RAID, but it wont be as bad with 5 or 6 and generally, you can live through it with the thought of having relativly robust file servers.
while(1) { fork(); };
If you want the best % of drive utilization go for raid 5. It works by Striping the data across 2 drives then XORing the data on the 3rd drive. But, you need 3 drives. Raid 1 works with only 2 drives but you only get 1/2 the data basically each drive has an exact copy of the data that the other drive has.
Put simply if you don't have a lot of data to store but you want it safe go for raid 1 with small drives you end up with the same data storage as one drive but it takes 2 drives. If you have a lot of data to store go for raid 5 you get twice the data storage of one drive but you use 3 drives.
A simple, very safe server setup is RAID 5 w/ a hot spare. One drive fails, the array rebuilds on the hot spare, and you replace the failed drive whenever you have a chance.
In theory, some of this is possible in software, but a good RAID controller card is much, much better.
A quick note - if you re-initialize the RAID, it will erase everything you have. You should 'rebuild' the drive, unless you have a hot-swap, in which case you just take out the bad drive, pop in the good one, and ur good to go.
Have you thought about software RAID? Before everyone jumps down my throat, I realize that it's slower than hardware RAID...but, here is my rationale for using it:
1) You don't need drives that are the same size.
I've done hardware RAID, had a drive fail 2 years down the road and not been able to find an 18GB SCSI drive to re-insert to the array. That has the potential to jack your entire array. With software RAID, you buy a 36G drive, partition it so that 1 partition fits your array, and off you go
2) It's a personal file server, so speed is less important than cost (i'm guessing). With software RAID you can mix all sorts of wonderous things together. IDE drives from the basement, SCSI-320 drives you stole from work and nearly everything in between. It's for flexible, and has no associated controller cost.
3) It's easy as heck. You can configure it in Disk Druid/fdisk, and it works quite easily in any major distribution (I've done it in Slack, Debian, RH, Fedora and Mandrake).
The major downside is that you cannot (as least I don't know how to) hot-swap drives. But again, this is a personal file server. Spend your money on pizza and beer, screw the SCA hot-swap drives that are going to cost you an arm and a leg.
That's just my $0.02...flame away
Werd.
No offense intended, but why didn't you just do a google search rather than asking 1.5million slashdotters?
or how about starting with using high quality drives instead of dirt cheap consumer drives with low life and warrenty lengths...
I have had ZERO problems with my server quality SCSI drives that still have 2 years left on their 5 year warrenty.
I suggest looking at getting reliable drives before looking at a RAID solution.
Do not look at laser with remaining good eye.
You also never touched on the possibility of him having only 2 drives, in which case RAID 1 would be the way to go for data redundancy.
She loves me: 09F911029D74E35BD84156C5635688C0 She loves me not: 09F911029D74E35BD84156C5635688BF
Raid 1 for simplicity. 2 drives in mirrored configuration. Cheapest and easiest to setup. Install Linux and use software raid. Works like a charm.
If you're upto a challenge, install Linux to boot from the RAID 1 config. It was a huge pain in the ass to figure out. When I configured Redhat 9, I had to use Lilo instead of Grub as the boot loader wasn't being correctly written for both drives. Had to use "dd" to write the boot sector and Lilo to get it working properly.
Benefits of software raid allow you to swap drives with minimum downtime and recreate the drive in the background. And u save money from not buying a hardware raid card, which could serve as another possible point of failure. Then you can write scripts that can email you the status of the raid periodically with cron.
Remember to test the config by unplugging each drive separately. Of course it will take awhile to sync each drive...
If you are feeling feisty and have more money to spend try this (a copy of a previous post of mine):
Here are some interesting numbers:
$250 per drive
400GB per drive
4 drives
1.2 TB in Raid 5
Total cost $1,000
or $0.83 per MB.
So there you have it. A terabyte file server for about $1000 will be a reality soon enough. Nice. Serial ata will lessen cable clutter, and only 4 drives will be doable in any spare decent case and power supply.
Hopefully it won't take too long for prices to drop to $250.
Of course Raid of any level is no replacement for a full backup, but it's certainly better than nothing or relying on a single drive no matter how good the quality/warranty.
What I really want to know is what sort of performance you get from software raid solutions. After all, the concept of being able to get redundancy without forking money over for a raid card (even from ebay, they're expensive), is rather tempting.
You know when it's okay to shout fire in a crowded theatre? When it's on fire.
I'm setting up redudent storage at home. After looking at all the RAID options, limitations and what I really needed I decided that a nightly backup of my data onto another drive on another system will be very redundent, prevent human error (me deleting things), and be cost effective. (since I already have another machine). Backing up a nightly image of your drive would restore things faster, but not help against human failures. (which I think are more common then drive failures.. but I guess it depends on the hardware and humans involved ;) ).
Google around and you will find all kinds of arguements for IDE not being a good RAID solution. (mostly write cache related).
Really depends on the type of RAID you'd like to implement.
RAID 0 stripes the data across 2 or more drives and therefore offers no redundancy (in fact, in a two-disk stripe you mutiply danger of data loss x4 compared to two individual drives -- because you not only double the possibility of failure with two disks as opposed to one, but stand to lose all of the data on both drives should one fail). In any event, no point in discussing it further since redundancy is the point.
RAID 1 offers redundancy by exactly duplicating the contents of a drive onto another drive, and needs exactly two drives. This is considered the most "fail-safe" method of RAID array although offers no performance benefits whatsoever.
RAID 10 (or 1+0 or 0+1) is a combination of RAID 0 and 1 and is nearly always done with four drives, although technically it can be done with six or eight (if your controller supports them). It offers both performance benefit and redundancy, although the cost of the "wasted" drive space is quite high.
RAID 3 involves using 3 or more drives, one of which contains parity information to rebuild the lost drive should any of the other drives fail. This is one of the least popular RAID formats and has more or less been totally replaced by RAID 5.
RAID 5 involves using 3 or more drives and writes parity information across all drives in the array, allowing one drive to fail with little to no performance loss. The failed drive can be replaced and the RAID rebuilt. Depending on your hardware/software, this can often be done hot without having to power down the system at all. It is one of the most commonly implemented RAID solutions because of the good mix between drive use (the price goes down the more drives you have in the array yet you can have as little as three), redundancy, and high availability.
There are others out there like RAID 50 but nothing worth mentioning, especially for a home user.
The only question left to you is whether the RAID will be run by hardware or software (software might be a good choice if you are already running Linux on the server, but you'll have to ask someone else about it because I don't know a thing about it). Personally I chose the hardware route years ago and bought an Adaptec 2400A, which is a four-channel hardware ATA-RAID card capable of RAID0, 1, 10, and 5 -- guess which I use. I use all four channels, each with a 200GB SATA hard drive. I've lived through a couple drive failures, a full drive upgrade (when I first bought the card it was 4x60GB drives) and even once where two drives RAID tables got zapped (I'll NEVER put my drives in removable cages again) and never lost a byte of data -- so the CAD$500 or so for the investment on the card was worth it.
600GB of storage means not having to worry about all those unlicenced-in-North-America-anime torrents running out of space any time soon.
By my calculations that gets you either:
Plaid 10
Pain 10
Neither sound good.
It's 10 PM. Do you know if you're un-American?
IDE is quite stable these days - certainly for the price.
Let's see. My server requires half a terrabyte of storage.
3 200gb IDE drives at $100/ea == $300
3 180gb SCSI drives at $700/ea == $2,100
Yeah... Not likely, pal. And certainly doesn't qualify for "affordable" like this guy is clearly looking for.
True story...had a personal fileserver with a Promise RAID card. I got the Promise card because it was cheap and had a good rating on a couple of review sites.
What I didn't know at the time, but learned the hard way, is that Promises's RAID monitoring program "PAM" is a user-mode only application. That means that if you don't login, it doesn't run. Care to guess what happened to me?
At some point while I was gone for the weekend, I can only guess something crashed and rebooted Windows 2000. When it rebooted, I didn't have it set to automatically login (why would I? it's a server). So "PAM" wasn't running when one of the drives in the RAID 5 set failed. Maybe it even had something to do with the crash, I don't know.
Now, the point of PAM is that if a drive fails, an e-mail gets sent, in this case to my mobile phones textpage address. Since PAM wasn't running however, nothing was sent. The drive failed and, I can only guess, put off so much heat that it cooked the drive above it (why do so many cases mount hard drives horizontally above each other anyway?) and next thing I know, I can't login to my server from where I'm staying. I call a family member with a key to come by and they are unable to restart the server. It wasn't until I came home and read the BIOS messages that I understood why. Everything gone.
I had a lot of stuff on CDR, but let me tell you, I was plenty outraged that Promise could design something so utterly stupid as a monitoring utility that doesn't know how to run as a service. Even to this day, PAM still will only run as a user-mode program, and even worse, you actually have to login to the program now to start it, which can't be scripted.
F Promise. Only a complete and utter fool would be stupid enough to buy any of their products. May they rot in that special place reserved for child molesters. (Yes, I'm still bitter about it)
- JoeShmoe
.
-- I wonder which will go down in history as the bigger failure: the War on Drugs or the War on Filesharing
Actually, I just built a 1TB fileserver for my home last month (I do a lot of video editing and need a secure place to store it). I'm using Mandrake Linux 10, but most any flavor will do as long as you have the raidtools installed. Also be sure to install Samba so you can map drives on both Windows and Linux systems.
One great thing about using Linux on the fileserver is that you can use software RAID. As the name implies, this requires no special controller cards (which is nice, since RAID 5 controllers typically run $200+). You also have the option of setting spare drives, which allows the array to begin rebuilding immediately in the event that one drive fails - the spare takes its place. Setup is easy - create a RAID, select what type you want, and then add drives to it and format.
I'm using a RAID 5 setup with 5 x 250GB drives giving me 4 x 250GB = approx. 1TB of storage space. As has been mentioned, using RAID 5 allows you to recover if one drive fails. The odds of more than one drive failing before you have a chance to rebuild the array are essentially the odds of your box being destroyed (tornado, fire, etc.).
Also previously mentioned, never attach more than one drive per IDE bus (assuming you're using IDE like I am). Doing so is irresponsible from a bandwidth standpoint as well as from a reliability standpoint, since a drive crash typically brings down the bus, and all drives on the bus with it (and as we all know by now, losing >1 drive is not survivable). Buy some cheap PCI IDE controllers, keeping in mind to ensure that they're dual channel if you plan on connecting >1 drive per controller.
Take some time and read this - it will tell you everything you need to know.
It's for home use
No data loss if a drive dies
Easy to rebuild - remove dead drive, install new one
Budget... Ah. Why is it *every* "Ask Slashdot" never mentions the budget? On the cheap, you could do simple mirroring RAID1 - most mobos with on-board SATA RAID will do this for you. The overhead is that you pay twice as much per GB because you obviously need two drives and the performance gains are negligable.
Personally, I'd take the more expensive route; get a proper hardware RAID controller with proper RAID management software. There are 4 port SATA RAID controllers (who *really* still needs SCSI for home use?) for a few hundred dollars and do full RAID5. You lose one drive for the parity info, but that could be as little as 25% of your total capacity if you get four drives instead of the the minimum RAID5 requirement of three drives.
Also, with a proper hardware RAID controller, you should also get a performance boost from use of RAID and have minimal CPU overhead. Get four of Seagate's new 400GB drives and you'll have over a TB of disk space, which should give you some bragging rights for a months or two before it's old hat. :)
UNIX? They're not even circumcised! Savages!
include $sig;
1;
Software raid is plenty fast for a personal fileserver. It's not like you'll have a hundred users on it at a time. Unless you have an ancient CPU, you'll be fine.
-Ryan, with the unoriginal sig
You want a Promise UltraTrak SX8000 It's the easy idiotproof array. We're using several of these.
If a drive fails, it beeps at you til you replace it. You just yank it out, and put in a new drive, the same size or larger. It then rebuilds automatically. No shutdown or reboot required.
The Linux crowd will be happy to know the RM series runs linux. I don't know about the SX series, but I suppose it does too. Either one appears to the server to be a single SCSI drive. No drivers required, other than making the SCSI card of your choice work.
There's the Linux method of doing it too, which I like a lot. It saves you a *LOT* of money in extra hardware. You can go with 3 drives without adding any extra cards to your system, or you can put in IDE controllers to add as many drives as your system can support (PCI slots, power, and physical mounting points are the limitation). Read the "Software-RAID-HOWTO", which should come with your system. I've done many of these also, and they work quite nicely. You have to shut down the system to swap a drive, and then run `raidaddhot` with a couple parameters (the md device, if I remember right), and you can be running while it rebuilds.
You should have looked it up before you posted.
RAID 5 is the most common for a large redundant array. The array size is (N-1)*size . The more drives you use in a single array, the better off you are for size loss.
3 100Gb drives = 200Gb
5 100Gb drives = 400Gb
10 100Gb drives = 900Gb
10 200Gb drives = 1.8Tb
RAID 0 is striping. No redundancy, which you won't be happy with. (One failure means losing the array.
RAID 1 is mirroring. With two drives, you still only have the size of one.
RAID 50 is nice where it does striping across redundant arrays. You lose size, but gain speed.
Most other RAID types aren't very popular for various reasons.
Watch out for going over 2Tb in size on a single block device. I'm having problems with that right now. I have two Promise VTrak 15100's with 15 250Gb SATA drives in each, and anything with a block size over 2Tb is giving me grief. There are legitimate reasons for this, most of which newer documentation claims to be fixing, but I'm still having problems with a current Linux release. Making logical drives under 2Tb works, but doesn't accomplish what I need.
I hope this helps.
Serious? Seriousness is well above my pay grade.
However, what happens if your place has a fire, gets vandalized, or a burglar takes off with your server(s)?
At my last job, we needed a basic RAID device that was under $500. We found this: http://www.accusys.com.tw/7500.htm It was about $200, and is OS and system independent. You simply put in two IDE drives, and you magically have RAID-1. You can hot-swap the IDE drives if necessary. We had one drive go bad and it worked perfectly. I recommend it to anybody on a budget. It takes up 2 drive bays, so it's a pretty easy fit in any standard PC.
I always like to joke that this book should have been called: RTFM: Raid - The Fucking Manual
Life is the leading cause of death in America.
First, you must decide which RAID level meets your needs/wants. To do this, you must educate yourself on the various RAID levels and the pros and cons associated with each so you can make an informed decision. I recommend reading "The Skinny on RAID" if you want to learn the various RAID levels available.
After reading that article, you should learn about hot spares and what they can and cannot do for you. A recent article has been written about setting realistic expectations on what hot spares can do for you. "The Mythical Hot-Spare - Tape/Disk/Optical Storage" will be informative on this subject matter.
Lastly, you should read "Kill SCSI II: NetCell's RAID 0 Performance + RAID 5 Security Equals SyncRAID" to look into a innovative IDE RAID card that can give you kick ass performance and reliability. Be sure to read the benchmarks on the review so you can make an informed decision.
si vis pacem, para bellum..."if you wish peace, prepare for war"
No offense intended, but why didn't you just do a google search rather than asking 1.5million slashdotters?
Holy crap! There are 1.5 million of us? Now I know what to say the next time a bully asks me, "You and what army?" THE SLASHDOT ARMY!!!
-Ryan, with the unoriginal sig
In my career I've had the best results with a 0+1 RAID also known as a striped mirror. Particularly because RAID 5 has some performance hitches to due to the redundancy method, you have to have a lot of disks to really get good performance and redunancy, and if you loose a disk your performance drops like a bomb.
In 0+1 is all just data baby! Loose a disk, just break the mirror and you'll still get good speed until you can fix the failed disk.
I am going to get yelled at for this, but have you considered ghost programs? You know make an image and then when the machine dies you rebuild from the image. Seriously it takes less time to do then rebuilding the data from the raid array probably would be and you can use the extra space you saved for more fun stuff.
"Some days you just can't get rid of a bomb."
I've found the linux kernel's built-in RAID capabilities more than adequate for most of my fault tolerance needs. The best part is I can move the drives to pretty much any system - a new motherboard, whatever - without having to worry about kernel support or finding that IDE driver. If a drive fails I can boot its mirror up in any system and be in great shape. I also use the utility mdadm to email me if one of the drives fails. For some linux firewall systems I've built, I use old crappy 6GB drives, but mirror them so there's no risk if one of them goes out. Looking at my basement firewall now and...
everything is cool!
There's no place like 127.0.0.1
Don't get too fancy with yourself on this one...
You definitely don't need any type of RAID solution because it doesn't offer you what you really need. You say you want RAID, but what you really want is backup.
All RAID solution deal with disaster recovery, but they don't deal with the situation where you accidentally rm -rf a directory that you wanted. If you mirror or RAID 5 your drives, you're still hosed because both drives will delete the files. In the end, this is more important and much more convenient.
Instead, go with a better approach which is copy or tar your files every night (or every week) to a backup drive, preferably over the network on a completely different machine. This will prevent the problem of a power surge or accidental shutoff from corrupting both drives at the same time.
I have two 80GB drives, with /boot (100MB) and /home (40GB) mirrored, but the rest is / on one drive and /data on the other.
/home than I am about full failover redundancy in the case of single-disk failure. Rebuilding the OS is a reasonably painless process but some of my data is irreplaceable (and backup CDs/DVDs are too easy to lose/break/corrupt/tempting to re-use). /data holds information I don't care about so much or that I can get back (like my ripped-from-CDs-I-own music).
Basically, I'm more worried about keeping what's in
If zero-downtime is a critical factor for you, you probably want to RAID-1 the whole disk (just remember to copy the MBR, too!)
How appropriate. You fight like a cow.
Actually, I've used it quite successfully under Linux for web, MySQL, and mail servers. The mail server is the most abused server, and it has no speed problems. We have 3 IDE drives as a RAID5 under Linux (md device). That server has been known to pass over 100k Emails per day. Sure, it's mostly spam and viruses coming in, but they're still received, scanned, and everything but the high scoring spam and viruses are delivered.
/proc/mdstat
/ /boot /dev/shm
So, several hundred users using IMAP and POP3 to collect mail, SMTP to send mail, and the 100k or so incoming messages do add up to a lot of work, and it handles it flawlessly.
$ cat
Personalities : [linear] [raid0] [raid1] [raid5] [multipath]
read_ahead 1024 sectors
md0 : active raid5 hdc2[2] hdb2[1] hda2[0]
351100416 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
unused devices:
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/md0 330G 11G 302G 4%
/dev/hda1 122M 8.0M 108M 7%
none 499M 0 499M 0%
Serious? Seriousness is well above my pay grade.
Actually not Here I priced it out
Food not Bombs is a nice platitude but it breaks down when you notice that the Bombees are usually well fed
Because Google turns up 1,400,000 hits of mostly crap in 0.11 seconds. When you need advice, do you ask a librarian, or a group of trusted friends? By your logic, we should trust the company that wants to sell us RAID cards. I'd rather ask people that use RAID products, not sell them.
Seeing as how you want data redundancy, there are three RAID levels for you to pick from:
RAID 1 - Drive mirroring.
Pros:
-Excellent read performance, no loss of performance if one drive crashes.
Cons:
-The amount of space you can have on this array is limited to the largest drive you can find. Then you have to buy a second one to mirror the data, which means you are paying double the cost per unit storage on your array.
-Write performance is slower than other RAID levels.
RAID 5 - Striped array with parity. You can stack as many drives as you want on this array (within limits of the controller of course) and lose only one for redundancy.
Pros:
-You can build a very large data array out as many drives as you want, losing only one for the purpose of data reconstruction should a drive in the array fail.
Cons
-Array performance dies in the event of a failure, as lost data is reconstructed on the fly from parity information stored across the remaining drives. Of course, performance is restored with the bad disk is replaced and the array reconstructed.
-You need at least 3 drives to build a RAID 5 array.
RAID 10 - Drive mirroring with striping. Essentially combines RAID 0 and RAID 1, hence RAID 10.
Pros:
-Redundant and fast. Array can survive multiple drive failures.
Cons:
-Expensive. You need at least 4 drives to get started with RAID 10, and go by 2's as you expand on the array. As with RAID 1, your price per unit storage is doubled.
-The array can survive multiple failures, but that depends on which drives die...If you lose two drives out of the same mirror set, then the array is gone
Which RAID level you pick depends on your application. If you are interested in having something like a 1 TB data dump, you'll probably want to go RAID 5. If you only want 200GB or less in your array, then RAID 1 is probably the way to go. If you are interested in lots of space, lots of redundancy, and have lots of money, then RAID 10 is probably what you want.
-R
>No offense intended, but why didn't you just do a google search rather than asking 1.5million slashdotters
No offense intended here either, but why is it that every time someone posts an "ask slashdot" question someone else feels compelled to complain (and occasionally get downright rude) about why the user didn't just "google it"?
Google will get you articles and advertisements, true, but most of the time what the questioner is really after is peoples OPINIONS and EXPERIENCES.
If I post a question like "what's the best backup program you've used on linux" I'm looking for 1.5 million slashdotters EXPERIENCES with backup programs...a google search will get me a list of programs and some reviews if I'm lucky, but that's no substitute for hearing from a bunch of people who've actually DONE or USED something.
Hearing from a few hundred or thousand responders is a better recommendation than a "C-NET" review anyday!
Milo from Kangaroo Koncepts
The whole point of RAID (Redundant Array of Inexpensive Disks) is that failure is a when, not an if proposition. MTBF (Mean Time Between Failures) rates averages across all units in a model line. For every HD like yours that beats the MTBF, there's one that dies early, or two that die a little less early.
Right now, the cheapest HDs per GB are 30GB@$3 = $0.10:GB. Cheapest RAID controller card is $15 for 4 drives; a PCI PIII/1GHz server stacked with 24 drives gives 720GB (down to about 600GB with RAID redundancy) for about $400. Large capacity drives (~160GB) are at $0.50:GB, so your $400 server gets you about the same storage, but no RAID. Add the faster seek times by switching over more IDE buses rather than moving fewer drive heads, and the RAID promise delivers.
--
make install -not war
It sounds to me like this guy just needs a quality HDD and good tape backup. Do not put your faith in RAID, put in a good off-site backup. I've seen RAID solutions fail to many times. I've seen RAID solutions fail twice recently. The first one was a company with a slick server and nice hot-swappable SCSI drives but their controller card went out. It was replaced by the manufacturer but the techs were unable to recover the data. Next one happened when a machines case fan went out and the mirrored HDDs cooked themselves to death. The moral of the story: NEVER TRUST RAID and as always keep a backup.
--Gentoo Baby!
RAID5 is a much bigger performance drain in most setups, its also pushing boxes up to 4+ disks (realistically raid5 you need a hot spare) and that pushes it out of 1U/2U and mini cases.
IDE is so cheap you might as well just buy two big sata drives for most usage. Do make sure you buy two drives from two different vendors - its really embarrassing when you use two identical drives with near serial numbers and they fail the same day.
Also keep external backups. One place I worked we lost an entire array and the hot spare to a PSU failure. No backups.. thankfully it was the usenet spool
there are two kinds of people: those who have had hard drive failures, and those that will have hard drive failures. i don't care if jesus h fucking christ himself blessed your hard drives.
I suggest looking at getting reliable drives before looking at a RAID solution.
and, if the poster is looking for the more-realtime-than-backup-restore reliability as he indicated, i suggest he look at raid BEFORE looking at drive quality.
the name of the game is redundancy. a RAID array of cheap drives (let's remember that it stands for Redundant Array of Inexpensive Disks) *is* more likely to have a single hard drive failure - but it's recoverable. however, it's far less likely to have multiple, simultaneous drive failures on the same day (unrecoverable) than your one, expensive, better-quality hard drive is likely to have a single failure - which is unrecoverable.
pr0n - keeping monitor glass spotless since 1981.
I've run software raid 5 for some time and in my experience it has been more stable than running ide raid with promise ide controllers. I have had 2 promise cards go bad but 2 systems running software raid 5 under debian have worked extremely well. Even hot-swapping works well and I've had to use it several times.
Performance with an IDE raid controller is pathetic. You can't get much more than 22MB/s. I can hit 68MB/s reading and 31MB/s on one system with 4 7200 8 MB cache IDE drives. (This system has 2 extra pci ide cards in it so each drive is a master with no slave).
If you want to go scsi then you have software and any ide raid card beat by a long shot. But "personal fileserver" usually means raid is too expensive.
I'm glad he asked. I benefit from reading the discussion, including the various tangents. This gives me another opportunity to consider using RAID at home and benefit from some "war stories" folks might offer. My needs aren't exactly the same as his, but fortunately people never stick to the exact question asked, anyway. The free information people give out is invaluable, especially the stories of personal experiences and descriptions of people's personal setups at home.
Secession is the right of all sentient beings.
I'm doing the same thing at home. I have three identical drives. One, the primary, is sitting in the server, the secondary is unmounted in a removeable tray in the server, and the third is also in a tray but at a distant location.
Initially I've dd'ed the primary to the other two disks.
Every morning the primary is 'cp -fpRu'ed to the second one. No files are deleted on the secondary, unless I'm running out of diskspace there, at which time I do an 'rsync -aH --delete' after some verifications.
Each few weeks I bring the third, down the server swap it with the secondary, and return the swapped third.
I feel pragmatically protected. In the case of a crash I won't lose more than a day of work. In the case of burglary, fire or Gotterdammerung, a few weeks.
Next time I'll rebuild the file server I'll make the 2nd and 3rd an external Firewire or USB2 High Speed.
Fingers crossed.
Flourescent (adj): smelling like ground wheat.
I've run software RAID-5 on Linux for several years on two of my home fileservers.
The only problem I ever encountered were hardware failures (Promise *ack* *spit* PCI IDE cards) and one drive failure. Performance is not really an issue for home use; I can easily saturate my 100Mbps network card.
My Fileserver: AMD Duron 1300MHz, 768MB RAM
This device was built from 4x 160GB 7200rpm SW RAID-5 for online storage (including all of my digital photos, and my collection of CD's ripped to MP3).
For backup I have an old Celeron 433, 512MB RAM box with 4x 120GB 5400rpm SW RAID-5
The main fileserver is rsynced to the backup server once a week. CPU on the backup server is a bottleneck; the Celeron is a bit underpowered for rsync, but it works ;)
My $0.02:
- Software RAID is perfectly usable, especially for typical home use. Performance is adequate.
- With RAID-5 you "lose" only one disk to parity so it is quite cheap to build
- Yes, I'd really like a 3Ware Escalade but if the card fails I need to get a new one pronto; software RAID sets can be migrated to most PCs.
-- Gxis! Ed.
Why not read a few FAQ entries at StorageReview?
/", etc.
In short, I would probably recommend RAID5 if you have 3+ drives.
RAID5 gives you the most available space while still being redundant. It allows for exactly one hard drive failure.
RAID5's write speed is usually terrible, especially with a small number of drives, but write speed isn't a big deal on my home file server. (Only you know about your needs).
RAID1+0 (NOT RAID 0+1, which is inferior) is great for performance. With 4 drives, you have potentially twice the STR of one drive (writing) and 4 times the STR of one drive reading. Of course, since STR is not important for most IO, this doesn't really effect your end performance much unless you are dealing with linearly reading/writing very large files.
Writing performance will almost certainly be higher than with RAID5.
You do lose quite a lot of space (especially when you use a large number of drives). If you used a 4-drive 1+0 array, you would have the space in two of those individual drives.
RAID1 is nice, and is very reliable, but is impractical with more than two drives unless you are incredibly paranoid. RAID1 simply makes all drives copies of the others, this, you always have as much free space as one drive would have, even if you have ten. If course, you could also handle 9 drive failures and not lose data. RAID1 is fine for 2-drive arrays though.
DO NOT FORGET that RAID is no substitute for regular backups. RAID will not help if your data loss is caused by FS corruption, a cracker, accidentally typing "rm -rf
For lowest cost, I would use software RAID, such as Linux's LVM, FreeBSD's Vinum, or whatever Windows has. (RAID5 requires Windows server). (I would not use Windows as the file server myself).
For slightly higher cost, try a Promise controller.
I would avoid Highpoint and Silicon Image controllers. Highpoint, especially, is crap. (but it is very cheap, at least).
If you possibly can, I would recommend a nice 3Ware Escalade controller. Escalades are true hardware RAID cards, unlike Highpoint/SI and most of Promise's cards, and are OS independent and very stable (with certain exceptions for some unlikely configurations).
If you have any questions, you might try the StorageReview forums. There are a number of extremely knowledgeable people there, including engineers and executives-level researchers at hard drive companies. They can give far better advice than I can, I am sure.
By the way, all my comments assume that all drives are the same size. If not, treat all drives as if they are the same size as the smallest drive on the array (unless you are using JBOD, which is not redundant)
Computer Science is no more about computers than astronomy is about telescopes. --E. W. Dijkstra
I like STFW - Search The Fucking Web
It's official. Most of you are morons.
Actually a raid1-card for two ide-drives is quite affordable.
If it's just a mirror, writes are slowed slightly
Hardware controllers with batter backed RAM (note; not all controllers have this), will have an edge over software solutions on ALL writes - no matter which RAID level you use.
Don't even bother trying to do RAID 5 in software
SW RAID is usually a lot faster than HW RAID solutions, when you factor out the battery-backed RAM part. Any HW RAID controller with battery backed memory will lose big-time to SW RAID on even moderately faster CPUs (like 500MHz P-IIIs), especially on RAID-5 which is compute intensive, an even more on RAID-6 which is also compute intensive but not XOR based.
Modern HW RAID controllers have reasonably fast CPUs with XOR accelerators built in - therefore they can do RAID-5 as fast as the pure SW solution. But this is not the case with older controllers.
I know of people who use 3ware cards for large RAID-5 servers, but only use the 3ware cards as "dumb" IDE controllers, and leave the RAID-5 handling to SW-RAID. The reason? Their benchmarks indicate that this is significantly faster.
And when you think about it, it makes sense. Nobody puts a GHz processor on a RAID controller. Even a slow-by-todays-standards P-III is able to XOR more than a gigabyte of data per second - much much more than anything you put thru most file servers out there.
So, the "HW RAID is faster than SW RAID" is true in one scenario only; when you have write-intensive workloads and a HW RAID controller with battery backed cache.
In *all* other cases, SW RAID will be a win, performance wise.
For a personal file server, I wouldn't hesitate to run RAID-5 in plain software. It's as fast or faster than any HW RAID controller in the sub-$3K price range, it's reliable, and the flexibility beats the heck out of any HW based solution out there (mixing IDE/SCSI, allowing a cryptographic layer between the RAID layer and the physical disks, etc. etc...)
Next up is drives. Not all drives are alike as I'm sure you already know. Do you want a SCSI or an IDE array? I won't go into this lengthy topic further. I'll assume though that you will build an IDE array. Some drives do not work well in RAID setups. The controller companies are more likely to tell you this than the drive manufacturers. I own 6 Western Digital WD12000JB drives (7200 RPM, 8MB cache, 120GB capacity). By all accounts one would expect those drives to work quite well in a RAID setup. They have excellent read/write times individually and have a massive amount of cache. Well, one would think that and they'd be wrong. Both 3ware, Highpoint, and Asus tech support (on an OEM Promise chipset in teh A7V333) recommend against using Western Digital drives. 3Ware did however say that WD will give you firmware that works significantly better in RAID setups if you ask for it. Personally I'm a fan of Maxtor, both the drives and the company. I've had very few failures with Maxtor drives. Whenever I did they were always extremely helpful with getting me a replacement fast. I've been very impressed by ther service. I have 2 Maxtor 7Y250P0 and 2 6Y200P0 drives in the server sitting next to me. The second is a very high quality drive from Maxtor's DiamondMaX Plus 9 line. It too have 8MB cache and 200GB to spare and runs at 7200 RPM. Nice drive. The first pair are from Maxtor's MaXLine Plus II. They have a high MTTF, 8MB cache, 250GB space, and run at 7200 RPM. They are also a little bit faster than the 6Y200P0. They are excellent drives. My next drives will also be Maxtors but this time I'll be buying the SATA siblings of the MaxLine Pluss II product line.
That brings me to my next point. PATA or SATA. Does your case have an abundance of room? I mean a massive amount of room to route long 80-conductor ribbon cables? Do you have at least 1 if not 2 PCI slots to waste below your RAID controller with the room needed to route the ribbon cables and make connections? If not then you need to go with Serial ATA drives. Don't even think twice about it. Go with SATA. The drives cost almost the same nowadays and you'll find wht little price difference there is ($5?) is worth it in the end. SATA drives are so much easier to wire. I have a case full of round cables. The case I have is an extremely large Codegen case and even I am having trouble with the cable mess. SATA is a wonderful thing. Along the same lines is hot-swap cages. There are a dozen brands to choose from. You should probably utilize them, even if you don't need hot-swap capabilities. I need them to create 3.5 drive slots from 5.25 bays. If you do want to do hot-swapping, make sure you drive cage and controller support it.
Finally we get to RAID levels. You don't want to increase your risk of losing data so level 0 is out. 1 is extremely redundant and with the right controller can actually speed up reads. It's also costly at twice the cost per GB. Unless the data you're storing is absolutely critical you won't want to use 1 (in most cases). Forget about level 2. For starters th
I have just finished doing this exact thing.
;)
;)
I basically built a box to do nothing other than fileserv. I put together a nice simple old PC (550mhz with 256 meg of ram) and mounted it in an old rack mount case I had lying round.
It's running debian with 2.4.26.
I'm running software raid and installed 2 x 2 interface IDE cards.
I threw in 6 seagate 120 gig drives (the ones with the 8 meg cache) and ran raid5 across 5 of them and a hot spare to rebuild the raid should a drvie fail. Each drive has it's own IDE channel to prevent channel faliure from screwing my raid.
I'm using ext3 as the filesystem and wrote my own little raid mon script that SMS's me should a drive fail and alarms locally.
This setup has been rock steady and gives me 460 (ish) gig of usable space after formatting.
For added peice of mind the machine is plugged into a UPS that is connected to the machine via Serial. If the UPS kicks in it shuts the machine down properly after sending an alarm SMS (the DSL and switch are also on the UPS) (yes I'm a paranoid freak)
This makes a perfectly good media and file server and I've had no problem with it in the few months I've had it.
I also reccomend setting the spin down time onm the drives manually with hdparm. It was getting awfully warm in the box till I turned that on on the seagates. Modern drives are rather hot.
I have the whole thing mounted via SMB on my other boxes around the house and it's fast,(gig ethernet) reliable and easy.
Tho do remember that no amount of raiding will save you if you lose 2 drives through some horrible freak of badness, and no raid level is going to protect you from a house fire. Hence mine also rsyncs all my absoloutely vital files (scanned family photos and docs) offsite to a file storage site every night at 2am so as not to chew my bandwidth dduring usable times. Don't forget the only truely secure data is that which is backed up.. and offsite.... twice.
What you seem to fail to grasp is that your 5 year SCSI guarantee does not guarantee you that the disk will not fail within 5 years.. It merely means that the disk is unlikely to fail in that time and they will give you a free replacement if it does.
Therefore, if your data is important you won't just trust that an unlikely event won't happen - you'll assume that it will happen and make sure that it won't affect the integrity of your data.
Therefore you'll be using RAID and preferably regular backups whatever you do. This is what ensures your data integrity, not the reliability or otherwise of your drive.
After that, it's a case weighing performance, the cost (in money, manpower and downtime) of replacing a broken drive and the cost of setup against each other, and this is where it starts to make sense to use IDE drives for RAID:
For instance, say you've got 5 IDE RAID array. Over the space of say, five years you end up having to replace three of the drives - that's eight IDE drives you've had to buy
You also do the same thing with SCSI drives, and luckily none of them break - that's 5 SCSI drives all in all.
Now, say the IDE drives cost $100 each compared to $500 for the SCSI drives. You've spent $800 in the IDE case compared with $2500 in the SCSI case. There was no difference in the safety of your data but the SCSI one cost three times as much.
Therefore to choose SCSI, you'd *really* want to get that extra little bit of speed, which to be honest is more likely to be limited by the network to your server anyway...
So, to recap - assuming your data is valuable to you, the choice between SCSI and IDE has nothing to do with the disk reliability because you'll be relying on some other systems (RAID and backups) for your reliability anyway.
I would suggest you dont buy a RAID System: Heres what I do: I got 3 harddrives - one small one with a tiny linux installation on it and 2 harddrives of the same size for data. Every night Drive 1 is rsynced to Drive 2 and unmounted. Now Drive 2 will be mounted instead of Drive 1. The next Night Drive 2 will be rsynced to Drive 1 and so on. The great advance: If you accidentally delete a file, you have untill midnight to restore it without any hazzle.
Spelling mistakes: My is english spoken not tongue of mother.
How do I know? 'Cause I submitted this EXACT SAME story a month ago and was rejected.
A ID-5-3BAY&cats=&catid=314,312 It is a 3 bay RAID 5 for $800.
Sigh.
The cheapest RAID 1 OS internal and independent RAID (MIRROR) is Duplidisk3 by ARCOIDE.com
You also get a ton of implementations; Stand alone, PCI card (for power only), 3 1/2" bay, and 5 1/4" bay. The ones that install in bays are so the user can seethe status lights.
If you want an external RAID 5 the cheapest I have found is this - http://www.coolgear.com/productdetails1.cfm?sku=R
If you want 5 disk RAID 5 those are @ $1200. http://www.cooldrives.com/fii13toatade.html
If you want external RAID 0 or 1 relatively cheap then go with one of these - http://www.cooldrives.com/dubayusb20an1.html
You can find a ton of these devices on the web since they all use the same drive controllers and bays. The nice thing about these is that sometimes you can talk the store into selling you the RAID system without the external case. These things simply require you plugging in an IDE cable and power and can be installed in any PC case that has 2 5 1/4" bays open. If you but just the 2 bay controller they are @ $230 or so. I have one and I am really happy with it.
Everything I listed above uses IDE drives and is OS independent.
Or you could buy an old SNAP server on eBay and replace the drives. I bought a SNAP 4000 used for $425 last summer. Pulled the 4 x 30GB drives and replaced them with 120GB drives. It was a heck of a lot cheaper than paying full price for a new SNAP server.
I work for a small consulting business and since i'm the "linux guy" i was told to build a ^sigh^ cheapest, but reliable web/mail server.
I got two 60 seagate ide drives and used software raid to set it up. That was about two years ago. One of the hard drives failed last year, but i replaced it with a 80gb drive i got in the mall and just rebuilt the server in about 30 minutes (counting the googling and the server stop to replace the drive).
I definitely recommend, as i use this setup at home too.
RAID 5 is only really appropriate if you are building a large array. The money you will spend on the controller will make the cost/megabyte higher than RAID 1 unless you are looking for a very big array (more than you can get with a mirrored pair.) I have a RAID 5 array I built about 2 years ago with 4 160GB drives on a 3ware 6000 series RAID controller. It has worked great and I'm planning on using RAID 5 again for my next array. I've only had one drive failure so far but it recovered from it beautifully.
If you are willing to fork out about $1100 for storage you can create a really nice array. I'd recommend a 3Ware 4 port 9000 series controller like the 9500S4LP (around $330) or a RaidCore card reviewed recently over at tomshardware. Add in 4 $180 250GB SATA drives and you have a nice 750 GB array for around $1100. The Promise FastTrack SX6000 is quite economical and supports more drives if you don't mind it's bad performance and crappy Linux support. 8 port cards are also pretty economical but it's hard to put that many drives in most cases. You have to design a system carefully in order to create arrays much bigger than 4 drives.
Once you have your array, it's a good to use Linux or something with a reliable journaling filesystem on top of it. Once you have a RAID array your filesystem becomes a much more important point of failure. Using a reliable one will do a lot towards reducing your likelihood of data loss.
I also use a separate drive with a separate filesystem for backup. I have a script that manages it for me (ignoring certain directories) which runs every night. A RAID array is pretty reliable and a big step up from single drives so it's a good half way point but I wasn't comfortable with it so I went further. How far you go us up to you.
set softtabstop=4 shiftwidth=4 expandtab nocp worlddomination
The problem w/ Software RAID is it depends on the OS, if you OS fails you can loose your data - I've confirmed this w/ Windows Software RAID at least, it's a real, real bitch to recover from if you have any OS problems (and no matter what anyone tells you Signed Disks in Windows are a horror story waiting to jump out at you).
As for forking $ for RAID cards, I've had really good experiences w/ the MegaRaid cards from LSI Logic - really, really good tech support and exceptionally inexpensive cards.
closed minded is as closed minded does
- 3ware 9500S-8 8 port SATA RAID controller $485
- 5 250GB Maxtor Maxline Plus-II drives $195 each
- Supermicro 742T 7-bay SATA hotswap server case $330
The drives are in a 4 drive array with one drive as a hot spare. About $1800 total, which includes the server case--pretty steep for ~700GB usable space, but I now have:- expandability to at least 7 hot swap drives
- a hot spare
- a dual xeon capable case with a 550W supply
- plenty of airflow
- online capacity expansion (3ware says available this summer)
Yes, it is still a personal server, but we keep a lot of video on it as part of my DVArchive setup to support my ReplayTVs. I installed Fedora Core 2 on it right after Core 2 was released.Now, when I need to store a few hundred more hours of video, I can just throw 2 more Maxline Plus-II drives at it to get up to ~1.2TB--leaving final cost at under $2/GB, including the computer case, power supply and hotswap bays.
provantage.com has the 4 port 3ware 9000 card for about $320, I think. -se
Hmm... this is interesting. I've noticed almost everyone here has been discussing IDE raid. Why is that? Do so few people use SCSI raid for home use? And if so, why?
Are that many people really in need of a huge read thoroughput, but at the same time happy to accept high seek times? Is this really the best way to get performance out of your system? 3.6 ms seek time seems bad enough to me, but I can't imagine having my root partition on your average IDE drive's 8.5-9.5 ms seek time. I mean, really - you can get a 9 gig scsi drive for your root partion, brand new, for 30 bucks (inc. shipping) that has a seek time of 5 ms. Why would anyone use IDE for a root partition - but then try and make it raid for performance?
It's something that really has me baffled. Certainly, seek time isn't important on, say, listening to mp3's or watching videos - your bulk data. But when loading libraries to run programs, compiling, starting X, etc, it makes a *really* big difference. And to think that many people out there have their *swap* on IDE drives also...
You know when it's okay to shout fire in a crowded theatre? When it's on fire.
I have a removable drive, I ghost every month and do incremental backups every week to a DVD-RW.(seperate DVD for each incremental)... Worst case I lose a week and a couple of save games.
The nice thing about ghosting is that I get to use a cheap 120GB 5400 rpm drive and save many compressed images from the drive I'm backing up... I'm backing up a 36GB(?) 10,000 rpm WD Raptor. It only take 15 mintues to restart, boot from my ghost cd, save the image, and reboot into windows XP.
I didn't like the RAID solutions I was looking at, this not only works just as well for my needs, but I get to keep the removable HDD in a safe(fireproof of course) at the other end of the house just in case...
Just a thought...
Do so few people use SCSI raid for home use? And if so, why?
Expense, mostly. $272 for a 147 GB 10k SCSI, $170 for a 250 GB 7.2k SATA. An Extra 100 GB for a $100 less? Everybody at work (a large network shop) loves talking about their RAID-0 gaming machines. I shudder each time, as I have had HD failures. Backup Backup Backup!
As far as my home installation goes, I have a single HD for my OS/cache install, and my data goes onto the RAID array, so that even if my OS corrupts it's HD, I can rebuild without affecting my data.
As for not spending $30 for a SCSI HD, that would entail getting into the SCSI world. The guy would also need a card. So we're up to a $100 for a old HD, that while it has fast seek time, a brand new 250 GB IDE drive will smack it down on read rate, and has a 8mb cache to help insure it has it in cache!
I don't read AC A human right
Basically, your options are RAID-1 and RAID-5... as hundreds of people here have already pointed out. RAID-1 is just straight mirroring (where all drives in the array contain the same information). Usually, this just involves two drives, but there's no reason why you couldn't have, say, three or four drives all mirrored... and you could lose all but one of them and still be up and running.
RAID-5 is a very cool beast. You bascially have an array of drives with some portion of them set aside for redundancy. Most of the posts I've seen here only describe a scenario where you have three drives with one of those drives for redundancy. This only scratches the surface, however.
For example, you could have an array of, say, 5 10GB drives, with 2 drives' worth of redundancy. With this, your RAID implementation would make available to you, what seemed to be, a single 30GB drive (since 20GB of the total 50GB is used for redundancy). This way, you could have any two drives go bad and you're still okay.
Another example, I guess, is that you could have a two-drive RAID-5 with one drive's worth of redundancy. In this case, you'd have the functionaly equivalent of a RAID-1 mirroring setup. Not very sexy... but you could do it in some implementations, I'm sure.
I'm trying to use the phrase "X drives' worth of redundancy" instead of "X drives set aside for redundancy" because it's important to point out that, in RAID, all of the drives are considered equal. If you have 5 drives with 2-drive redundancy, it's not like you set 3 of them as the "main" drives and 2 as the "backup" ones. There's no preferential treatment like that. All the drives are equivalent and you could lose any of them and the others all move to cover for the one that was lost.
Now, personally, I like RAID-5 because it offers the ability to use more than 50% of the space you paid for. With RAID-1 mirroring, you always only get to use 50% of the space that really exists. This would be necessary if, when you suffered a storage failure, you always lost half of it. But that's not how it happens. Usually, you lose a single drive. So, it would be nice to maximize your space available, while having some insurance against a single drive failure.
This is where RAID-5 really shines, because each successive drive you add, you get all of that space for your usage. You could have, say, four drives, 1 drive of redundancy, and you get 3 drives' worth of space.
Now, there are a few pros and cons for both RAID-1 and RAID-5 regarding recovering/moving data and changing the size of your array, and I'll list them here.
IMHO, the real value in SW RAID is the hardware independence.
If your HW RAID controller dies, you have to get another one of the same controller, and hope that you can re-import your config w/o losing all your data. If your running SW RAID and your SCSI/IDE controller dies, you can replace it w/ whatever is cheap/available at the time. As long as the failure itself didn't bork your data, you shouldn't have to do much, if anything, to see your data again.
If you can afford to get the top of the line SCSI RAID controller from a good vendor it's probably the better option, but if cost is an issue, IDE SW RAID is the only way to go.
That's not how you do it. Show me someone who needs 147 GB on their root partition, and I'll show you someone who has a poorly configured linux system.
/ /scratch
/scratch; it doesn't need fast access. My swap, libraries, binaries, source code, etc, is on my root partiion, where it needs fast access.
My system, for example:
36gig 15k (3.6ms) rpm scsi:
250 gig 5k (9.5ms) rpm ide:
Who needs 3.6ms access time for their music and videos? What will that gain you? I can tell you what 3.6 ms access time gives you for a root partition, though: blazingly fast startup of the system, of X, of programs, and compilation.
All of my media is in
As I demonstrated, you can get a small 10k rpm scsi drive with access time 70% better of that for all but the nicest IDE drives (which cost notably more than scsi drives), brand new and with shipping, for 30$. After re-looking at pricewatch, I found the same thing for only 20$, including shipping. You can get a new scsi controller for 20$ also, inc. shipping, that will do 40mb/s (plenty for one drive). A new cable will cost you about 6$. That's 50$ for a root partition that will give you a 70% speed boost over a 7200 RPM ide drive.
Why would one *not* do something like that, unless they really don't care about speed at all? And if they don't care about speed, why raid for reasons other than redundancy?
You know when it's okay to shout fire in a crowded theatre? When it's on fire.
You (and the next poster) completely missed the point. RAID gives you *read thoroughput*, not *seek time* (it actually tends to hurt your seek time a little). It may seem like a trivial distinction, but it's actually very important: most home computing application disk performance is limited by seek time, and IDE drives have god-awful seek time. As I mention in a thread a little bit above here, you can get a good sized scsi root partition - *from scratch* (I.e., if you have nothing already, not even a scsi cable) - for under 50 dollars, using only brand new components, and including shipping - that will cut your seek time almost in half from a good IDE. Given how much people spend on their systems, this is a really trivial amount for the performance increase it gets you.
/usr/lib some time. What's your median file size? Something like 25k? When your system has seeked to the proper location, assuming merely 12MB/s performance, you're looking at 2 ms to read that data. To get that 25k, your system has to read the root inode, the /usr inode, the /usr/lib inode, the inode for the symlink, the /usr inode again, the /usr/lib inode again, the file's inode (to get the blocks), and then it can read the blocks. Now, realistically, most of that will be cached (not true for lesser used directories). You'll probably only have 1-2 separate read commands issued. With a *good* IDE drive, you'll be spending 8.5 to 17 ms on the seeks, and 2 ms on the reads. Optimizing the 2 ms is beyond pointless. And this example uses some kind assumptions for the IDE drive (8.5 ms seek time, but only 12 MBs sustained transfer rate). And lets not even get into swap....
:) You won't catch me arguing with that.
What do you need high read thoroughput (not write - RAID doesn't give that to you) for? Are you serving 2 gig files over the web? If not doing things like that, such a configuration is borderline pointless.
Take a look at
Do you see what I'm saying here? Using IDE as a root partition is dumb, but making it RAID is dumber.
Now, for slow bulk storage, nothing beats IDE.
You know when it's okay to shout fire in a crowded theatre? When it's on fire.
This is actually a common trend. For example, Software WEP far outperforms hardware WEP. A modern processor will spend Jeff Mogul has a great paper describing how TCP Offloading is slower than software TCP:i ngs-new/mogul-offload-2003.pdf
http://bbcr.uwaterloo.ca/~brecht/courses/856/read
fnord.
No one uses software RAID for performance, although the performance is good compared with the cheap 1+0 cards available.
The real advantage of software over hardware RAID is that you don't need to keep a spare RAID card around. With hardware RAID, when your RAID card fails you'll need exactly the same make & model card to read your data.
With Linux software RAID, you can read the drive set on any system with the raid modules.
London's finest organic fairtrade coffee
That's 50$ for a root partition that will give you a 70% speed boost over a 7200 RPM ide drive.
:)
Hm, I'd rather invest those $50 into RAM (you easily get additional 512MB for that). It won't speed up boot time (but in my case, I don't care about whether booting once a day needs 1 or 2 minutes), but after first use, everything is really fast (well, at least under Linux
I could even preload some stuff into a RAM disk and prevent seek times this way (via dd), but as I said, first startup isn't that important to me.
I am also not sure, why you are speaking of fast swap access several times. My swap partition didn't get much use for the last 5 years (even when I was still at 386MB)[1]. If you aren't into video editing or such, today's average 512MB or such should be plenty.
Another possibility for fast access times without spending too much, which I have done recently on a database server, is using average disks and putting software RAID on it (I needed much space and the fast disks with the needed size were about several times the prize of the lesser disks).
This worked so well with SCSI disks that I intend to try it with my home system on the next upgrade. Though I expect less performance due to IDE constraints.
[1] It gets used whenever Linux decides that it's a good idea to swap unused parts out in order to increase the mem availabe for the filesystem cache - which is why I still have a swap.
Keep an eye on which arguments are silently dropped in replies. Not always, but often times it's very telling.
You won't even notice the 0.001% CPU usage. Today's CPUs are far more powerful than any hardware based parity generator that you're likely to see on a hardware-based RAID card.
The question "which RAID level do I use?" raises other questions: which drive interface technology? what is your budget? how much storage do you need? do you need redundancy for swap? for boot partitions?
... users can restore the file they just deleted by navigating (graphically even!) to, say, /backup/2004-06-16/home/jason and copying a file to the desired location).
But regardless of how you answer those questions and what RAID level you finally go for, I would strongly recommend layering LVM (logical volume management) on top of RAID. Sounds bizarre and cumbersome to have two virtual layers between your filesystem and your physical devices, but in most cases it's worth it.
(Now here I'm assuming you're using Linux, but similar solutions are available for other OSs).
If you're not familiar with LVM, it virtualizes partitions. You group together one or more physical volumes (PVs) that provide a pool of physical extents (PEs). From this pool, you create logical volumes (LVs) filled with logical extents (LEs).
Thus, you could have four partitions on three drives serving as PVs, and from that pool (Volume Group or VG) you could create, say, two partitions. From there you have many options:
- You can resize the partitions.
- You can add another drive and add the space on that drive to the VG, then increase the size of the partitions.
- You can migrate data off one of the partitions, then remove that partition from the VG.
- You can migrate to another drive by adding that drive, migrating data away from the previous PVs, then removing the old PVs from the VG. This can be, by far, the easiest way to
To combine LVM with RAID, just use the md device as a PV.
And here is the top reason to use LVM:
- You can create snapshot backups.
A snapshot backup is a virtual partition, read-only, which contains the same data as another partition, frozen at a certain point in time. Something similar to copy-on-write is used so that the snapshot partition takes only the amount of disk space necessary to store the changes between the time the snapshot was frozen and the current state of the 'snapped' filesystem.
If you 'rm -rf *', you can just cp the files from your latest snapshot. (BTW, this can save a ton of work for sysadmins with forgetful users
So RAID can protect you from hardware error, and LVM with snapshots can help protect you from user error.
I know of people who use 3ware cards for large RAID-5 servers, but only use the 3ware cards as "dumb" IDE controllers, and leave the RAID-5 handling to SW-RAID. The reason? Their benchmarks indicate that this is significantly faster.
First off, 3Ware cards cannot be used as "dumb" IDE controllers - they only support logical drives - creating single drives is not possible, nor is leaving unassigned drives.
Second, Software raid will always suck for one big reason: A drive fails, your system locks up.
I have not seen any software based controller (promise, Silicon Image, High Point) or complete software based solution (Windows 2000/2k3 server's RAID, or Linux's md raid) on standard IDE controllers stay alive after a drive fails. It always takes the box down with it.
When you buy a hardware based RAID solution, the controller handles the drive failure gracefully, which keeps the machine running. "Dumb" IDE controllers don't know they're raided (they are dumb after all), so when a drive fails, they freak out.
3Ware makes a TRUE hardware based RAID solution that is intelligent enough to email you when a drive fails. Their 2 channel cards (SATA and PATA) are roughly $100, and their 4 Channel cards (RAID-5-able) are $250 and $350. Its well worth the money.
I've not used the LSI Megaraid SATA controller yet (I plan to); I've had good luck with their cards for SCSI RAID, and they carry a slightly cheaper price tag than the 3Ware cards.
No, I do not work for 3Ware - I think suggesting software RAID to anyone is a bad idea. I've seen people loose data with promise controllers, which are nothing more than glorified IDE controllers with software doing the RAID functionality. Software RAID is BAD.
-- If we don't stand up for our rights, now, there will be no right to stand up for them later.
I have a similar-ish setup that is now nearly 5 years old and only just now am I considering upgrading. I have 4 9GB 10K RPM SCSI drives using software RAID 5 for my / and swap. I have a 250GB 7200 RPM IDE drive for /archive (my equivalent to your /scratch). I got a "high end" IDE drive for the archive simply because of the better warranty, the improved performance over the cheaper model was just a bonus. So anyway, the throughput on my array matches the throughput of my modern "fast" IDE drive, and has about 1/3 the seek time. When I LAN with friends, I'm always the first with the level loaded, even though I have the "slowest" system of the group in terms of CPU, RAM, graphics card, etc.
It cost quite a bit when I put it together, but it's been well worth it, seeing as how it has taken 5 years for the desktop-level stuff to catch it performance-wise. When I do upgrade, I will probably go with an escalade driving 74GB Raptors, since the have command queueing they are beating all but the most high-end SCSI drives out there now.
I've tried both LVM and RAID5, and my conclusion was that LVM sucked performancewise, couldn't fill a 100Mbit pipe (which one drive without LVM does easily). And since noone could explain why this was (even talked to a guy with hardware scsi raid running LVM and he barely got 18MB/s :-/ ) I ended up running RAID5 with 5 drives. Each drive is running as a master on its own IDE channel. The additional IDE channels are provided with 2 Promise FastTrack/133 (or whatever they are called).
The performance on this system is outstanding, writing is done at a sustained 50-60MB/s (yes, megabytes) and reading maxes out the PCI bus completely (tops out at about 80-100MB/s depending on other activity on the PCI bus)
The system is powered by a 2.4Ghz Celeron with 512MB memory.
The only drawback is that it will be a pain to add an additional drive to the system, but thats not really a big issue for me anyway.
Btw, the filesystem on this raidset is Ext3. I've had a diskfailure (old drive that should have been left to its own) since I got it up and running but as long as no more than one drive fails atonce, all is well. Just replace it with a new one, add it to the set and one hour later (or thereabout) all data has been restored to it and the raidset is running at full performance again.
A tip for the hardware that will be running the fileserver. Make sure to cool your drives, this is of outmost importance. No, you don't need screaming 7000rpm fans (I use three 12dB Papst) just make sure that outside air is pulled over the harddrive and expelled in the back of the case. Avoid cases with ventilationholes on the sides. Thermaltake makes (made?) a great case which had airintakes on the front and 6 internal 3.5" bays right behind the intakes (which is the one I use).
Also, you should get a good powersupply. I had some really odd problems before I upgraded to from 300W to 450W.
Good luck
I haven't read through all 800 posts, so this kind of info has probably already been posted, but I found it very link-worthy...
WikiPedia: Redundant array of independent disks - great detailed article summarising RAID with explanation of all the levels.
Anyone can even jump in and improve the article.
Start your calculation with the number of Gb of space you "need". Say that this is 160Gb. Then you have the option of:
L0: no raid: 1x 160Gb or 2x80
L1: raid1: 2x 160Gb.
L1: raid5 (3 disks): 3x80Gb.
L1: raid5 (4 disks): 4x60Gb
L1: raid5 (5 disks): 5x40Gb
and you could even go for a hot spare:
L2: raid5HS (4 disks): 4x80Gb.
L2: raid5HS (5 disks): 5x60Gb
L2: raid5HS (6 disks): 6x40Gb
Now, from 4 disks you probably need an extra IDE controller in your computer. Factor that into your costs, and you can chose the protection level (L0 means you can tolerate 0 lost disks. L2 means 2 disks, but in fact not at exactly the same time, but you can tolerate two bad disks).
Then simply chose the cheapest solution.
I'd probably go for 3x80 myself.
I'm not sure why you were modded down, apart from your MTBF numbers for IDE being a bit odd. Still, that is another good point. Here's a page that really covers the SCSI vs IDE debate well:
That pages does a good job of explaining why SCSI is "better", in terms of MTBF, seek time, etc. However, I can't help but feel that those numbers are kind of missing the original poster's requirements, which were for a *personal* fileserver. The MTBF for IDE may be lower, but in a RAID-1 or higher setup, this isn't really an issue. Realistically, multiple drives aren't going to fail *at once*.
For a home fileserver, IDE is more than fast enough, unless you're dealing with many gigabytes of data (video editing?). There's also the noise/heat/power issue of having multiple 10,000 or 15,000RPM drives spinning around the clock. A couple of 7,200RPM IDE drives in RAID-1 are quiet enough to run in my bedroom while I sleep; can the same be said for fast SCSI drives?
Don't get me wrong: SCSI is wonderful when screaming-fast performance and/or lots of concurrent users are a requirement, and things like price, noise, and power aren't a factor. Nobody disputes that. But for small office/home use, I don't always think it's the best choice.
OtakuBooty.com: Smart, funny, sexy nerds.