Linux軟件RAID(磁盤冗余陣列)
阿新 • • 發佈:2018-06-21
導入 verbose 時也 等級 磁盤容量 追加 add fff BE 一、LVM與RAID特點對比
LVM | RAID |
---|---|
LVM實現動態擴容 | RAID支持動態擴容 |
LVM不支持磁盤加速 | RAID支持磁盤加速 |
LVM不支持冗余(數據備份) | RAID支持冗余 |
二、RAID(磁盤冗余陣列)
(1)硬件:磁盤陣列卡、磁盤陣列櫃
(2)軟件:mdadm
三、RAID級別
(1)RAID 0:需兩塊硬盤以上,一般為偶數磁盤數量,磁盤容量為多塊磁盤的和(致命缺點:數據無冗余效果),提升磁盤I/O(讀取、寫入)、不允許磁盤損壞
(2)RAID 1:需兩塊硬盤以上,一般為偶數磁盤數量,磁盤容量為多塊磁盤的一半,提升數據的可靠性(致命缺點:磁盤浪費嚴重)、允許磁盤壞掉一半
(3)RAID 5:需三塊硬盤以上,一般為奇數磁盤數量,磁盤容量為多塊磁盤-1,提升部分磁盤速度及冗余效果(致命缺點:生成校驗和時占用額外計算資源)、允許損壞一塊硬盤
(4)RAID 6:需四塊硬盤以上,一般為偶數磁盤,磁盤容量為多塊磁盤-2,相當於RAID 5提升了磁盤速度及冗余效果(允許損壞兩塊磁盤)
(5)RAID 1+0:需四塊硬盤以上,一般為偶數磁盤,磁盤容量為多塊磁盤的一半,綜合了RAID 0+RAID 1的特性
(6)RAID 5+0:需六塊磁盤以上,一般為偶數磁盤,磁盤容量為每三塊磁盤-1,綜合了RAID 5+RAID 0的特性
(7)RAID 6+0:需八塊磁盤以上,一般為偶數磁盤,磁盤容量為每四塊磁盤-2,綜合了RAID 6+RAID 0的特性
註:組成RAID時,一般磁盤容量相等
四、RAID 5案例:
1.查看系統中的磁盤設備fdisk -l
2.使用命令mdadm創建raid
如果沒有請先安裝mdadm軟件包(rpm -qa |grep mdadm
)
命令參數
-A = --assemble //激活 -S = --stop //停止 -D = --detail //查看raid詳細信息 -C = -- create //建立raid設備 -v = --verbose //顯示建立過程的詳細信息 -l = --level //raid的級別 -n = --raid-devices //raid設備數 -s = --scan //掃描raid設備 -f = --fail //標示壞的硬盤 -a = --add //添加硬盤 -r = -remove //移除壞的硬盤
註:RHEL 的光盤中有這個包
3.創建raid5陣列
mdadm --create --auto=yes /dev/md0 --level=5 --raid-devices=3 --spare-devices=1 /dev/sd[b-e]
可以縮寫為:mdadm –C –a yes /dev/md0 –l5 –n3 –x1 /dev/sd[b-e]
參數解釋:
-create //表示要創建raid
--auto=yes /dev/md0 //是否自動檢測,新建立的軟件磁盤陳列設備為md0,md序號可以為0-9
--level=5 //磁盤陣列的等級,這裏是raid5
-raid-devices //所需使用的磁盤數量
--spare-devices //添加作為預備(spare)磁盤的塊數
/dev/sd[b-e] //磁盤陣列所使用的設備,還可以寫成“/dev/sdb /dev/sdc /dev/sdd /dev/sde”
4.查看RAID是否成功的創建是否運行的正常
(1)查看詳細信息:mdadm - -detail /dev/md0命令查看RAID的詳細信息
(2)較為簡單的查看:可以直接查看cat /proc/mdstat的文件看到RAID運行的情況
**註**:U代表沒有問題、_則表示不正常;磁盤後面的(S)表示作為預備
5.格式化並且掛載和使用創建的RAID
mkfs.exe4 /dev/md0 //格式化 raid5磁盤為 md0
mkdir /raid
mount /dev/md0 /raid //將md0 掛載到/raid目錄下查看一下掛載情況
df –hT
試一下新加上的RAID是不是可以使用,向裏面寫入文件
6.設置開機自動啟動RAID以及自動掛載
讓RAID開機自啟動,RIAD配置文件名字為mdadm.conf 這個文件默認是不存在的,要自己建立.該配置文件存在的主要作用是系統啟動的時候能夠自動加載軟RAID,同時也方便日後管理. 說明下mdadm.conf文件主要由以下部分組成:
DEVICES選項制定組成RAID所有設備,
ARRAY選項指定陣列的設備名、RAID級別、陣列中活動設備的數目以及設備的UUID號
註意:此文件如果不創建下次開機重啟後/dev/md0將會被系統自動識別為其他非/dev/md0名稱的設備,對於實現開機掛載和使用都不方便
(1)先建立/etc/mdadm.conf 這個文件
mdadm --detail --scan > /etc/mdadm.conf //將raid信息導入配置文件
(2)要對這個文件做一下改動:將組成RAID5的設備名全部追加到配置文件中
(3)在設置RAID的自動掛載
vim /etc/fstab //修改掛載文件
/dev/md0 /raid ext4 defaults 0 0 //在文件中添加
7.模擬RAID5中的磁盤損壞
(1)驗證spare磁盤的功能(在raid5中允許一塊磁盤的損壞,也就是我們設置的spare磁盤會立即的替換壞掉的磁盤進行raid的重建,保障數據的安全性)
mdadm --manage /dev/md0 --fail /dev/sdd //使用此命令設置sdd成為出錯的狀態(或可簡寫為mdadm /dev/md0 -f /dev/sdd)
(2)查看一下磁盤的信息:mdadm --detail /dev/md0
(3)簡單的查看一下RAID的情況
(4)創建完成也就是說明raid5 已經自動的恢復了!查看一下raid5是不是可以正常使用!
往裏面新建文件寫入數據,這時可以發現,RAID5還可正常使用,對數據不造成任何影響
Active sync /dev/sdb1 # raid的真成員
spare /dev/sdc1 #raid備用成員
(5)重新添加/dev/sdd進RAID5,可做以下操作:
mdadm /dev/md0 --remove /dev/sdd //將壞掉的磁盤sdd從raid中移除
mdadm /dev/md0 -a /dev/sdd //將/dev/sdd加入陣列
(6)查看狀態
mdadm --zero-superblock --force /dev/sdd(可選) //可修復硬盤將模
擬損壞的硬盤重新添加
(7)再模擬損壞掉一塊硬盤,驗證硬盤是否還可正常工作
(8)再次查看硬盤狀態
8.關閉RAID的方法
直接卸載/dev/md0,並且註釋掉/etc/fstab文件中的配置
umount /dev/md0 //解除掛接
vim /etc/fstab //將fstab裏面的開機自動掛載註釋掉
#/dev/md0 /var/www/html ext4 defaults 0 0
mdadm --stop /dev/md0 //停止md0磁盤服務
Linux軟件RAID(磁盤冗余陣列)