RAID Configuration on new HP Pro Liant DL380 G8 Server

We are purchasing a new HP Pro Liant DL380 G8 server.  Looking for recommendations on best drive/RAID configuration.  Will have W2K8 R2 or W2K12 R2 server installed with two-processors, 32GB RAM, and the Smart Array P420i with 1GB FBWC controller.  The server can hold 8-SFF drives. Looking at HP Enterprise SAS 10K drives since SSD drives are still a little too pricey for this project.  This server will be the second server on the network and will be the 2nd DC, DHCP, DNS server for redundancy.  We will also run a Hyper-V virtual W2K8 R2 server for a third-party software application that is not supported on a DC.

Considering the following:
2x300GB 10K in RAID 1 for OS
6x600GB 10K in RAID 10 for user files and Hyper-V role running one possibly two virtual servers with third-party software application.
 OR
8x600GB 10K in RAID 1 with partition for OS, 1 partition for user files and Hyper V virtual servers (or three partitions 1-OS, 1-User files, 1-Hyper V server).

Just looking for input from any previous experience, good/bad, any suggestions etc.

Thanks.
valcoAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

valcoAuthor Commented:
Correction:
8x600GB 10K in RAID 10 with partition for OS, 1 partition for user files and Hyper V virtual servers (or three partitions 1-OS, 1-User files, 1-Hyper V server).
0
DavidPresidentCommented:
First choice ..
2x300GB 10K in RAID 1 for OS
6x600GB 10K in RAID 10 for user files and Hyper-V role running one possibly two virtual servers with third-party software application.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
SteveCommented:
I agree with the first choice as well.
Keep the OS on it's own drives in RAID 1
Less slow down in case of drive failure, easier recover.

With the data you need a lot more storage space so,
 RAID 10 takes less of a space hit than RAID 1
0
Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

DavidPresidentCommented:
You might also want to consider placing the O/S partitions for the VMs on the 2 RAID1 OS disks as well

But it depends on your I/O.  Nice thing  about a VM, is you can move the location rather easily after everything is built and you know specifics of performance profiles.
0
valcoAuthor Commented:
Thanks.  I am going to keep this open until Monday in case anyone else has any other thoughts/opinions.  I have been leaning towards option #1 all along but it is always good getting confirmation.
0
Billy RothTech Team VolunteerCommented:
The 8 drives in raid 10 would be a better option in nearly any case.  The previous poster that said raid 10 has less of a storage hit is incorrect.  Raid 10 is mirrored and striped which means it has the exact same 50% capacity as raid 1, but offers much better performance.  Also if you lose 1 drive in a raid 10 8 disk configuration you will still have better performance than if you have a raid 1 and a raid 10 separately and lost a drive in either the raid 1 or raid 10 separate arrays proposed.  In most cases depending on exactly which disks are lost, you can lose up to 4 disks in an 8 disk raid 10, where you can only lose a max of 1 in a raid 1 2 disk, and a max of 3 in a raid 10 6 disk.

Raid 10 offers number of drives as the read performance multiplier (8x read) and 1/2 the number of drives for write performance multiplier (4x write).  The more drives that you have in raid 10 the better your performance, and the more redundancy you have (in best case failure scenario).  You are much better increasing your overall performance and redundancy in this way, and utilizing all of your 1GB FBWC controller cache for one array.  

This wolfram alpha query should help you understand better.
https://www.wolframalpha.com/input/?i=raid+10&a=*FS-_**RAIDArray.totalsize-.*RAIDArray.size--&f2=8&f=RAIDArray.disks_8&f3=600+GB&f=RAIDArray.size_600+GB&a=*FVarOpt.1-_**-.***RAIDArray.spareDisks---.*--


What is your other application that you are running in a vm?  That is possibly a critical piece of information.
0
Neil RussellTechnical Development LeadCommented:
Just my two penny worth...
Agree again that option 1 is the way to go but couldn't resits when I see something like....

