How to over-provision an Intel SSD RAID Array via the Dell H700 PERC RAID Controller
I would like to set up a RAID10 array of 6 Intel SSD 320 SSDs, but over-provision them to enhance their performance and duration as per this PDF:
http://cache-www.intel.com/cd/00/00/45/95/459555_459555.pdf
Is this as simple as creating the array with lower capacity than the drive total? I can't seem to find options in the H700 BIOS config utility that pertain to physical drive partitions or options.
Ultimately the question is: If I create a 600gb RAID 10 across 6 300gb drives, will the remaining 300gb be evenly distributed across the drives, and will this space be available to the 320 controller for use as spare area?
Solution 1:
You can use the Linux hdparm utility to set your provisioning parameters in this fashion:
root@ubuntu-10-10:~# hdparm -N /dev/sdb
/dev/sdb:
max sectors = 312581808/312581808, HPA is disabled
root@ubuntu-10-10:~# hdparm -Np281323627 /dev/sdb
/dev/sdb:
setting max visible sectors to 281323627 (permanent)
Use of -Nnnnnn is VERY DANGEROUS.
You have requested reducing the apparent size of the drive.
This is a BAD idea, and can easily destroy all of the drive's contents.
Please supply the --yes-i-know-what-i-am-doing flag if you really want this.
Program aborted.
root@ubuntu-10-10:~# hdparm -Np281323627 --yes-i-know-what-i-am-doing /dev/sdb
/dev/sdb:
setting max visible sectors to 281323627 (permanent)
max sectors = 281323627/312581808, HPA is enabled
root@ubuntu-10-10:~#
To give credit where it's due, I've got this info from a German server builder's website wiki.
But according to the Intel docs, it would be enough simply to keep the sectors in a "clean" state (in which they would be after a secure erase) by never writing to them. If you define a container/volume which only ever uses 300 GB of each of your drives, this is exactly what you are doing for half of your drives' sectors.