linux之raid
阿新 • • 發佈:2018-08-18
started cte device 命令 ear redundant 條帶 主板 row 什麽是raid
??raid:RedundantArrays of Inexpensive(Independent)Disks 簡稱RAID、早期是為了降低成本問題,1988年由加利福尼亞大學伯克利分校提出“A Case for Redundant Arrays of Inexpensive Disks”廉價的磁盤冗余陣列、後來成為服務器領域的標配
??把多個硬盤邏輯的組合在一起、形成一個集合叫做陣列、兩大突出優勢
????一:性能提升、比單塊磁盤性能強。
????二:實現冗余性
RAID:
?1、提高I/O能力;
? ? ?磁盤並行讀寫
? 2、提高耐用性
? ? ?磁盤冗余來實現?3、級別:多塊磁盤組織在一起的工作方式有所不同
? 4、raid實現的方式:
? ? ? 外接式磁盤陣列:通過擴展卡提供適配能力
? ? ?內接式raid:主板集成raid控制器
? ? ? 在安裝OS前在BIOS裏面配置
? ? ? 軟件raid:通過OS來實現
? ? ? 生產中都是用硬件raid來實現
raid的多種級別 0:條帶卷 讀、寫性能提升; 可用空間:N*min(S1,S2,...) 無容錯能力 最少磁盤數:2, 2+ 1:鏡像卷 讀性能提升、寫性能略有下降; 可用空間:1*min(S1,S2,...) 有冗余能力 最少磁盤數:2, 2N 4: 多塊數據盤異或運算值存於專用校驗盤 5:帶校驗位的條帶集 讀、寫性能提升 可用空間:(N-1)*min(S1,S2,...) 有容錯能力:允許最多1塊磁盤損壞 最少磁盤數:3, 3+ 6: 讀、寫性能提升 可用空間:(N-2)*min(S1,S2,...) 有容錯能力:允許最多2塊磁盤損壞 最少磁盤數:4, 4+ 10 讀、寫性能提升 可用空間:N*min(S1,S2,...)/2 有容錯能力:每組鏡像最多只能壞一塊 最少磁盤數:4, 4+ 01 多塊磁盤先實現RAID0,再組合成RAID1 軟raid: mdadm:為軟RAID提供管理界面 為空余磁盤添加冗余 結合內核中的md(multi devices) 軟raid5的實現方式:raid0的話最少得2塊盤才能組這裏實驗給他4塊盤 先分區,大小為1G,因為這裏拿分區做的時候,分完之後別著急退出還得修改下格式,軟raid的格式改成fd即可。
[root@centos6 ~]#fdisk /dev/sdb ....... Command (m for help): t Selected partition 1 Hex code (type L to list codes): fd Changed system type of partition 1 to fd (Linux raid autodetect) Command (m for help): p ...... Device Boot Start End Blocks Id System /dev/sdb1 1 132 1060258+ fd Linux raid autodetect
再把其它幾個盤分出來一個分區大小為1G,盤太多了所以這裏用了dd命令來復制上一個磁盤裏的信息,重復幾次即可,這樣是不是比fdisk /dev/sdd 命令簡單快捷呢
[root@centos6 ~]#dd if=/dev/sdb of=/dev/sdc bs=1 count=66 skip=446 seek=446
[root@centos6 ~]#dd if=/dev/sdb of=/dev/sdd bs=1 count=66 skip=446 seek=446
[root@centos6 ~]#dd if=/dev/sdb of=/dev/sde bs=1 count=66 skip=446 seek=446
[root@centos6 ~]#dd if=/dev/sdb of=/dev/sdf bs=1 count=66 skip=446 seek=446
創建raid級別,並且把剛才剛分區的幾個盤添加進去
[root@centos6 ~]#mdadm -C /dev/md0 -a yes -l0 -n4 /dev/sd{b,c,d,e}1
mdadm: /dev/sdb1 appears to contain an ext2fs file system
size=1060256K mtime=Sat Aug 11 11:40:55 2018
mdadm: /dev/sdb1 appears to be part of a raid array:
level=raid0 devices=0 ctime=Thu Jan 1 08:00:00 1970
mdadm: partition table exists on /dev/sdb1 but will be lost or
meaningless after creating array
Continue creating array? ^C #這塊提示在/dev/sdb1這塊磁盤上已經有了文件系統了 ,提示你是否創建文件系統,之前的會被抹掉,如果不想出現這提示的話 可以用下面命令來清零
[root@centos6 ~]#dd if=/dev/zero of=/dev/sdb1
然後你再創建raid就沒有剛才上面那提示了
[root@centos6 ~]#mdadm -C /dev/md0 -a yes -l0 -n4 /dev/sd{b,c,d,e}1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
查看剛創建好的raid的詳細信息
[root@centos6 ~]#mdadm -D /dev/md0
配置文件
[root@centos7 raid0]# mdadm -Ds /dev/md0
ARRAY /dev/md0 metadata=1.2 name=centos7:0 UUID=f4b5305a:5525f6dc:8921eed9:a309a089
[root@centos7 raid0]# mdadm -Ds /dev/md0 > /etc/mdadm.conf
測試速度
[root@centos7 raid0]# dd if=/dev/zero of=f1 bs=1M count=1024 conv=fdatasync
測試讀速度
[root@centos7 raid5]# dd if=f2 of=/dev/null
不想要raid0先取消掛載
[root@centos7 ~]# umount /mnt/raid0/
停止raid
[root@centos7 ~]# mdadm -S /dev/md0
刪除之前生成的配置文件,以免後續有時候寫在配置文件裏面開機自動啟動
[root@centos7 ~]# rm -rf /etc/mdadm.conf
清除分區上的raid信息
[root@centos7 ~]# mdadm --zero-superblock /dev/sdb1
[root@centos7 ~]# mdadm --zero-superblock /dev/sdc1
[root@centos7 ~]# mdadm --zero-superblock /dev/sdd1
[root@centos7 ~]# mdadm --zero-superblock /dev/sde1
raid 5 增加空間
[root@centos7 ~]# mdadm -G /dev/md5 -n 5 -a /dev/sdc1
增加完之後需要同步centos7上同步文件系統
[root@centos7 ~]# xfs_growfs /mnt/raid5
ext系列同步的話需要用到以下命令
[root@centos7 ~]# resize2fs /dev/md5
raid10 創建
先創建兩組raid1
mdadm -C /dev/md0 -a yes -l 1 -n 2 /dev/sd{c,d}1
mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sd{e,f}1
然後再創建一組raid0
mdadm -C /dev/md2 -a yes -l0 -n2 /dev/md{0,1}
再把剛創建好的raid10格式化成xfs文件系統,再掛載到/mnt/raid10
mkfs.xfs /dev/md2
mkdir /mnt/raid10
mount /dev/md2 /mnt/raid10
linux之raid