RAID(廉價磁盤冗餘陣列)
RAID(Redundant Arrays of Independent Disks,RAID)廉價磁盤冗餘陣列
- RAID的特點
RAID可以透過一個技術(軟件或者硬件),將較小的磁盤整合成一個較大 的磁盤裝置,提高了I/O能力,還具有數據保護功能,所謂保護功能就是將一個數據多份的存在在不同的物理磁盤之上,這樣避免了單塊兒甚至多塊兒磁盤故障而導致的數據丟失問題,當熱這需要藉助於RAID的級別來實現更加豐富的功能。
級別就是將多塊兒磁盤組織在一起的工作方式,不同級別組合起來的磁盤具有不同的功能。 - RAID的實現方式
1.外接式磁盤陣列:通過擴展卡提供適配能力
2.內接式RAID:主板集成RAID控制器
3.Software RAID:軟件方式實現的RAID功能 - 如何操作實現RAID:
1.在安裝操作系統之前通過BIOS進行設置
此種方式主要目的在於將操作系統安裝在RAID之上
2.在安裝操作系統之後通過BIOS或軟件進行設置
此種方式主要目的在於將操作系統和其他專用分區(如數據盤)獨立放開 -
RAID級別
1.RAID0:(string條帶模式)
要求:至少需要兩塊磁盤
優點:數據分散存儲於不同磁盤上,在讀寫時可以實現併發,是所有RAID 級別中存儲性能最高的;磁盤利用率100%,可用空間N*min(S1,S2,..)
缺點:沒有容錯功能,一旦其中一塊磁盤掛掉全部數據將都會順壞
2.RAID1:(Mirroring 鏡像卷)
要求:至少需要兩塊磁盤
優點:用過硬盤鏡像數據實現數據冗餘,保證數據的安全性,在兩塊盤上互爲備份,當原始數據繁忙時,可以直接從鏡像備份中讀取數據;
缺點:是RAID級別中單位成本最高的,當其中一塊磁盤掛掉時,系統可以直接切換到鏡像盤上讀寫,並且不需要重組失效的數據,磁盤利用率50%
3.RAID5:
原理:數據以塊(chunk)爲單位分散存儲在各個硬盤上,RAID 5不對數據進行備份,而是把數據和與其對應的奇偶校驗信息存儲到組成的RAID5的各個磁盤上,並且將奇偶校驗信息和對應的數據分別存儲於不同的磁盤上,其中一塊(只允許一塊)掛掉時,利用剩下的數據和校驗信息可以恢復數據。
上表中的A、B值即代表不同的位,利用異或運算可以簡單算出掛掉磁盤上的數據。
要求:需要3塊及以上硬盤
優勢:兼顧讀寫速度和數據安全,讀寫性能提升,其中一塊磁盤掛掉時,可以保證數據不被損壞;(需要注意的是,只允許壞一塊盤,並且壞盤要及時更換)磁盤利用率=[(n-1)/n] * 2/3
4.RAID 1+0:
先創建RAID 1,在RAID的基礎上創建RAID 0
優點:數據安全性好,讀寫性能提升,有容錯率:只要不是一個RAID 1上的2個硬盤同時損壞,都不影 響數據的正常讀寫,數據恢復快
缺點:寫性能較RAID 0+1 差一些
5.RAID 0+1
先創建RAID 0,在RAID 0 的基礎上再創建RAID 1
優點:性能上考慮的話,RAID 0+1要更有優勢一些,RAID 0+1寫入速度更快一些,讀取速度和RAID 1+0 一樣,
缺點:一旦其中一塊硬盤掛掉之後,一半的硬盤無法正常工作,如果2個條帶上各壞一塊,整個陣列將掛掉
6.JBOD:Just a Bunch Of Disks:不是標準的 RAID 等級,它通常用來表示一個沒有控制軟件提供協調控制的磁盤集合。
功能:將多塊磁盤的空間合併一個連續空間使用,sum(S1,S2,..) - RAID的具體實現方式
1.硬件實現方式:通過BIOS參數調整來實現
2.軟件實現方式:通過軟件工具mdadm來實現
mdadm:是一個模擬化的工具
用法: mdadm [mode] <raiddevice> [options] <component-devices>
支持的RAID級別有:RAID-0,RAID-1,RAID-4,RAID-5,RAID-6,RAID-10
模式<mode>:創建,裝配,監控,管理
具體操作過程所涉及的命令及相關選項:
1.創建:
使用mdadm命令:mdadm支持的選項有:
-C:創建RAID,還有以下子選項:
-n#:使用#個塊設備來創建此RAID
-l#:指明要創建的RAID的級別
-a{yes|no}:自動創建目標RAID設備的設備文件
-c CHUNK_SIZE:指明塊大小、
-x#:指明空閒盤的個數
-D:顯示RAID的詳細信息
mdadm -D /dev/md#:
2.裝配:
mdadm -A:裝配模式,重新識別此前實現的RAID
3.監控模式:
mdadm -F:監控模式
4.管理模式:
-f:標記指定磁盤爲損壞
-a:添加磁盤
-r:移除磁盤
其他管理:
觀察md的狀態:cat /proc/mdstat
停止md設備:mdadm -S /dev/md#