主要內容:(筆記總結--會不定時補充、修改,如有錯誤,歡迎指正探討)
一、 RAID詳解 二、 mdadm工具介紹 三、 創建一個RAID的基本過程 四、 磁盤陣列的管理 五、 RAID優化
RAID詳解:
描述:RAID:(Redundant Array of indenpensive Disk) 獨立磁盤冗余陣列: 磁盤陣列是把多個磁盤組成一個陣列,當作單一磁盤使用,它將數據以分段(striping)的方式儲存在不同的磁盤中,存取數據時,陣列中的相關磁盤一起動作,大幅減低數據的存取時間,同時有更佳的空間利用率。磁盤陣列利用的不同的技術,稱為RAID level,不同的level針對不同的系統及應用,以解決數據安全的問題。簡單來說,RAID把多個硬盤組合成為一個邏輯扇區,因此,操作系統只會把它當作一個硬盤。 一般高性能的磁盤陣列都是以硬件的形式來達成,進一步的把磁盤存取控制及磁盤陣列結合在一個控制器(RAID controler)或控制卡上,針對不同的用戶解決人們對磁盤輸輸入輸出系統的四大要求: (1)增加存取速度, (2)容錯(fault tolerance),即安全性 (3)有效的利用磁盤利用率; (4)盡量的平衡CPU,內存及磁盤的性能差異,提高主機的整體工作性能。可提供的功能:
1.冗余(容錯)
2.性能提升RAID分類: 1. 硬件RAID:用RAId接口卡來實現;需要內核支持其驅動,并且該類設備設備顯示為SCSI設備,代號為/dev/sd*2. 軟件RAID:用內核中的MD(multiple devices)模塊實現,該類設備在/etc/下表示為:md*;在現在的RH 5版本中使用mdadm工具管理軟RAID;(雖然來說可以用軟件模擬實現raid,但是相對對磁盤控制的功能及性能不如硬件實現的好,生產環境中最好使用硬件raid幾種常見RAID類型描述:
圖示:

1. RAID-0 :striping(條帶模式),至少需要兩塊磁盤,做RAID分區的大小最好是相同的(可以充分發揮并優勢);而數據分散存儲于不同的磁盤上,在讀寫的時候可以實現并發,所以相對其讀寫性能最好;但是沒有容錯功能,任何一個磁盤的損壞將損壞全部數據;
2. RAID-1:mirroring(鏡像卷),至少需要兩塊硬盤,raid大小等于兩個raid分區中最小的容量(最好將分區大小分為一樣),可增加熱備盤提供一定的備份能力;數據有冗余,在存儲時同時寫入兩塊硬盤,實現了數據備份;但相對降低了寫入性能,但是讀取數據時可以并發,幾乎類似于raid-0的讀取效率;
3. RAID-5 :需要三塊或以上硬盤,可以提供熱備盤實現故障的恢復;采用奇偶效驗,可靠性強,且只有同時損壞兩塊硬盤時數據才會完全損壞,只損壞一塊硬盤時,系統會根據存儲的奇偶校驗位重建數據,臨時提供服務;此時如果有熱備盤,系統還會自動在熱備盤上重建故障磁盤上的數據;
存儲方式:簡單來說就是,磁盤陣列的第一個磁盤分段是校驗值,第二個磁盤至后一個磁盤再折回第一個磁盤的分段是數據,然后第二個磁盤的分段是校驗值,從第三個磁盤再折回第二個磁盤的分段是數據,以此類推,直到放完數據為止。這樣數據與校驗值的循環分離存儲就可以達到一定的故障重建功能;但是raid-5的控制較為復雜,且計算大量的校驗碼,可能給系統造成額外計算的負擔(軟raid來說,硬件有自己的數據處理能力)
注:RAID中的容錯表示即使磁盤故障,數據仍能保持完整,可讓系統存取到正確的數據,而SCSI的磁盤陣列更可在工作中抽換磁盤,并可自動重建故障磁盤的數據。
熱備份(hot spare or hot standby driver):為了加強容錯的功能以及使系統在磁盤故障的情況下能迅速的重建數據,以維持系統的性能,一般的磁盤陣列系統都可使用熱備份(hot spare or hot standby driver)的功能,所謂熱備份是在建立(configure) 磁盤陣列系統的時候,將其中一磁盤指定為后備磁盤,該磁盤在平常并不操作,但若陣列中某一磁盤發生故障時,磁盤陣列即以后備磁盤取代故障磁盤,并自動將故障磁盤的數據重建(rebuild)在后備磁盤之上,因為反應快速,加上快取內存減少了磁盤的存取, 所以數據重建很快即可完成,對系統的性能影響很小。
在任何時候都不要用同一個硬盤上的多個區來做RAID,那樣不僅不能提高系統的性能,反而會大大降低整體系統的系能;
對上面幾種常用的RAID類型分析后,可知,RAID-0主要可以提高磁盤性能,RAID-1主要可以實現備份容錯(RAID-5由于控制機制復雜在此暫不使用),所以可以在實際生產環境下考慮結合RAID-0和RAID-1來實現磁盤存儲系統的高性能、高容錯。
下面圖示的兩種raid結合方式解析:

對于一:底層分別用有兩塊硬盤的raid0實現高并發,再集合兩個raid0組實現冗余;下層的任意一個raid0組中有任意一塊硬盤會使改組失效,但是兩外一個組仍能提供全部數據;
對于二:底層用raid-1實現數冗余,上層用raid-2實現高并發,該種結構中任意一個硬盤的故障,不對本組整體數據工作構成破壞性影響;所以感覺該種方案更優異,在實際生產中有部分應用(具體配置過程再文章最后附);
mdadm工具介紹:
描述: mdadm(multiple devices admin)是 linux下標準的的軟raid管理工具,是一個模式化工具(在不同的模式下);程序工作在內存用戶程序區,為用戶提供RAID接口來操作內核的模塊,實現各種功能;RedHat已經內置了該工具;官方最新的版本應該是3.2,需要最新版本可以到官方網站下載或http://www.kernel.org/pub/linux/utils/raid/mdadm/下載源碼包進行編譯安裝(官網一直打不開o( 主站蜘蛛池模板: 连州市| 宜兴市| 赣榆县| 喀喇| 理塘县| 尚义县| 安阳市| 日土县| 柘城县| 木里| 夏津县| 元阳县| 故城县| 德惠市| 固阳县| 和平区| 金昌市| 上虞市| 临漳县| 明水县| 武宁县| 容城县| 华安县| 迭部县| 太和县| 岑溪市| 前郭尔| 兴和县| 海盐县| 焦作市| 潮安县| 鱼台县| 个旧市| 涟源市| 潜山县| 阜阳市| 陇川县| 吉林市| 清原| 凤城市| 建宁县|