RAID: Redundant Arrays of Inexpensive Disks
Independent
提高IO能力: 通過磁盤并行讀寫實現
提高耐用性能: 磁盤冗余來實現
級別: 多塊磁盤組織在一起的工作方式有所不同:
RAID是的方式:
外接式磁盤陣列: 通過擴展卡提供適配能力
內接式RAID: 主板集成RAID控制器
Software RAID:
級別: level
RAID-0: 0, 條帶卷, strip;
RAID-1: 1, 鏡像卷, mirror;
RAID-2
…
RAID-5:
RAID-6:
RAID10
RAID01
RAID-0:
讀、寫性能提升
可用空間: N*min(s1,s2,…)
無容錯能力
最少磁盤數: 2, 2+
RAID-1:
讀性能提升、寫性能略有下降
可用空間1*min(s1,s2,…)
有冗余能力
最少磁盤書: 2, 2+
RAID-4:
RAID-5:
讀寫性能提升
可用空間: (N-1)*min(s1,s2,…)
有容錯能力: 最多壞一塊磁盤
最少磁盤數: 3, 3+
RAID-6
讀寫性能提升
可用空間: (N-2)*(s1,s2,…)
有容錯能力: 可以同時壞2塊磁盤
最少磁盤數: 4, 4+
混合類型
RAID-10:
讀寫性能提升
可用空間: N*min(s1,s2,…)
有容錯能力: 每組鏡像最多同時壞一塊
最少磁盤數: 4, 4+
RAID-01
RAID-50、RAID7
JBOD: Just a Bunch of Disks
功能: 將多塊磁盤的空間合并成一個大的連續空間使用
可用空間: sum(s1,s2,…)
常用級別:
RAID-0, RAID-1, RAID-5, RAID-10, RAID-50,JBOD
實現方式:
硬件實現方式
軟件實現方式
CentOS 6上的軟件RAID的實現
結合kernel中的md(multi devices)模塊
mdadm: 模式化的工具
管理模式,跟蹤模式
命令的語法格式: mdadm [mode] <raiddevice> [options] <compoment-devices>
支持的RAID級別: LINEAR, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10
模式:
創建模式: -C
裝配模式: -A
監控模式: -F
管理模式: -f, -r, -a
查看模式: -D
<raiddevice>: /dev/md#
<component-devices>: 可以是任意設備
-C: 創建模式
-n #: 使用#個塊設備創建此RAID
-l #: 指明要創建的RAID的級別
-a {yes|no}: 是否自動創建目標RAID設備的設備文件
-c CHUNK_SIZE: 指明塊的大小
-x #: 指個明冗余或空閑盤的數
示例: 要創建一個10G空間的RAID5
(1)首先分區系統, fdisk /dev/sdc
選用n選項,增加新分區
然后更改分區的類型為 linux raid auto
保存退出
partx -a /dev/sdc
(2)創建RAID
mdadm -C /dev/md0 -a yes -n 3 -x 2 -l 5 /dev/sdc{5..9}
查看一下md的設備文件,是否創建成功
cat /proc/mdstat
格式化創建文件系統
mke2fs -t ext4 /dec/md0
(3)創建掛載
修改配置信息: vim /etc/fstab
創建掛載點: mkdir /mydata
掛載raid: mount -a
(4)查看RAID狀態
mdadm -D /dev/md0
(5)保存raid配置信息
mdadm -Ds /dev/md0 > /etc/mdadm.conf
(6)測試raid
mdadm /dev/md0 -f /dev/sdb1 模擬失敗
mdadm /dev/md0 -r /dev/sdb1 刪除磁盤
mdadm /dev/md0 -a /dev/sdb1 添加磁盤
(7)暫停服務
mdadm -S /dev/md0
或者
umount /mnt/raid
(8)激活
mdadm -A -s /dev/md0
(9)強制啟動
mdadm -R /dev/md0
(10)刪除raid信息
mdadm -zero-superblock /dev/sdb1
(11)刪除raid信息
卸載: umount /dev/md0
暫停服務: mdadm -S /dev/md0
刪除分區: fdisk /dev/sd*
清除陣列磁盤信息: mdadm –zero-superblock /dev/sdsdb
修改配置信息: vim /etc/fstab
刪除raid配置文件: rm /etc/mdadm.conf
-D: 顯示raid的詳細信息
mdadm -D /dev/md#
管理模式:
-f: 標記指定的磁盤為損壞
-a: 添加磁盤
-r: 移除磁盤
觀察md的工作狀態
cat /proc/mdstat
動態查看:
watch -n1 'cat /proc/mdstat'
停止md設備
mdadm -S /dev/md#
watch命令
-n #: 刷新間隔, 單位是秒
顯示設備上的mdadm設備:
查看文件: cat /proc/mdstat
或者 ls /dev | grep "md"
原創文章,作者:black_fish,如若轉載,請注明出處:http://www.www58058.com/40931
常見RAID的各種工作方式是我們面試中經常會被問到的知識,作者也總結的很詳細,建議通過作圖來加深自己對RAID的各個工作方式的理解。
@馬哥教育:好的老師, 一會補充上