1. 程式人生 > >RAID(廉價磁盤冗余陣列)

RAID(廉價磁盤冗余陣列)

raid

RAID可以透過一個技術(軟件和硬件),將多個較小的磁盤整合成為一個較大的磁盤裝置;而這個較大的磁盤功能可不只是存儲而已,它還具有數據保護功能,提升讀寫性能,所謂保護功能就是將一個數據多份的存放在不同的物理磁盤上,這樣就避免了單塊磁盤甚至多塊磁盤損壞而導致的數據丟失問題。當然這需要借助於RAID的級別來實現更加豐富的功能。級別就是將多塊磁盤組織在一起的工作方式,不同級別組合起來的磁盤具有不同的功能。

接下來說一下RAID常見得級別: RAID-0:條帶卷,將多塊磁盤平行的組合在一起來當一塊實現I/O能力。 RAID-1:鏡像卷,有一個專門的磁盤作為鏡像盤,有冗余能力。 RAID-4

:將3塊以上的磁盤組織成一個RAID,存儲數據時,一塊磁盤專門作為校驗盤,其他的磁盤用來存儲數據,缺點:單塊硬盤專門作為校驗盤,訪問壓力較大,很容易成為性能瓶頸。 RAID-5:將3塊以上的磁盤組織成為一個RAID。存儲數據時3塊硬盤輪流作為校驗盤。 RAID-6:校驗盤存兩次。

RAID-10:兩兩分組。組內RAID-1,組間RAID-0。

特性:

RAID-0:讀寫性能提升;可用空間:N*min(s1,s2...);無冗余;最少磁盤數:2,2+

RAID-1:讀性能提升,寫性能下降;可用空間:1*min(s1,s2...);有冗余;最少磁盤數:2,2+

RAID-5:讀寫性能提升;可用空間:(N-1)*min(s1,s2...);有冗余;最少磁盤數:3,3+

RAID-6:讀寫性能提升;可用空間:(N-2)*min(s1,s2...);有容錯能力:2塊;最少磁盤數4,4+

RAID-10:讀寫性能提升;空間(N/2)*min(S1,S2...);有容錯能力:每組只能壞一塊;最少磁盤數:4,4+



RAID的具體實現方式有兩種:

①硬件實現方式:通過BIOS參數調整來實現;這裏不做具體說明

②軟件實現方式:通過軟件工具mdadm來實現

下面具體說一下軟件實現方式:

mdadm:;是一個模式工具

用法:mdadm [mode] <raiddevice> [options] <component-devices>

支持的RAID級別有:RAID0,1,4,5,6,10

模式[mode]:創建,配置,監控,管理

具體操作過程所涉及的命令及相關選項:

創建

-C:創建RAID,還有一下的子選項

-n#:使用#個塊設備來創建此RAID

-l#:指明要創建的RAID的級別

-a{yes|no}:自動創建目標RAID設備的設備文件

-c CHUNK_SIZE:指明快大小

-x#:指明空閑盤的個數

eg:創建一個10g的RAID-5

mdadm -C /dev/md0 -a yes -n 3 -x 1 -l 5 /dev/sda{7,8.9,10}

管理:-f:標記指定磁盤為損壞;(-f用在要標記的磁盤前)

-a:添加磁盤

-r:移除磁盤

eg:mdadm /dev/md0 -f /dev/sda7

其他管理:觀察md的狀態:cat /proc/mdstat

停止md設備:mdadm -S /dev/md#

裝配

使用mdadm -A選項

-A:裝配模式,重新識別此前實現的RAID

監控

使用mdadm -F:監控模式

RAID(廉價磁盤冗余陣列)