"The more drives that you have in raid 10 the better your performance, and the more redundancy you have (in best case failure scenario)."

Best case failure scenario? That to me is the same salesman speak that tells me that my mobile phone battery will last for ten weeks between charging, IF I keep it powered off, in the box.

You can find failure statistics about Disk MTBF and RAID Configs for best safeguard all over the net but at the end of the day, when one disk fails then not only is another disk more statistically likely to fail but also the rebuild will stress other disks.

As I am sure you will be aware, Computers don't work on "Best case failure scenarios" they work on the "If I can spoil your day, I will" principle.
0
DavidPresidentCommented:
Respectfully, (Billy Roth) this is not true in the real world, with real data.

Any arbitrary block of data is going to be on two and only two different drives in a RAID1 or a RAID10.   There is no performance advantage for reading any specific amount of data. The same two disks will service the writes. The same pair of disks will service the read in load balancing.

Also in a VMware environment, you will chew up a lot of cache, all I/Os are pretty much random, so for any I/O request in a n-drive RAID10 or 2-DRIVE RAID1 ,  you will still fill up precious read cache. But you will be reading 64KB at a time in the RAID1, but in the RAID10 you will do larger I/Os and  chew up more cache which you will likely never need.

As such cache is much more efficient on RAID1.  The worst possible thing you can do to a disk is read from it instead of reading from cache.  Your disks will do less work with RAID1 / RAID10 vs a single RAID10 for everything.

There are a bunch more, but the takeaway here is that a RAID10 is only going to be "faster" when you are running large I/O sequential benchmarks  and data is evenly distributed.  It won't be 4x faster unless the same app distributes the data among all the RAID1 chunks.

 Degraded performance of any particular I/O will be the same.  The data you need will only be on ONE surviving disk no matter what.

 Operating system data files will rarely be distributed among more than two disks in any RAID set.  So chances of getting any performance benefit are near zero.  Conversely, getting performance hits, like holding up everything when swapping, or writing 512KB worth of data at a time when all you need is a 4Kb file will negatively impact the RAID10.
0
Billy RothTech Team VolunteerCommented:
Statistically the chances of failure in a large raid 10 are lower, just because that one scary scenario pokes your IT superstition button doesn't mean it should be avoided.  That is why we say raid is not backup, you should still have a proper backup.  As far as performance arguments in real world, I think it may be debatable in some scenarios, but not many.

http://www.smbitjournal.com/2012/11/one-big-raid-10-a-new-standard-in-server-storage/

Thats why people call it OBR10, because using "one big raid" is frequently the way to go.

One thing I have said before and I strongly believe is that raid 10 is like a perfect square, you gain the maximum possible area (benefit) in all directions.  If you want to increase your benefit in a particular direction with another configuration (performance/redundancy...) you have created a rectangle that suits your needs, but does not have as much total area (total benefit) as a square.

Another quote I really like is from the article linked above.
"When designing storage for a new server, start with OBR10 and only move away from it when it specifically does not meet your technology needs.  You should never have to justify using OBR10, only justify not using it."
0
DavidPresidentCommented:
Failure rates are exactly the same. Block #x is on 2 disks in a RAID1, it is on 2 disks in a RAID10.

Lose a single disk in either the RAID1 or RAID10, and performance impact is the same.  Risk of data loss is the same.   Data Block #x is on only 2 disks, regardless of whether RAID1 or RAID10.   Consider if you have a 2disk RAID1, and lose the 1st disk (assume nothing is degraded and no bad blocks to make it easy).    Lose 1 disk and you have 100% data loss.

Now consider a 8-disk RAID10.  Lose the 1st disk and if Block #x is not on that drive, block #y required by another host or another file or even part of the same file, and you still have lost your redundancy for that x.    

