Linux Raid | Mdadm linux software Raid

Today we are going to discuss about creation of RAID 5 soft RAID and how to start and stop the RAID through #mdadm linux raid or linux software raid

 

Step 1 : - How To Create RAID 5 through #mdadm

For creating the RAID 5, three disks are required

[root@localhost ~]# mdadm –create /dev/md5 –level=5 –raid-devices=3 /dev/sde1 /dev/sdf1 /dev/sdg1

mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 204288K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.

Step 2: - check RAID Status Linux Command

Method 1: – Linux RAID status

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

md5 : active raid5 sdg1[4] sde1[1] sdf1[3]

      2091008 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]

unused devices: unused devices:

Method2: – How to check RAID level in Linux

[root@localhost ~]# mdadm –detail /dev/md5

/dev/md5:

           Version : 1.2

     Creation Time : Sun Sep 19 22:35:38 2021

        Raid Level : raid5

        Array Size : 2091008 (2042.00 MiB 2141.19 MB)

     Used Dev Size : 1045504 (1021.00 MiB 1070.60 MB)

      Raid Devices : 3

     Total Devices : 3

       Persistence : Superblock is persistent

       Update Time : Mon Sep 20 00:25:40 2021

             State : clean

    Active Devices : 3

   Working Devices : 3

    Failed Devices : 0

     Spare Devices : 0

            Layout : left-symmetric

        Chunk Size : 512K

Consistency Policy : resync

              Name : localhost.localdomain:5  (local to host localhost.localdomain)

              UUID : 58994e5e:7b0228ad:4f8fd9b4:1f515d2e

            Events : 50

    Number   Major   Minor   RaidDevice State

       4       8       97        0      active sync   /dev/sdg1

       1       8       65        1      active sync   /dev/sde1

       3       8       81        2      active sync   /dev/sdf1

Step 3 : - Creating file system on RAID 5 device /dev/md5.

[root@localhost ~]# mkfs.xfs -f /dev/md5

meta-data=/dev/md5               isize=512    agcount=8, agsize=65408 blks

         =                       sectsz=512   attr=2, projid32bit=1

         =                       crc=1        finobt=0, sparse=0

data     =                       bsize=4096   blocks=522752, imaxpct=25

         =                       sunit=128    swidth=256 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=1

log      =internal log           bsize=4096   blocks=2560, version=2

         =                       sectsz=512   sunit=8 blks, lazy-count=1

realtime =none                   extsz=4096   blocks=0, rtextents=0

Step 4 : - make the changes persistent across reboot

To make the changes persistent across reboot need to save configuration details in configuration file.

[root@localhost ~]# mdadm –detail -scan > /etc/mdadm.conf

Step 5: - Stop The RAID 5

[root@localhost ~]# mdadm –stop /dev/md5
mdadm: stopped /dev/md5

[root@localhost ~]# mdadm –detail /dev/md5
mdadm: cannot open /dev/md5: No such file or directory

Step 6: - Start the RAID 5

To start if simple run the below command 

[root@localhost ~]# mdadm –assemble /dev/md5 /dev/sde1 /dev/sdf1 /dev/sdg1   

mdadm: /dev/md5 has been started with 3 drives.

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

md5 : active raid5 sdg1[4] sde1[1] sdf1[3]

      2091008 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]

unused devices: unused devices:

How To Remove RAID in Linux

  1. Unmount the filesystem first and run below commands
  2. [root@localhost ~]# mdadm –stop /dev/md5
  3. [root@localhost ~]# mdadm –remove /dev/md5

Remove Faulty Disk

I just make a disk faulty for demo

[root@localhost ~]# mdadm /dev/md5 -f /dev/sdg1
mdadm: set /dev/sdg1 faulty in /dev/md5

Output: –

[root@localhost ~]# mdadm –detail /dev/md5
/dev/md5:
Version : 1.2
Creation Time : Sun Sep 19 22:35:38 2021
Raid Level : raid5
Array Size : 2091008 (2042.00 MiB 2141.19 MB)
Used Dev Size : 1045504 (1021.00 MiB 1070.60 MB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent

Update Time : Mon Sep 20 01:33:27 2021
State : clean, degraded
Active Devices : 2
Working Devices : 2
Failed Devices : 1
Spare Devices : 0

Layout : left-symmetric
Chunk Size : 512K

Consistency Policy : resync

Name : localhost.localdomain:5 (local to host localhost.localdomain)
UUID : 58994e5e:7b0228ad:4f8fd9b4:1f515d2e
Events : 52

Number Major Minor RaidDevice State
– 0 0 0 removed
1 8 65 1 active sync /dev/sde1
3 8 81 2 active sync /dev/sdf1

4 8 97 – faulty /dev/sdg1

Remove the Disk

[root@localhost ~]# mdadm /dev/md5 -r /dev/sdg1

mdadm: hot removed /dev/sdg1 from /dev/md5

Adding the Disk

[root@localhost ~]# mdadm /dev/md5 -a /dev/sdg1
mdadm: added /dev/sdg1

For more detailed information you can visit linux raid wiki site.