CentOS 7
Ads

Configure RAID 1
2015/10/23
 
Configure RAID 1 to add 2 new HDDs on a server.
[1] This example is based on the environment below. The new HDD sdb and sdc are newly added on it and configure RAID 1.
[root@dlp ~]#
df -h

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  196G  1.2G  195G   1% /
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G     0  1.9G   0% /dev/shm
tmpfs                    1.9G  8.5M  1.9G   1% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                497M  222M  276M  45% /boot
[2] Create a partition on new HDD and set RAID flag.
[root@dlp ~]#
parted --script /dev/sdb "mklabel gpt"

[root@dlp ~]#
parted --script /dev/sdc "mklabel gpt"

[root@dlp ~]#
parted --script /dev/sdb "mkpart primary 0% 100%"

[root@dlp ~]#
parted --script /dev/sdc "mkpart primary 0% 100%"

[root@dlp ~]#
parted --script /dev/sdb "set 1 raid on"

[root@dlp ~]#
parted --script /dev/sdc "set 1 raid on"
[3] Configure RAID 1.
[root@dlp ~]#
yum -y install mdadm
[root@dlp ~]#
mdadm --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1

mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

# show status

[root@dlp ~]#
cat /proc/mdstat

Personalities : [raid1]
md0 : active raid1 sdc1[1] sdb1[0]
      83818496 blocks super 1.2 [2/2] [UU]
      [======>..............]  resync = 31.0% (26044416/83818496) finish=4.7min speed=201190K/sec

unused devices: <none>

# after few hours later, status turns like follows if syncing finished

[root@dlp ~]#
cat /proc/mdstat

Personalities : [raid1]
md0 : active raid1 sdc1[1] sdb1[0]
      83818496 blocks super 1.2 [2/2] [UU]

unused devices: <none>

[root@dlp ~]#
vi /etc/sysconfig/raid-check
# line 57: add RAID devices which you'd like to check by Cron

CHECK_DEVS="
md0
"
[4] For example, if a member HDD in RAID array would be failure, re-configure RAID 1 like follows.
# the status is like follows in failure

[root@dlp ~]#
cat /proc/mdstat

Personalities : [raid1]
md0 : active (auto-read-only) raid1 sdb1[0]
      83818496 blocks super 1.2 [2/1] [U_]

unused devices: <none>

# after swapping new disk, re-configure like follows

[root@dlp ~]#
mdadm --manage /dev/md0 --add /dev/sdc1

mdadm: added /dev/sdc1
[root@dlp ~]#
cat /proc/mdstat

Personalities : [raid1]
md0 : active raid1 sdc1[1] sdb1[0]
      83818496 blocks super 1.2 [2/2] [UU]
      [======>..............]  resync = 31.0% (26044416/83818496) finish=4.7min speed=201190K/sec

unused devices: <none>
 
Tweet