Software RAID--磁盤陣列有硬件磁盤陣列和軟件磁盤陣列,硬件磁盤陣列使用磁盤陣列卡來達成效果,使多個磁盤組成一個大的磁盤,對操做系統而言,只能看見這個大的磁盤卻看不見那些小的磁盤,可是磁盤陣列卡造價昂貴,普通用戶在學習過程當中沒法實現硬件磁盤陣列;所以出現了用軟件來實現磁盤陣列的功能,操做系統將多個小的磁盤組成一個大的虛擬磁盤,同時操做系統能夠看得見每一個小的磁盤.bash
目錄
ide
Software RAID的建立(mdadm --create | -C)
學習
Software RAID仿真錯誤(mdadm --manage)測試
如何開機掛載RAIDspa
如何完全關閉RAID操作系統
共享熱備盤的實現orm
案例it
******************一 Software RAID的建立(mdadm --create|-C)********************
io
~]# mdadm -C -a yes /dev/md0 -n 2 -l 0 /dev/sdc /dev/sdd ~]# mdadm -C -a yes /dev/md1 -n 2 -l 1 /dev/sde /dev/sdf ~]# mdadm -C -a yes /dev/md1 -n 2 -l 1 -x 1 /dev/sd{e,f,g}
-C 建立raidclass
-a yes 自動建立後面接着的raid設備/dev/mdX
-n (--raid-devices=) num 陣列中磁盤的數量
-x (--spare-devices=) num 熱備盤的數量
-l (--level=) [015] 設定磁盤陣列的等級,一般爲raid 0,raid 1,raid 5
最後必須列出建立磁盤陣列用到的各個磁盤
~]# mdadm -D /dev/md0
-D (--detail) 後面接設定的磁盤陣列裝置名,查看raid信息
另外 cat /proc/mdstat 能夠查看所有的raid信息
******************二 Software RAID仿真錯誤(mdadm --manage)******************
mdadm (--manage) /dev/md1 -f /dev/sdf 將md1中的sdf設置爲壞的設備,--manage加不加無所謂,下同
mdadm (--manage) /dev/md1 -r /dev/sdf 將md1中的sdf從raid成員中刪除
mdadm (--manage) /dev/md1 -a /dev/sdf 向md1中增長新成員sdf
mdadm -G /dev/md1 -n 3 -a /dev/sdh 將raid1 md1的成員數量改成3,並加入新的成員(不是加爲熱備盤)
能夠發現-a的做用是:
會根據一開始建立RAID設定的raid-devices=num的值變化;
若是RAID中本來的num個磁盤都無缺,-a只是增長熱備盤
若是RAID中能使用的磁盤數不足num,-a會補充組成raid-device
****************************三 如何開機掛載RAID***************************
這和以前磁盤分區的掛載徹底同樣,把RAID當作一個磁盤處理就是了
1 修改raid的配置文件/etc/mdadm.conf
mdadm -D -s > /etc/mdadm.conf
2 修改配置文件/etc/fstab(相信你們很熟悉了)
/dev/md0 /mnt/raid ext4 defaults 1 2
將上面的一行加入該配置文件
3 掛載mount -a
重啓以後查看
****************************四 如何完全關閉RAID****************************
mdadm -S(--stop) /dev/md0 中止raid
mdadm -A /dev/md0 /dev/sdc /dev/sdd /dev/sde 開啓raid
mdadm -D -s
mdadm -D -s > /etc/mdadm.conf 將raid信息保存至該文件
mdadm -A -s 自動激活/etc/mdadm.conf中的全部raid設備
-------------------------------------------------------------------------------
完全關閉raid而且以後也不會再激活的方法:
mdadm -S /dev/mdX
將/etc/mdadm.conf中的內容去掉
mdadm --zero-superblock /dev/sdM(RAID device) 關鍵
****************************五 共享熱備盤的實現****************************
# 建立raid 1和raid 5,其中只有raid 5有熱備盤 ~]# mdadm -C --auto=yes /dev/md0 -n 2 -l 1 /dev/sd{c,d} ~]# mdadm -C --auto=yes /dev/md1 -n 3 -x 1 -l 5 /dev/sd{e..h}
實現/dev/md0 和/dev/md1 之間僅有的一個熱備盤共同使用
①mdadm -D -s > /etc/mdadm.conf
②在須要共享的多組raid信息最後分別都寫上spare-group=任意名
③而後再加一新行,頂頭寫MAILADDR .(必定要有空格)
④service mdmonitor start
⑤測試
查看以前的兩個RAID的狀態
# 損壞/dev/md0中的磁盤/dev/sdc(注意/dev/md0中並無熱備盤) ~]# mdadm /dev/md0 -f /dev/sdc mdadm: set /dev/sdc faulty in /dev/md0
結果/dev/md1下的熱備盤/dev/sdh自動替換/dev/md0下的損壞的/dev/sdc
************************************** 六 案例 **************************************
1:建立一個可用空間爲1G的RAID1設備,文件系統爲ext4,開機可自動掛載至/backup目錄
新加入兩個1G大小的硬盤 echo '- - -' > /sys/class/scsi_host/host0/scan lsblk 或 cat /proc/partitions 或 ll /dev/sd* mdadm --create --auto=yes /dev/md0 --level 1 -n 2 /dev/sd{c,d} mdadm -D /dev/md0 mkfs.ext4 /dev/md0 blkid /dev/md0 mkdir /backup mount /dev/md0/backup
2:建立由三塊硬盤組成的可用空間爲2G的RAID5設備,要求其chunk大小爲256k,文件系統爲ext4,開機可自動掛載至/mydata目錄
新建立三個2G大小的硬盤 echo '- - -' > /sys/class/scsi_host/host0/scan mdadm --create --auto=yes /dev/md1 --level=5 --chunk=256K -n 3 /dev/sd{e,f,g} mkfs.ext4 /dev/md1 mkdir /mydata mount /dev/md1 /mydata