Linux中RAID概述及配置實驗
- 一、RAID磁盤陣列概述
- RAID 0 (條帶化存盤)
- RAID 1(鏡像存盤)
- RAID 5
- RAID 6
- RAID 1+0(先做鏡象,再做條帶)
- RAID 0+1(先做條帶,再做鏡象)
- RAID10安全性比RAID高原因(以配圖為例)
- 不同RAID級別的區別
- 二、創建軟RAID磁盤陣列實驗
- 三、陣列卡
- 概念
- 陣列卡的快取
一、RAID磁盤陣列概述
RAID是獨立磁盤冗余陣列(Redundant Array of Independent Disks)簡稱磁盤陣列,
主要就是資源集中,統一管理,把多塊獨立的物理硬碟按不同的方式組合成一個硬碟組,邏輯上可以看成一個大的硬碟,從而提供比單個硬碟更高的存盤性能和提供資料備份技術,
組成磁盤陣列的不同方式稱為RAID級別(RAID Levels)
常用的RAID級別 RAID0,RAID1,RAID5,RAID6,RAID1+0等
RAID 0 (條帶化存盤)

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

(1)通過磁盤資料鏡像實作資料冗余,在成對的獨立磁盤上產生互為備份的資料
(2)當原始資料繁忙時,可直接從鏡像拷貝中讀取資料,因此RAID 1可以提高讀取性能
(3)RAID 1是磁盤陣列中單位成本最高的,但提供了很高的資料安全性和可用性,當一個磁盤失效時,系統可以自動切換到鏡像磁盤上讀寫,而不需要重組失效的資料,
(4)N(偶數)塊硬碟組成一組鏡像,容量為N/2
RAID 5

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

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

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

(1)讀寫性能與RAID 10相同
(2)安全性低于RAID 10
RAID10安全性比RAID高原因(以配圖為例)
1、RAID10的情況
我們假設當DISK0損壞時,在剩下的3塊盤中,只有當DISK1一個盤發生故障時,才會導致整個RAID失效,我們可簡單計算故障率為1/3,
2、RAID01的情況
我們仍然假設DISK0損壞,這時左邊的條帶將無法讀取,在剩下的3塊盤中,只要DISK2,DISK3兩個盤中任何一個損壞,都會導致整個RAID失效,我們可簡單計算故障率為2/3, 因此RAID10比RAID01在安全性方面要強
不同RAID級別的區別
| RAID級別 | 硬碟數量 | 磁盤利用率 | 是否有校驗 | 保護能力 | 寫性能 |
|---|---|---|---|---|---|
| RAID0 | N | 100% | 無 | 無 | 單個硬碟的N倍(最好) |
| RAID1 | N(偶數) | N/2 | 無 | 允許一個設備故障 | 需寫兩對存盤設備,互為主備 |
| RAID5 | N>=3 | (N-1)/N | 有 | 允許一個設備故障 | 需寫計算校驗 |
| RAID6 | N>=4 | (N-2)/N | 有 | 允許兩個設備故障 | 需雙重寫計算校驗 |
| RAID10 | N>=4(偶數) | N/2 | 無 | 允許兩個基組中各壞一個 | N/2塊盤同時寫入 |
二、創建軟RAID磁盤陣列實驗
(1)先關閉虛擬機,然后編輯虛擬機設定,添加4塊硬碟,每塊分配20G,點擊確認后開啟虛擬機


(2)檢查是否已安裝mdadm 軟體包

(3)使用fdisk工具管理磁盤
將新磁盤設備劃分出主磁區并且把磁區型別的 ID 標記號改為“fd”,fdisk /dev/sdb (sdc,sdd,sde一樣操作)

查看磁區

(4)創建 RAID 設備
創建RAID5
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 的級別,l5 表示創建 RAID5,
-n:指定使用幾塊硬碟創建 RAID,n3 表示使用 3 塊硬碟創建 RAID,
/dev/sd[bcd]1:指定使用這四塊磁盤磁區去創建 RAID,
-x:指定使用幾塊硬碟做RAID的熱備用盤,x1表示保留1塊空閑的硬碟作備用
/dev/sde1:指定用作于備用的磁盤
查看RAID磁盤命令
cat /proc/mdstat -查看RAID磁盤詳細資訊和創建RAID的進度
mdadm -D /dev/md0 -查看RAID磁盤詳細資訊
mdadm -E /dev/sd[b-e]1 -檢查磁盤是否已做RAID



補充創建RAID10(先做鏡象,再做條帶)
mdadm -Cv /dev/md0 -l1 -n2 /dev/sd[bc]1
mdadm -Cv /dev/md1 -l1 -n2 /dev/sd[de]1
mdadm -Cv /dev/md10 -l0 -n2 /dev/md0 /dev/md1
(5)創建并掛載檔案系統
mkfs -t xfs /dev/md0
mount /dev/md0 /opt/
df -Th
cp /etc/fstab /etc/fstab.bak
vim /etc/fstab
/dev/md0 /opt xfs defaults 0 0

(6)實作故障恢復
mdadm /dev/md0 -f /dev/sdb1 -模擬/dev/sdb1 故障
mdadm -D /dev/md0 -查看發現sde1已頂替sdb1

mdadm命令其它常用選項
-r:移除設備
-a:添加設備
-S:停止RAID
-A:啟動RAID
補充
創建 /etc/mdadm.conf 組態檔,方便管理RAID的配置,
echo 'DEVICE /dev/sdc1 /dev/sdb1 /dev/sdd1 /dev/sde1' > /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf

三、陣列卡
概念
(1)陣列卡是用來實作RAID功能的板卡
(2)通常是由I/O處理器、硬碟控制器、硬碟連接器和快取等一系列組件構成的
(3)不同的RAID卡支持的RAID功能不同
例如:支持RAID0、RAID1、RAID5、RAID10等
(4)RAID卡的介面型別
IDE介面、SCSI介面、SATA介面和SAS介面
陣列卡的快取
(1)快取(Cache)是RAID卡與外部總線交換資料的場所,RAID卡先將資料傳送到快取,再由快取和外邊資料總線交換資料
(2)快取的大小與速度是直接關系到RAID卡的實際傳輸速度的重要因素
(3)不同的RAID卡出廠時配備的記憶體容量不同,一般為幾兆到數百兆容量不等
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/278439.html
標籤:其他
