一.磁盤陣列(Redundant Arrays of Independent Disks,RAID) 有「獨立磁盤構成的具備冗餘能力的陣列」之意。html
磁盤陣列是由不少價格較便宜的磁盤,以硬件(RAID卡)或軟件(MDADM)形式組合成一個容量巨大的磁盤組,利用多個磁盤組合在一塊兒,提高整個磁盤系統效能。利用這項技術,將數據切割成許多區段,分別存放在各個硬盤上。 磁盤陣列還能利用同位檢查(Parity Check)的觀念,在數組中任意一個硬盤故障時,仍可讀出數據,在數據。
注:RAID能夠預防數據丟失,可是它並不能徹底保證你的數據不會丟失,因此使用RAID的同時仍是注意備份重要的數據.
數組
RAID的建立有兩種方式:軟RAID(經過操做系統軟件來實現)和硬RAID(使用硬件陣列卡);瞭解raid一、raid5和raid10。不過隨着雲的高速發展,供應商通常能夠把硬件問題解決掉。安全
三.RAID磁盤陣列特色ide
對磁盤高速存取(提速): RAID將普通硬盤組成一個磁盤陣列,在主機寫入數據,RAID控制器把主機要寫入的數據分解爲多個數據塊,而後並行寫入磁盤陣列;主機讀取數據時,RAID控制器並行讀取分散在磁盤陣列中各個硬盤上的數據,把它們從新組合後提供給主機。因爲採用並行讀寫操做,從而提升了存儲系統的存取速度。
擴容。
數據冗餘
raid級別:raid 0 raid 1 raid5 raide 10 raid 01性能
RAID 0ui
0 :(stripe)條帶模式,至少須要兩塊硬盤,每一份數據平均分紅多份存儲在多個磁盤 中,且都處於一個水平條帶上加密
優勢:讀寫速度提升,用了多少塊盤就是多少倍 缺點:無冗餘能力(也稱容錯能力) 空間利用率:多個磁盤的總和,100%spa
RAID 1操作系統
1:(mirror)鏡像模式,磁盤數量須要2的倍數,兩個磁盤中存儲的數據徹底一致,當一 個盤損壞時,數據依然能夠進行讀寫code
優勢:有冗餘能力
缺點:磁盤利用率 只有50%,寫的速度降低
RAID 5
5:check code校驗碼模式,至少須要三塊硬盤,每一次存儲數據時,採用條帶模式存 儲到n-1數量的磁盤中,另一個磁盤存放的是其餘幾個磁盤中的數據以某種加密方式之 後得出的加密數據,且每一次存儲,存儲加密數據的磁盤都是不斷變化的,當其中任何 一個盤的數據損壞時,均可以經過加密方式和其他兩塊磁盤的數據來得知另一個盤的 數據,具備較高的冗餘能力
優勢:讀寫速度快,有冗餘能力
缺點:磁盤利用率爲n-1/n,兩個磁盤損壞時,數據將丟失
組合起來用RAID10
10:mirror+stripe模式,至少須要4快硬盤,先將兩塊硬盤組成Raid1,而後將兩組 Raid1組合成Raid0,存儲一分數據時,每一Raid1的組合存儲的數據都是均分的,而後 Raid1組合再用mirror模式存儲
優勢:讀寫速度快,冗餘能力強
缺點:磁盤利用率爲50%
組合起來用RAID01
RAID01 是先作條帶化再做鏡像,本質是對物理磁盤實現鏡像
優勢:讀寫速度快,冗餘能力強
缺點:磁盤利用率爲50%,安全性能比10差
比較:
RAID10和RAID01的比較
二者最重要的區別在於:RAID10的底層是鏡像RAID1,而鏡像就保證了當有一塊硬盤好比A1損壞時,並不影響他的寫功能,讀性能可能稍微有所下降(大概下降1/8)。可是RAID01的底層是條帶RAID0,而條帶就致使了只要有一塊硬盤好比左邊的Disk0中的A1損壞時,那麼整個左邊的RAID0就不能使用了,因此整個RAID01就變成了只有右邊的RAID0可使用了,也就是從RAID01變成了RAID0,讀性能立刻下降通常,寫性能沒有影響,可靠性變得最差。僅僅憑藉這一點,咱們就毫不應該使用RAID01,而應該選擇RAID10
五.RAID命令
命令:mdadm (須要下載)
#功能:建立/管理/刪除 磁盤陣列
#語法格式:
mdadm [模式] <磁盤陣列名稱> [選項] <組成設備>
#模式:
assemble:將之前定義的某個陣列加入當前在用陣列。
create:建立一個新的陣列,每一個設備具備超級塊
manage: 管理陣列,好比增長或移除
misc:容許單獨對陣列中的某個設備作操做,好比抹去超級塊或 終止在用的陣列。
follow or Monitor:監控磁盤陣列的狀態
grow:改變磁盤陣列容量或陣列中的設備數目
選項:
-A:加入一個之前定義的陣列
-C:建立一個新的陣列 (重要)
-D:打印一個或多個設備的詳細信息
-E:打印設備上的超級塊的內容
-h:幫助信息,用在以上選項後,則顯示該選項信息
-v:顯示細節
-b:較少的細節。用於-D和-E選項
-f, --force 強制執行
-c:指定配置文件,缺省爲 /etc/mdadm.conf
-s:掃描配置文件或 /proc/mdstat以搜尋丟失的信息。
create 或 build 使用的選項:
-c:指定塊大小,單位 kb. 缺省爲 64.
-l,:設定RAID模式.(很是重要)
-n=:指定陣列中可用設備數目。
-x :指定初始陣列的熱備盤數目。
-a, --auto{=no,yes,md,mdp,part,p}{NN} :建立RAID同時是否建立設備。
例:使用sdb sdc 建立raid0
mdadm -C /dev/md0 -l 0 -n 2 /dev/sd{b,c}1
raid查看方法
cat /proc/mdstat mdadm --detail /dev/mdXXX
刪除raid (刪除raid前須要卸載對應的掛載點)
mdadm --stop /dev/mdXXXX