Linux系統軟RAID管理命令mdadm詳解
概述
今天主要分享一下手動創建軟RAID和日常維護的方法。
mdadm使用的也是md驅動,由於其擁有多種模式,而且單一工具,不依賴任何配置文件,是替代raidtools的好工具。目前幾乎所有發行版本使用的都是該工具。
部署只需要解壓編譯下就可以了,這裡就不多做介紹了。
01
模式
mdadm有6種模式,前兩種模式:Create、Assemble用於配置和激活陣列;Manage模式用於操作在活動陣列中的設備;Follow或Monitor模式允許管理員對活動陣列配置事件提醒和動作;Build模式用於對舊陣列使用舊版本的md驅動;還有Grow模式可以擴展陣列;剩下的是Misc模式,它包括對多種內部的任務和沒有指定特殊模式的一些操作。
02
部署RAID
1、準備磁盤
因為只能使用Sofware RAID格式的磁盤才能組成陣列,所以,首先我們要把做好磁盤格式,除了系統盤sda外,還需要對sdb、sdc、sdd進行操作。
1)對sdb進行分區
fdisk /dev/sdb
分區前狀態:
n,劃分區:
t,修改分區格式為fd:
w,保存:
2)同樣的方法,對sdc、sdd進行分區和保存
最後狀態如下:
2、創建陣列
mdadm可以支持LINEAR、RAID0 (striping)、 RAID1(mirroring)、 RAID4、RAID5、RAID6和MULTIPATH的陣列模式。
創建命令格式如下:
mdadm [mode] <raiddevice> [options] <component disks>
說明:
[mode]表示引用的模式
指定軟RAID設備號,如/dev/md0
[options]可以有長短兩種表示方式
表示組成陣列的磁盤分區,可以用shell的方法簡短表示
例如:創建一個RAID 0設備:
mdadm --create --verbose /dev/md0 --level=0 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
--level表示創建的陣列模式,--raid-devices表示參與陣列的磁盤數量。
也可以這樣表達,意思是一樣的:
mdadm -Cv /dev/md0 -l0 -n3 /dev/sd{b,c,d}1
還可以增加-c128參數,指定chunk size為128K(默認64K)
3、配置文件
mdadm不採用/etc/mdadm.conf作為主要配置文件,它可以完全不依賴該文件而不會影響陣列的正常工作。
該配置文件的主要作用是方便跟蹤軟RAID的配置。對該配置文件進行配置是有好處的,但不是必須的。推薦對該文件進行配置。
通常可以這樣來建立:
echo DEVICE /dev/sd{b,c,d}1 >> /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf
結果如下:
# cat /etc/mdadm.conf
DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1
ARRAY /dev/md0 level=raid0 num-devices=3 UUID=8ba81579:e20fb0e8:e040da0e:f0b3fec8
devices=/dev/sdb1,/dev/sdc1,/dev/sdd1
4、格式化陣列
只要把/dev/md0作為一個單獨的設備來進行操作即可:
mkfs.ext3 /dev/md0
mkdir /mnt/test
mount /dev/md0 /mnt/test
結果如下:
03
mdadm管理
mdadm可以非常方便的對陣列進行監控和管理的操作,也包括了停止和啟動陣列等常用維護。
1、查看
cat /proc/mdstat
可以查看所有使用md驅動的陣列的狀態:
mdadm --detail /dev/md0
查看指定陣列的詳細信息(-D):
2、停止
mdadm -S /dev/md0
停止指定陣列,並釋放磁盤(--stop):
3、啟動
mdadm -A /dev/md0 /dev/sd{b,c,d}1
啟動指定的陣列,也可理解為講一個新陣列裝配到系統中(--assemble):
若你已經在上面配置了/etc/mdadm.conf文件,也可用-s查找:
mdadm -As /dev/md0
篇幅有限,今天內容就分享到這了,後面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注一下~