利用RAID保護數據

按t去修改分區。 鍵入 fd設置爲 Linux的RAID 類型

Command (m for help): t

Partition number (1-9): 更改主分區1的類型

Hex code (type L to list codes): fd

Changed system type of partition 1 to fd (Linux raid autodetect)

安裝軟RAID

[root@moban ~]#yum install mdadm –y

查看當前系統中是否存在raid

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

配置RAID5

mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1  /dev/sdb{5..8}

-C  Create 創建

-a  是否啓用/dev/md0

-l  創建raid

-n  指定幾塊硬盤

-x  指定幾個備份磁盤

{5..8}指定5,6,7,8劃分到raid5

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

Personalities : [raid6] [raid5] [raid4]

md0 : active raid5 sdb7[4] sdb8[3](S) sdb6[1] sdb5[0]

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

     

unused devices: <none>

sdb8[3](S)   (S)表示是備份磁盤

每個chunk512k

查看具體的詳情信息

 [root@moban ~]# mdadm -D /dev/md0

/dev/md0:

        Version : 1.2

  Creation Time : Thu Aug  4 18:13:04 2016

     Raid Level : raid5

     Array Size : 2117632 (2.02 GiB 2.17 GB)

  Used Dev Size : 1058816 (1034.00 MiB 1084.23 MB)

   Raid Devices : 3

  Total Devices : 4

    Persistence : Superblock is persistent

 

    Update Time : Thu Aug  4 18:15:05 2016

          State : clean

 Active Devices : 3  正在使用的有3個磁盤

Working Devices : 4  一共有4塊磁盤

 Failed Devices : 0

  Spare Devices : 1  做備份的有1塊磁盤

 

         Layout : left-symmetric  算法

     Chunk Size : 512K

 

           Name : moban:0  (local to host moban)

           UUID : ec217443:7469c351:36e435ba:d24d02d6

         Events : 18

 

    Number   Major   Minor   RaidDevice State

       0       8       21        0      active sync   /dev/sdb5

       1       8       22        1      active sync   /dev/sdb6

       4       8       23        2      active sync   /dev/sdb7

 

       3       8       24        -      spare   /dev/sdb8  備份盤

格式化

[root@moban ~]# mkfs.ext4 /dev/md0

查看詳情信息

[root@moban ~]# tune2fs -l /dev/md0

Block size:               4096      block數量

RAID stride:              128       raid5每一次給磁盤寫block數量

RAID stripe width:         256       一個輪迴的block總數

由於沒有配置DAID位圖,當磁盤插拔後。就會從頭更新數據。效率低

注意:當關閉md0後,想要重新啓動使用mdadm –As命令

[root@moban ~]# mdadm -S /dev/md0

mdadm: error opening /dev/md0: No such file or directory

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

Personalities : [raid6] [raid5] [raid4]

unused devices: <none>

[root@moban ~]# mdadm -As

mdadm: /dev/md/0 has been started with 3 drives and 1 spare.

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

Personalities : [raid6] [raid5] [raid4]

md0 : active raid5 sdb5[0] sdb8[3](S) sdb7[4] sdb6[1]

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

     

unused devices: <none>

重命名RAID

[root@moban ~]# mdadm -S /dev/md0    關閉md0

mdadm: stopped /dev/md0

[root@moban ~]# mdadm -A /dev/md1 --uuid

 [root@moban ~]# mdadm –Es    查看

ARRAY /dev/md/0  metadata=1.2 UUID=ec217443:7469c351:36e435ba:d24d02d6 name=moban:0

   spares=1

 [root@moban ~]# mdadm -A /dev/md1 --uuid=ec217443:7469c351:36e435ba:d24d02d6 /dev/sdb{5..8}    重組並重命名爲md1   uuid必須一致

mdadm: /dev/sdb5 is busy - skipping

mdadm: /dev/sdb6 is busy - skipping

mdadm: /dev/sdb7 is busy - skipping

mdadm: /dev/sdb8 is busy - skipping

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

Personalities : [raid6] [raid5] [raid4]

md1 : active raid5 sdb5[0] sdb8[3](S) sdb7[4] sdb6[1]

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

     

unused devices: <none>

假設把一臺舊服務器的硬盤換到新服務器上,但是新的服務器上已經有了md0,那麼我們要做的重點是重命名RAID,把就服務器上的md0重命名爲md1

如何刪除RAID

[root@moban ~]# mdadm -S /dev/md1    關閉md1

mdadm: stopped /dev/md1

[root@moban ~]# mdadm --zero-superblock /dev/sdb{5..8}    清除磁盤的superblock

配置RAID位圖