It may look as if it has greater reliability because there are 8 disks, but that is only because you are making the mistake of thinking they all have the same data on them.
0
Billy RothTech Team VolunteerCommented:
I was simply talking about survival probability in the case where we have 2 separate arrays vs a single array.  I suppose you could think about this a lot of ways including over both sets of arrays, but if we are talking only about os which is on the raid 1, and 1 disk fails you have 100% survival probability, if 2 disks fail you have 0% survival probability.  In an 8 disk array with your os, you have 100% survival with 1 disk failure, 86% with 2 failures, 57% with 3, and 23% with 4.  So speaking simply from a probability standpoint about the OS.  

If we are talking about data on the second array 8 disk vs 6 disk the numbers are a lot closer, 1 disk 100% either way, 2 disk, 86% vs 80%, 3 disk 57% vs 40%, 4 disk 23% vs 0%
0
DavidPresidentCommented:
No it simply does not work that way.   Your analogy is not valid because you are making the mistake of saying you have 4X the data.

Say all disks are 1GB.  On the RAID1 you have 1GB of protected data.  But on the RAID10 you have 4GB of protected data, total.  This is not a correct comparison.     You are creating extra availability by adding 4x the disk drives and quadrupling the total amount of data.  Say you had a total of 512 bytes used. Rest of the space is free.

So on RAID10, you have 6 disks that are empty. You have 2 disks that contain 512 bytes each of data.

How can your RAID10 give you 4 x the protection when  those other 6 disks have no data on them?  Lose any of those 6 disks and the numbers won't change. they are not part of the equation.  But lose the 2 drives that has the 512 bytes, and you have 100% data loss.

Yet you say the RAID10 gives more protection? See it can't.  Every byte is only on 2 disks, the same two disks.  

Or say you are using all 8 disks and data is distributed evenly.  Disk0 is mirrored to Disk1. Say you lose those 2 disks only.  You have 100% data loss with 2 disk failures, if they are the right (or wrong) 2 disks.
0
andyalderCommented:
Performance with all 8 disks in one RAID 10 set will probably be slightly better than with one RAID 1 plus the other 6 in RAID 10 because assuming the OS is idle you have 8 disks to satisfy the requests rather than 6. I'd still go for separate OS drives though because disaster recovery is much easier that way, if you have to restore the OS from backup the data is still intact and if you have to restore the data you have a working OS to start with. Another option that'll give a bit more IOPS would be to use the P420i with a pair of disks for the OS and get a 2nd P420 plus additional disk cage so you can have 8 disks in RAID 10 for the data, that'll cost a bit more of course.

The graphs in the Technology Brief are worth looking at, they show the performance benefit of having more disks in the RAID set rather well. Note that RAID 10 sequential read performance is lower than other RAID levels because the workload isn't split between the mirrored pairs very well but RAID 10 random read is good since read load balancing kicks in. Set the write cache as high as possible (still limited to 75% as far as I know) since read cache doesn't offer much speed improvement. The default strip size is generally the best to use since the controller calculates the value based on how much cache it has available when it creates the array.
0
gmbaxterCommented:
This is how I would do it:

2 x 300GB 10k SAS in Raid 1 for OS and AD, DNS, DHCP
2 x 600GB 10k SAS in Raid 1 for fileshares
4 x 600GB 10k SAS in Raid 10 for Hyper-V VMs

This will isolate the storage workload from your AD/DNS/DHCP, fileshares and VMs from conflicting with one another.

You also mention that this will be the second server - You could use DFS on the fileshare(s) to provide redundancy between the first and second server if this is required.
0
Billy RothTech Team VolunteerCommented:
Still seems to be a lot of superstition here about raid 10.  Striping is used very well by nearly all controllers, you will never see 6 empty disks.  You can actually configure "strip" size on most controllers, which is a small percentage of a stripe, and can usually be as low as 16KB.  that means that even a small file at least 4 times larger than the strip size will have strips evenly distributed over a stripe (across the 4 mirrors). Performance can be further isolated by using separate Volumes for your needs with different strip/stripe/block sizes.  

