RAID軟體磁盤陣列
- 一、常用RAID介紹
- 1.1 RAID 0(條帶化存盤)— 性能最佳
- 1.2 RAID 1(鏡像存盤)— 完整備份
- 1.3 RAID 5 — 性能與資料備份的均衡考慮
- 1.4 RAID 6 — 更強大的資料備份
- 1.5 RAID 1+0(先做鏡像,再做條帶)
- 1.6 RAID 0+1(先做條帶,在做鏡像)
- 二、磁盤陣列的優點
- 三、硬體磁盤陣列
- 3.1 磁盤陣列介紹
- 3.2 陣列卡介紹
- 3.2 陣列卡的快取
- 四、軟體磁盤陣列的設定
- 4.1 在VMware中給Linux添加4塊SCSI硬碟
- 4.1 檢查是否安裝mdadm軟體包
- 4.2 新磁盤劃分主磁區:型別fd
- 4.3 創建RAID 5 設備
- 4.4 查看RAID磁盤詳細資訊
- 4.5 對創建的RAID5 進行格式化并掛載
- 4.6 模擬故障檢測RAID功能
- 4.7 創建相關組態檔
- 4.8 停止和啟動RAID
一、常用RAID介紹
磁盤陣列的全名是(Redundant Arrays of Inexpensive Disk,RAID),中文意思是獨立冗余磁盤陣列,RAID可以通過技術(軟體或者硬體)將多個較小的磁盤整合成為一個較大的磁盤設備,而這個較大的磁盤功能可不止存盤而已,它還具有資料保護的功能,整個RAID由于選擇的級別(level)不同,而使得整合后的磁盤具有不同的功能,基本常用的level有以下幾種
1.1 RAID 0(條帶化存盤)— 性能最佳

- RAID 0連續以位或位元組為單位分割資料,并行讀/寫于多個磁盤上,因此具有很高的資料傳輸率,但它沒有資料冗余;
- RAID 0只是單純地提高性能,并沒有為資料的可靠性提供保證,而且其中的一個磁盤失效將影響到所有資料;
- RAID 0不能應用于資料安全性要求高的場合,
1.2 RAID 1(鏡像存盤)— 完整備份

- 通過磁盤資料鏡像實作資料冗余,在成對的獨立磁盤上產生互為備份的資料;
- 當原始資料繁忙時,可直接從鏡像拷貝中讀取資料,因此RAID 1 可以提高讀取性能;
- RAID 1是磁盤陣列中單位成本最高的,但提供了很高的資料安全性和可用性,當個磁盤失效時, 系統可以自動切換到鏡像磁盤上讀寫,而不需要重組失效的資料,
1.3 RAID 5 — 性能與資料備份的均衡考慮

- N (N>=3) 塊盤組成陣列,一份資料產生N-1個條帶,同時還有1份校驗資料,共N份資料在N塊盤上回圈均衡存盤
- N塊盤同時讀寫,讀性能很高,但由于有校驗機制的問題,寫性能相對不高;
- (N-1) /N磁盤利用率;
- 可靠性高,允許壞1塊盤,不影響所有資料,
1.4 RAID 6 — 更強大的資料備份

- N (N>=4) 塊盤組成陣列,(N-2) N磁盤利用率;
- 與RAID 5相比,RAID 6增加了第二個獨立的奇偶校驗資訊塊;
- 兩個獨立的奇偶系統使用不同的演算法,即使兩塊磁盤同時失效也不會影響資料的使用;
- 相對于RAID 5有更大的“寫損失"因此寫性能較差,
1.5 RAID 1+0(先做鏡像,再做條帶)

- N (偶數,N>=4)塊盤兩兩鏡像后,再組合成一個RAID 0;
- N/2磁盤利用率;
- N/2塊盤同時寫入,N塊盤同時讀取;
- 性能高,可靠性高,
1.6 RAID 0+1(先做條帶,在做鏡像)

- 讀寫性能與RAID 10相同;
- 安全性低于RAID 10;
- 使用較少,
二、磁盤陣列的優點
| RAID級別 | RAID 0 | RAID 1 | RAID 5 | RAID 6 | RAID 1+0 |
|---|---|---|---|---|---|
| 硬碟數量 | N | N(偶數) | N>=3 | N>=4 | N>=4(偶數) |
| 硬碟利用率 | N | N/2 | (N-1)/N | (N-2)/N | N/2 |
| 是否有校驗 | 無 | 無 | 有 | 有 | 無 |
| 保護能力 | 無 | 允許一個硬碟故障 | 允許一個硬碟故障 | 允許兩個硬碟故障 | 允許兩個硬碟故障 |
| 寫性能 | 單個硬碟的N倍 | 需寫兩對存盤設備,互為主備 | 需寫計算校驗 | 需雙重寫計算校驗 | N/2塊盤同時寫入 |
三、硬體磁盤陣列

