01.11 使用linux構建raid磁盤陣列

使用linux構建raid磁盤陣列

使用linux構建raid磁盤陣列

再正式開始構建raid磁盤陣列之前先科普一波raid的基礎知識,希望能幫助一些剛開始接觸這方面的人

raid0

簡單的講就是把多塊物理磁盤通過硬件或者軟件的方式,組成一個大的卷組,並將數據依次寫入各個磁盤中,在理想狀態下速度會提高兩倍至數倍,但是伴隨而來的問題,比如數據損壞問題,會使安全性大大獎勵(例:一個硬盤數據損壞率1%,那麼十個硬盤的損壞率為原來的十倍)

優點:速度快

缺點:安全性低

raid1

雖然RAID 0技術提升了硬盤設備的讀寫速度,但是它是將數據依次寫入到各個物理硬盤中,也就是說,它的數據是分開存放的,其中任何一塊硬盤發生故障都會損壞整個系統的數據。因此,如果生產環境對硬盤設備的讀寫速度沒有要求,而是希望增加數據的安全性時,就需要用到RAID 1技術了。

由下圖可以看出,原理為將多塊硬盤進行綁定,在寫數據的時候將同一數據寫入到多塊磁盤中,那麼當某硬盤損壞時,可以立即從啟動熱交換來恢復數據

優點:安全性高

缺點:磁盤利用率只有50%甚至更低

raid5

RAID5技術是把硬盤設備的數據奇偶校驗信息保存到其他硬盤設備中。RAID 5磁盤陣列組中數據的奇偶校驗信息並不是單獨保存到某一塊硬盤設備中,而是存儲到除自身以外的其他每一塊硬盤設備上,這樣的好處是其中任何一設備損壞後不至於出現致命缺陷;下圖中parity部分存放的就是數據的奇偶校驗信息,換句話說,就是RAID 5技術實際上沒有備份硬盤中的真實數據信息,而是當硬盤設備出現問題後通過奇偶校驗信息來嘗試重建損壞的數據。RAID這樣的技術特性"妥協"地兼顧了硬盤設備的讀寫速度、數據安全性與存儲成本問題。

使用linux構建raid磁盤陣列

raid10

關於raid10我想不用多說看名字raid0+raid1的組合即為raid10.

先對磁盤做raid1的備份陣列,再多已經做了raid1的磁盤陣列做raid0,這樣就實現了數據的安全性和速度的雙重穩固,雖說成本較高,但是對大多數企業來說更在乎的應該是數據的安全性問題

使用linux構建raid磁盤陣列

開始部署磁盤陣列

我的環境為vmware的虛擬機下模擬的,原諒小編沒有太多錢去買那麼多磁盤

如圖所示四個2g的scsi硬盤

mdadm命令

用於管理Linux系統中的軟件RAID硬盤陣列,格式為"mdadm [模式] <raid> [選項] [成員設備名稱]"。/<raid>

常用的命令及參數如下

使用linux構建raid磁盤陣列

接下來是硬盤的相關配置,關於硬盤的

udev是Linux系統內核中用來給硬件命名的服務,其命名規則也非常簡單。我們可以通過命名規則猜測到第二個SCSI存儲設備的名稱會是/dev/sdc,然後依此類推。使用硬盤設備來部署RAID磁盤陣列很像是將幾位同學組成一個班級,但總不能將班級命名為/dev/sdbcde吧。儘管這樣可以一眼開出它是由哪些元素組成的,但是並不利於我們的記憶和閱讀。更何況如果我們是使用10、50、100個硬盤來部署RAID磁盤陣列呢?

此時,就需要使用mdadm中的參數了。其中,-C參數代表創建一個RAID陣列卡;-v參數顯示創建的過程,同時在後面追加一個設備名稱/dev/md0,這樣/dev/md0就是創建後的RAID磁盤陣列的名稱;-a yes參數代表自動創建設備文件;-n 4參數代表使用4塊硬盤來部署這個RAID磁盤陣列;而-l 10參數則代表RAID 10方案;最後再加上4塊硬盤設備的名稱就搞定了

使用linux構建raid磁盤陣列

執行命令

使用linux構建raid磁盤陣列

格式化

前面幾篇文章講過,格式化的目的是:讓linux系統讀取文件信息

使用linux構建raid磁盤陣列

掛載

使用linux構建raid磁盤陣列

最後,查看/dev/md0磁盤陣列的詳細信息,並把掛載信息寫入到配置文件中,使其永久生效

使用linux構建raid磁盤陣列

此時raid已經配置完成了,由於小編是在虛擬機上面進行模擬的所以速度肯定不會有太大的變化


分享到:


相關文章: