獨立冗餘磁盤陣列,爲了提高磁盤的讀寫性能和使其具有備份功能,引入了RAID
因爲要管理複雜的RAID架構,因此引入了RAID控制器
RAID控制器甚至可以獨立的存在,其內部有CPU、內存、電源等
級別:僅代表磁盤組織方式不同,沒有上下之分;
0:條帶
性能提升: 讀,寫
冗餘能力(容錯能力): 無
空間利用率:nS
至少2塊盤
1:鏡像
性能表現:寫性能下降,讀性能提升
冗餘能力:有
空間利用率:1/2
至少2塊盤
5:
性能表現:讀,寫提升
冗餘能力:有
空間利用率:(n-1)/n
至少需要3塊
10:
性能表現:讀、寫提升
冗餘能力:有
空間利用率:1/2
至少需要4塊
01:
性能表現:讀、寫提升
冗餘能力:有
空間利用率:1/2
至少需要4塊
50:
性能表現:讀、寫提升
冗餘能力:有
空間利用率:(n-2)/n
至少需要6塊
jbod:
性能表現:無提升
冗餘能力:無
空間利用率:100%
至少需要2塊
RAID 0 是提高讀寫性能的,並不提高備份或容錯能力,不允許損壞任意一塊損壞,其實提高了數據損毀的可能性,對於重要的數據,一般不可取,
RAID 1 鏡像,只是將磁盤中的數據做一次備份,允許不是對應的(相同數據的)任意塊損壞
RAID 5 校驗技術,輪替作校驗盤,將數據分別存入不同盤中,另存入一份數據的校驗信息輪替至一個盤中,這樣即能提高raid的讀寫能力,又能實現了容錯。但如果一塊壞了,就變成了降級模式,還能實現讀寫,但效果不佳
RAID 10 先對數據做鏡像,再做條帶處理,即能實現讀寫能力,又能實現容錯能力、
每組鏡像中最多隻能損壞一塊
RAID 01 先對數據做條帶,再做鏡像處理,即能實現讀寫能力,又能實現容錯能力、
不對應的磁盤一次塊損壞一塊
JBOD 可實現將多塊硬盤合併成一個較大的空間,在生產中,若磁盤不夠用,有沒有其他
像LVM等的動態擴展功能時可實現空間的應急擴展
Linux的kernel中自帶有md模塊,可實現RAID功能,其自帶有RAID管理工具
mdadm 模式化工具
命令的語法格式:mdadm [mode]<raiddevice> [options] <component-devices>
持的RAID級別:LINEAR,RAID0, RAID1, RAID4, RAID5, RAID6, RAID10;
-C: 創建模式
-n #: 使用#個塊設備來創建此RAID;
-l #:指明要創建的RAID的級別;
-a{yes|no}:自動創建目標RAID設備的設備文件;
-cCHUNK_SIZE: 指明塊大小;
-x #: 指明空閒盤的個數;
例如:創建一個10G可用空間的RAID5;
-D:顯示raid的詳細信息;
mdadm -D /dev/md#
管理模式:
-f: 標記指定磁盤爲損壞;
-a: 添加磁盤
-r:移除磁盤
觀察md的狀態:
cat /proc/mdstat
停止md設備:
mdadm -S /dev/md#
watch命令:
-n #: 刷新間隔,單位是秒;
watch -n# 'COMMAND'