HP details about strips and stripes and raid 10 performance on their smart array controllers. http://h20195.www2.hp.com/V2/GetPDF.aspx%2F4AA4-7979ENW.pdf

If you want to simplify backup restoration do 2 things, use a separate volume for the os, and keep a hot spare.  The likelyhood of you losing 2 disks in the same mirror of an 8 disk array is still only 14%.
0
andyalderCommented:
That's near enough the same doc I posted but I used the one with graphs in, unfortunately it doesn't have any test results for various strip (stripe element) sizes. There was an old Dell doc where they tried every possible stripe element size on one of their controllers against MS Exchange which showed marked performance degradation when the stripe element size was less than Exchange's block size but only a very small drop in performance when it was larger.

You miss dlethe's point about the possibility of a second disk failure in RAID 10 being the same as it is with RAID 1. There is indeed only a 1 in 7 chance of the second disk failure being the mirror of the first failure but with 7 times as many disks remaining in the array it's 7 times as likely that another one does fail. It's actually more probable that the RAID 10 will break than the RAID 1 since not only is the chance of double disk failure on one pair the same for both but there's also a possibility of any of the other pairs failing.
0
Billy RothTech Team VolunteerCommented:
As far as the one with graphs, yes raid 5/6/0 do outperform 10 in reads because they all have more discrete strips of data, but we are not comparing 0 5 and 6 in this case because of obvious other weaknesses.

The risk of disk failure with modern 10k rpm enterprise sas drives is low as it is, they are not nearly as hot running as a 15k rpm and much more reliable than many other options.  More often then not I am re-purposing servers and drives at end of life before even a single disk fails, so we must assume that manufacturing on the disks is better than in the past.  Then we must also assume that failure is due to random and unlikely manufacturing flaws, distributed over more disks.

MS SQL and certain other applications with application level striping have lead to a lot of sensationalized misleading articles about raid 1 matching or slightly outperforming raid 10, that is merely for a single purpose box that is specifically designed for that.  A multipurpose box would never see those types of benefits.

I would like to know what his VM is being used for though, because if it has a serious need for random access, then there may be more to discuss.
0
andyalderCommented:
I don't think anyone would dispute that RAID 10 outperforms any other RAID level with the sort of random I/O that virtualization throws at it. DEC's HSG80 used to allow up to 6 disks in a mirrored "pair" and then striping on top of that to improve read speed, HP's latest versions allow for 3-way mirroring but I'm not sure whether it improves performance or just availability.
0
valcoAuthor Commented:
Wow, a lot of great information and a great debate about RAID.  Appreciate all the input.

The application I will be running on my VM is a SQL Express based application...either SQL 2008 R2 Express or SQL 2012 Express to be exact.  The biggest reason I need to run it on a VM is because it is not supported to run on a DC which this server will be.
0
andyalderCommented:
Why don't you virtualize both the DC and the SQL based application? If you do that with VMware rather than Hyper-V you can put the hypervisor on an SD card so all 8 disks are available for guests and their data.
0
Billy RothTech Team VolunteerCommented:
I would say if your sql instance is getting hit pretty hard you should upgrade your disks, but if it is simply sql express I expect you aren't hitting it very hard like an enterprise application would.
0
Neil RussellTechnical Development LeadCommented:
I knew this one would run on and on when i made my comment about RAID and statistics of MTBF etc earlier!

One further point, off the RAID issue.  You said...

"The biggest reason I need to run it on a VM is because it is not supported to run on a DC which this server will be."

a HYPER-V system should not have ANY OTHER ROLE except Hyper-V installed on the server. All other roles and features should exist in servers running as VM's on the Hyper-V server.
0
valcoAuthor Commented:
Thanks for all the info.
0
valcoAuthor Commented:
All valid points in my opinion and gave me much more to think about.  I have split the points up and appreciate all input.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Server Hardware

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.