[root@moban ~]# mdadm -G /dev/md0 --bitmap=internal    開啓位圖

[root@moban ~]#mdadm -D /dev/md0

/dev/md0:

        Version : 1.2

  Creation Time : Thu Aug  4 20:32:50 2016

     Raid Level : raid5

     Array Size : 2117632 (2.02 GiB 2.17 GB)

  Used Dev Size : 1058816 (1034.00 MiB 1084.23 MB)

   Raid Devices : 3

  Total Devices : 3

    Persistence : Superblock is persistent

 

  Intent Bitmap : Internal

 [root@moban ~]# mdadm -G /dev/md0 --bitmap=none    關閉位圖

配置RAID磁盤漂移

現在有兩個RAID5md0md1,當md0上的任意一個磁盤損壞時,md1上的備份盤可以讓md0使用。

[root@moban ~]# mdadm -C /dev/md1 -a yes -l 5 -n 3 -x 1 /dev/sdb{5..8}

mdadm: Defaulting to version 1.2 metadata

mdadm: array /dev/md1 started.

[root@moban ~]# mdadm -D /dev/md0|tail -6

         Events : 30

 

    Number   Major   Minor   RaidDevice State

       0       8       17        0      active sync   /dev/sdb1

       1       8       18        1      active sync   /dev/sdb2

       3       8       19        2      active sync   /dev/sdb3

[root@moban ~]# mdadm -D /dev/md1|tail -6

    Number   Major   Minor   RaidDevice State

       0       8       21        0      active sync   /dev/sdb5

       1       8       22        1      active sync   /dev/sdb6

       4       8       23        2      spare rebuilding   /dev/sdb7

 

       3       8       24        -      spare   /dev/sdb8

RAID磁盤的漂移

配置磁盤族

[root@moban ~]# mdadm –Ds

ARRAY /dev/md0 metadata=1.2 name=moban:0 UUID=73a49dd6:6c4e5778:984f3302:037a04ac                                   

ARRAY/dev/md1metadata=1.2spares=1name=moban:1UUID=9bf61bc7:61d59781:969858a1:b10d22e4

[root@moban ~]# mdadm –Ds >/etc/mdadm.conf

[root@moban ~]#vi /etc/mdadm.conf

ARRAY /dev/md0 metadata=1.2 name=moban:0 UUID=73a49dd6:6c4e5778:984f3302:037a04ac spare-group=xx

ARRAY/dev/md1metadata=1.2spares=1name=moban:1UUID=9bf1bc7:61d59781:969858a1:b10d22e4 spare-group=xx                                            加入到同一個磁盤族

MAILADDR [email protected]   發送給誰          

MAILFROM [email protected]          發送者是誰

假設sdb3損壞,md1上的sdb8備份盤會自動滑到md0上,所以md1上就沒有備份磁盤了。

[root@moban ~]# mdadm /dev/md0 -f /dev/sdb3 -r /dev/sdb3

mdadm: set /dev/sdb3 faulty in /dev/md0

mdadm: hot removed /dev/sdb3 from /dev/md0

[root@moban ~]# mdadm -D /dev/md0|tail -4             

    Number   Major   Minor   RaidDevice State

       0       8       17        0      active sync   /dev/sdb1

       1       8       18        1      active sync   /dev/sdb2

       3       8       24        2      spare rebuilding   /dev/sdb8

[root@moban ~]# mdadm -D /dev/md1|tail -4              

    Number   Major   Minor   RaidDevice State

       0       8       21        0      active sync   /dev/sdb5

       1       8       22        1      active sync   /dev/sdb6

       4       8       23        2      active sync   /dev/sdb7

當恢復md0sdb3sdb3就成了md0的備份盤,假設md1的某個磁盤壞了,sdb3會自動滑到md1上。

[root@moban ~]# mdadm /dev/md0 -a /dev/sdb3   恢復sdb3

[root@moban ~]# mdadm /dev/md0 -a /dev/sdb3

mdadm: added /dev/sdb3

[root@moban ~]# mdadm -D /dev/md0|tail -6 

    Number   Major   Minor   RaidDevice State

       0       8       17        0      active sync   /dev/sdb1

       1       8       18        1      active sync   /dev/sdb2

       3       8       24        2      active sync   /dev/sdb8

 

       4       8       19        -      spare   /dev/sdb3

[root@moban ~]# mdadm -D /dev/md1|tail -4               

    Number   Major   Minor   RaidDevice State

       0       8       21        0      active sync   /dev/sdb5

       1       8       22        1      active sync   /dev/sdb6

       4       8       23        2      active sync   /dev/sdb7

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章