I have a RAID controller with 4 1TB disks and first I put them all in a RAID 5 array, partitioned 1TB for OS and 2TB for data.

Then I noticed that the raid array was never idle. It was constantly writing 24/7 and I figured it must be the swap file.

It feels like it would wear out all drives in the array faster and slow down other read/write operations.

Now I'm reinstalling the server and need some advice. Should I exclude 1 disk from the array (put it as RAID 0) for the OS and use the other 3 disks in RAID 5 for data?

In this configuration it feels like the swapping will only wear out one drive instead of all 4.

EDIT: It is an HPE ProLiant DL60 with 8MB RAM and an onboard raid controller capable of RAID 0, RAID 1+0 and RAID 5.

The server will mainly be used as a file server and an SQL Server. It will also run some smaller services such as Subversion Server.

EDIT2: Yes, I have googled and I didn't find any clear recommendations if an OS was better of on its own drive compared to being in the raid. RAID 5 is for performance not backup (and everyone knows that, right?!?). There is a backup to a single external USB drive twice a day.

  • How did you 'notice the array was never idle'? Why do you think it will 'wear out' the disks? Seems your starting assumptions are all very odd. Why would you want to put the OS on a single disk with no redundancy? Why use RAID 5 at all? "Questions seeking installation, configuration or diagnostic help must include the desired end state, the specific problem or error, sufficient information about the configuration and environment to reproduce it, and attempted solutions." – BlueCompute Oct 19 '16 at 11:31
  • @BlueCompute These HP HD bays indicates if a disk is a member in an Array, if there is activity on them, if it is safe to remove them and if they are being rebuilt. So Yes I can see that they are a member of a raid array and there are constantly activity on them. They are all mechanical drives and if they are constantly moving they wear out faster. I suspect it is the swap file causing this so by putting the OS on its own drive, only one drive will go crazy 24/7 instead of 4. OS can also easily be reinstalled while user data can't. You have many questions but few answers... – Max Kielland Oct 19 '16 at 15:25

You shouldn't use RAID5, period.

  1. It is slow, especially on writes, since parity data has to be calculated and written to multiple disks.
  2. Is is not considered safe anymore since resilvering with disks 1 TB and larger takes very long and you have no redundancy while it is happening.

Use a RAID10, instead.

  1. Better performance.
  2. Faster resilvering.
  3. After failure of disk, still have 66% chance that a second failure will not destroy the array.

Also, consider turning off swap, depending on the size of memory. These days, a server shouldn't swap in most cases. It might make sense if it is a VM and the memory is overcommitted, in that case the VM host can tell the guest to put some stuff into swap to free up ram. Anyway, swapping should not cause IO bottlenecks. Since you haven't specified what kind of application the server will run, specific recommendations cannot be made.


Should I exclude 1 disk from the array (put it as RAID 0) for the OS and use the other 3 disks in RAID 5 for data?

Not if you care about redundancy.

Leave it as part of a RAID array. Ideally, if you don't need the space, use RAID10. If you really need the space, you can use RAID5, just be aware of the problems with RAID5, especially with SATA disks, along with long rebuild times and higher chances of double disk failures.

I'd be more worried about wearing out a single drive holding my OS failing so I would be forced to rebuild the system from a backup than wearing out a drive in a RAID array that I could replace and let the array rebuild.

Finally - if you just setup the RAID5 array, the array controller will need to initialize all the disks in the array. So there will be an long initial run of drive access as the array does the initial initialization of the disks. Depending on the performance of the controller and other data going on, a background initialization may take quite a bit of time.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.