Monday, July 28, 2014

CentOS 7 RAID5

Too tired with SmartOS (probably because of the disk failure, then decided to go with CentOS 7). Do love ZFS, will come back later.

Got good points from

dd if=/dev/zero of=/dev/sda5 bs=1M count=1024
dd if=/dev/zero of=/dev/sdb5 bs=1M count=1024
dd if=/dev/zero of=/dev/sdc5 bs=1M count=1024

http://ubuntuforums.org/showthread.php?t=1681924

Tried with 3 disks only (1TB each disk), took about 4 hours for rebuilding ....


Mainly follow instruction from https://www.grumpyland.com/blog/183/installing-software-raid-on-centos-567-via-ssh/

Considering number of dedicated server rentals that just gives JBOD, setting up your own software raid is quite handy. This tutorial goes over the very basic of how it’s done.
All of this should be done under root.
Let’s say you have 3 disks: sda, sdb & sdc. The OS is mounted on the sda, so we’ll leave that alone and make a raid 1 with sdb or sdc.

Use mdadm to create your software raid

First, make sure mdadm is installed.
yum install mdadm
Assuming that the disks sdb & sdc are unmounted & unused, we can create a raid with the two of them by telling mdadm to create the partition.
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
If you have more disks, adjust the raid devices parameter and more devices listed at the end. Other levels of RAID can be setup as well like 0, 10, etc just by changing the –level parameter. So, if you were making a raid0 of 3 disks, you could call
mdadm --create /dev/md0 --level=0 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd
for example.
You can confirm the setup by looking at mdstat.
cat /proc/mdstat
Now we add the device information to a configuration file for mdadm so that they’re always available.
echo "DEVICE /dev/sdb /dev/sdc" > /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf
mdadm -As /dev/md0

mdmonitor for your RAID

Now that we have a RAID array, they need to be monitored. This can be done through the mdmonitor service.
service mdmonitor start
chkconfig mdmonitor on
If you’re on Centos 7, you’ll need to use the new systemctl instead.
systemctl start mdmonitor
systemctl enable mdmonitor

Making the file system & mounting it

Next, we’ll create the file system that uses this raid array and call it /dev/md0 with the file system ext4
mkfs -t ext4 /dev/md0
You can now mount md0 to any folder you want. Like…
mount /dev/md0 /home/grumpyland
The new mount point should now appear when you call df
df
We want the mount to be always there when we start up the server, so, we need to add it to fstab too using your favorite editor. I always found nano to be the most newbie friendly with the instruction on the bottom.
nano /etc/fstab
There, you’ll want to add a line about the md0 we just made.
/dev/md0                /home/grumpyland           ext4    defaults        0 0
That’s it! I hope this simplified tutorial was helpful. For further information on mdadm, check out its man pages.

Also took a look on http://vlinux-freak.blogspot.com/2011/01/how-to-implement-and-configure-raid-5.html 


Some more info about mdadm in Redhat site https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Deployment_Guide/s2-raid-manage-extending.html 




No comments:

Post a Comment