3.1 磁盤陣列介紹
所謂的磁盤陣列是通過磁盤陣列卡(上圖所示)來完成磁盤陣列的功能,磁盤陣列卡上面有一塊專門的芯片用于處理RAID任務,因此在性能方面會比價好,在很多任務(例如RAID5奇偶校驗值計算)中,磁盤陣列并不會重復消耗原本系統的I/O總線,理論上性能會較佳,此外目前一般的中高級磁盤陣列卡都支持熱插拔,即在不關機的情況下抽換損壞的磁盤,在系統的恢復和資料的可靠性方面非常好用!
3.2 陣列卡介紹
- 陣列卡是用來實作RAID功能的板卡
- 通常是由I/O處理器、硬碟控制器、硬碟連接器和快取等一系列組件構成的
- 不同的RAID卡支持的RAID功能不同:
例如支持RAID0、RAID1、 RAID5、 RAID10等 - RAID卡的介面型別:
IDE介面、SCSI介面、 SATA介面和SAS介面
3.2 陣列卡的快取
- 快取(Cache)是RAID卡與外部總線交換資料的場所,RAID卡先將資料傳送到快取,再由快取和外邊資料總線交換資料,
- 快取的大小與速度是直接關系到RAID卡的實際傳輸速度的重要因素,
- 不同的RAID卡出廠時配備的記憶體容量不同,一般為幾兆到數百兆容量不等,
四、軟體磁盤陣列的設定
這邊通過一個案例來詳細講解配置步驟:
- 為Linux服務器添加4塊SCSI硬碟;
- 使用mdadm軟體包,構建RAID5磁盤陣列,提高磁盤存盤的性能和可靠性,
4.1 在VMware中給Linux添加4塊SCSI硬碟
具體步驟可以參考此篇博客第三段:磁盤管理的檢測并確認新硬碟

4.1 檢查是否安裝mdadm軟體包
使用rpm -q mdadm進行檢查,如下圖代表已安裝過mdadm軟體,未安裝的話使用yum install -y mdadm 進行安裝,

4.2 新磁盤劃分主磁區:型別fd
修改 /dev/sdb、/dev/sdc、/dev/sdd和 /dev/sde 磁盤




4.3 創建RAID 5 設備

格式:mdadm -C -v /dev/md0 -a yes -l5 -n3 /dev/sd[bcd]1 -x1 /dev/sde1
| 選項 | 作用 |
|---|---|
| -C | 表示新建 |
| -v | 顯示創建程序中的詳細資訊 |
| /dev/md0 | 創建RAID5 的名稱 |
| -a yes | –auto, 表示如果有什么設備檔案沒有存在的話就自動創建,可省略 |
| -l | 指定RAID 的級別,15表示創建RAID5 |
| -n | 指定使用幾塊硬碟創建RAID, n3表示使用3塊硬碟創建RAID |
| /dev/sd [bcd]1 | 指定使用這3塊磁盤磁區去創建RAID |
| -x | 指定使用幾塊硬碟做RAID的熱備用盤,x1表示保留1塊空閑的硬碟作備用 |
| /dev/sde1 | 指定用作于備用的磁盤 |
4.4 查看RAID磁盤詳細資訊
1.查看RAID創建進度的兩種方式:
[root@cheng0307 ~]# cat /proc/mdstat
[root@cheng0307 ~]# mdadm -D /dev/md0
2.每5秒鐘動態顯示創建程序
[root@cheng0307 ~]# watch -n 5 'cat /proc/mdstat'
3.檢查某塊磁盤是否已做RAID
[root@cheng0307 ~]# mdadm -E /dev/sdb1
1.查看RAID創建進度的兩種方式

顯示內容解釋:
[root@cheng0307 ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdd1[4] sde1[3](S) sdc1[1] sdb1[0]
41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
mdo:表示后面創建raid5 包含了sdd1,sde1,sdc1,sdb1,其中sde1(s)表示是備份;
第四行的uuu:表示前面三塊硬碟都是正常的,
2.檢查/dev/sdb1磁盤是否已做RAID,

- 也可以使用
mdadm -D /dev/md0進行查看,

4.5 對創建的RAID5 進行格式化并掛載
1.格式化
[root@cheng0307 ~]# mkfs -t xfs /dev/md0
2.掛載(非永久)
[root@cheng0307 ~]# mount /dev/md0 /opt/

4.6 模擬故障檢測RAID功能
- 進入掛載目錄隨便創建一些檔案和檔案

- 模擬一塊磁盤故障,并查看重新創建的程序,

4.7 創建相關組態檔
創建/etc/mdadm.conf 組態檔,方便管理軟RAID的配置,如:啟動、停止等,
1.相關命令:
[root@cheng0307 opt]# echo 'DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1' > /etc/mdadm.conf
[root@cheng0307 opt]# mdadm --detail --scan >> /etc/mdadm.conf

4.8 停止和啟動RAID
mdadm命令其他常用選項:
- -r:移除設備
- -a:添加設備
- -S:停止RAID
- -A:啟動RAID
mdadm /dev/md0 -f /dev/sdc1— 將指定磁盤設為故障mdadm /dev/md0 -r /dev/sdc1— 移除指定磁盤mdadm /dev/md0 -a /dev/sdc1— 添加指定磁盤
- 手動洗掉故障磁盤和添加新磁盤

2. 將RAID 停止和啟動
如果沒有第七步進行/etc/mdadm,conf組態檔的添加,停止后掃描不到組態檔將無法啟動,
mdadm -S /dev/md0
mdadm -As /dev/md0
#-s:指查找 /etc/mdadm.conf檔案中的配置資訊

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/278438.html
標籤:其他
