1. 程式人生 > >linux配置磁盤陣列raid 0、raid1 、raid5 、raid6 、raid10

linux配置磁盤陣列raid 0、raid1 、raid5 、raid6 、raid10

inux 單個 奇偶數 centos 文件系統 就是 文件 部分 現在

首先我們了解一下各種raid卷的特性和原理。

1,raid0的特性:采用剝離,數據將在幾個磁盤上進行分割。數據被分成很多數據塊,每一數據塊會被寫入不同的磁盤。從而, 每一磁盤的工作負荷都得到了降低,這有助於加速數據傳輸。RAID-0可讓磁盤更好地響應,尤其是電子郵件、數據庫和互聯網應用。實施RAID-0最少需 要兩塊硬盤。優勢:通過把I/O負載分布到多個硬盤上,可提高系統性能。實施簡單。需要註意的是:RAID-0不具有數據保護功能,不適合於關鍵數據。

2,raid1的特性:RAID-1通過磁盤鏡像來實現,主要用來確保數據的可靠性。同樣的數據將被復制存儲到不同的磁盤上,如果某個磁盤出現 故障,還可以在陣列內的某個磁盤上找到相應的數據,因此可以很容易地進行恢復。鏡像不但可以創建冗余數據而帶來高可用性,還可以保持關鍵應用的正常運行。 優勢:數據讀取的性能有所提高,而數據寫入性能與單個磁盤沒有區別。100%數據冗余意味著某個出現磁盤故障時不需要對數據進行重建。需要註意的是:磁盤容量的低效率使用-在所有RAID類型中費用最高(100%)。

3,raid10的特性:RAID-10是RAID-1和RAID-0的結合。此配置要求至少4塊硬盤,在所有RAID等級中,性能、保護功能 及容量都是最佳的。RAID-10包含成對的鏡像磁盤,其數據在整個陣列上進行剝離。多數情況下,RAID-10能夠承受多個磁盤出現故障的情況,因此更 能保證系統的正常運行。其數據丟失的幾率最小。優勢:與RAID-1(鏡像)有同樣的冗余特性,是數據保護的理想選擇。需要註意的是:可能價格很高,與鏡像磁盤陣列有關。

4,raid5的特性:RAID-5通過一種稱為奇偶檢驗的技術保持數據的冗余。在多個磁盤上進行數據剝離時,奇偶位數據也會包括在內並分布於 陣列內的所有磁盤上。奇偶數據用於保持數據的完整性並在磁盤出現故障時進行重建。如果陣列內的某個磁盤出現故障,丟失的數據可以根據其它磁盤上的奇偶位數 據進行重建。RAID-5配置要求至少3塊硬盤。優勢:更有效地利用所有冗余RAID配置的磁盤容量。保持良好的讀寫性能。需要註意的是:磁盤故障會影響 吞吐速率。故障後重建信息的時間比鏡像配置情況下要長。

5,raid50的特性:RAID-50是RAID-5與RAID-0的結合。此配置在RAID-5的子磁盤組的每個磁盤上進行包括奇偶信息在 內的數據的剝離。每個RAID-5子磁盤組要求三個硬盤。RAID-50具備更高的容錯能力,因為它允許某個組內有一個磁盤出現故障,而不會造成數據丟 失。而且因為奇偶位分部於RAID-5子磁盤組上,故重建速度有很大提高。優勢:更高的容錯能力,具備更快數據讀取速率的潛力。需要註意的是:磁盤故障會 影響吞吐量。故障後重建信息的時間比鏡像配置情況下要長。

6,raid6的特性:

RAID6的性能:

  (1)RAID6的隨機讀取性能:很好(當使用大數據塊時)。

  (2)RAID6的隨機寫入性能:差,因為不但要在每硬盤上寫入校驗數據而且要在專門的校驗硬盤上寫入數據。

  (3)RAID6的持續讀取性能:好(當使用小數據塊時)。

  (4)RAID6的持續寫入性能:一般。

  (5)RAID6的優點:快速的讀取性能,更高的容錯能力。

  (6)RAID6的缺點:很慢的寫入速度,RAID控制器在設計上更加復雜,成本更高。

7.raid60的特性:

具備更高的容錯性,支持同時兩塊硬盤出現故障的修復功能,和更高的讀性能。技術上還存在一定的問題,不夠成熟,目前很少使用者。

覺得字多看簡單原理

raid 0多塊大小相同的磁盤相連使用(高並發讀寫)(不便於擴展)

總容量等於多塊磁盤之和,磁盤大小必須相同。

缺點:一旦某塊磁盤損壞則數據丟失。

raid1卷 兩塊以上大小相同的磁盤組成(高可靠性)

總容量=2/1磁盤容量 磁盤大小必須相同

磁盤損壞數據可以恢復 中斷鏡像卷則變為簡單卷

raid5卷三塊以上大小相同的磁盤組成(高讀寫 高安全)

總容量=N-N/1*磁盤所有容量和(所有磁盤容量減去一塊磁盤容量)

磁盤大小必須相同,磁盤損壞可回復數據,可以損壞一塊硬盤。

raid6 :所有磁盤容量之和減去兩塊磁盤容量

四塊以上大小相同的磁盤(非常可靠)

可同時損壞兩個磁盤

寫入性能不如raid5

raid1+0:四塊以上大小相同磁盤

所有磁盤容量的一半(高讀寫,高可靠)

一個鏡像卷組丟失則數據丟失

------------------------------------------------------------------------------------------------------------------------------------------------------------

接下來是實驗部分,我會拿出具有代表性的幾種卷進行操作。

實驗環境:一臺裝有linux redhat6.5系統的機器,這裏用了虛擬機並且添加了12快磁盤進去。

操作系統 : CentOS 6.5 IP 地址 : 192.168.10.100 主機名 : zred 磁盤 1-12 [20GB] : /dev/sd[b-m]

技術分享圖片

無腦回車即可,啪啪啪。

===raid 5===

創建 RAID 5 最少需要3個磁盤,你也可以添加更多的磁盤,在這裏,我們使用“mdadm”包來創建軟件 RAID。

mdadm 是一個允許我們在 Linux 下配置和管理 RAID 設備的包。

一.這裏我們使用b-d磁盤,但是你的系統可能會缺少“mdadm”包,如果沒有,根據你的 Linux 發行版使用下面的命令安裝。

# yum install mdadm [在 RedHat/centos 系統]

# apt-get install mdadm [在 Debain 系統]

二.先使用fdisk命令列出我們在系統上增加的硬盤。

[root@zred ~]# fdisk -l | grep sd

技術分享圖片

三.現在該檢查這三個磁盤是否存在 RAID 塊,使用下面的命令來檢查。

[root@zred ~]# mdadm -E /dev/sd[b-d]

技術分享圖片

上面的圖片說明,沒有檢測到任何超級塊。所以,這三個磁盤中沒有定義 RAID。我們現在開始創建一個。

四.對磁盤進行分區。

在創建 RAID 前磁盤必須有分區,因此,在進行下一步之前,先使用fdisk命令進行分區。

按照下面的說明在 /dev/sdb 硬盤上創建分區:

[root@zred ~]# fdisk /dev/sdb //開始創建

1.按 n 創建新的分區。

2.然後按 P 選擇主分區。選擇主分區是因為還沒有定義過分區。

3.接下來選擇分區號為1。默認就是1。

4.這裏是選擇柱面大小,我們沒必要選擇指定的大小,因為我們需要為 RAID 使用整個分區,所以只需按兩次 Enter 鍵默認將整個容量分配給它。

5.然後,按 P 來打印創建好的分區。

6.改變分區類型,按 L可以列出所有可用的類型。

7.按 t 修改分區類型。

8.這裏使用fd設置為 RAID 的類型。

9.然後再次使用p查看我們所做的更改。

10.使用w保存更改。

如圖:

技術分享圖片

重復以上步驟,吧sdc和sdd也創建好分區。

之後我們使用:

[root@zred ~]# mdadm -E /dev/sd[b-d] //查看三個磁盤的變化。

技術分享圖片


四.現在使用所有新創建的分區(sdb1, sdc1 和 sdd1)創建一個 RAID 設備“md0”(即 /dev/md0)。

命令如下:

[root@zred ~]# mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

接著使用:

[root@zred ~]# cat /proc/mdstat //查看創建狀態

如圖:

技術分享圖片

在等待進度條時你也可以使用:

[root@zred ~]# watch -n1 cat /proc/mdstat //利用watch跟蹤監視它的創建過程

五.驗證

以下命令來驗證一下:

[root@zred ~]# mdadm -E /dev/sd[b-d]1

技術分享圖片

驗證 RAID 陣列:

[root@zred ~]# mdadm --detail /dev/md0

技術分享圖片

六.格式化與掛載。

為“md0”設備創建 ext4 文件系統(格式化)

[root@zred ~]# mkfs.ext4 /dev/md0

技術分享圖片


/mnt下創建目錄 raid5,然後掛載文件系統到 /mnt/raid5/ 下,這裏我們使用自動掛載方式,以放下次開機丟失掛載。

[root@zred ~]# mkdir /mnt/raid5 //創建raid5 的目錄
[root@zred ~]# vim /etc/fstab //修改自動掛載配置文件

/dev/md0 /mnt/raid5 ext4 defaults 0 0 //在fstab行末添加這句話

技術分享圖片


驗證下掛載

[root@zred dev]# mount –a //掛載配置文件中的選項

[root@zred dev]# df –h //查看已經掛載的文件


技術分享圖片

保存 Raid 5 的配置:

[root@zred dev]# mdadm --detail --scan --verbose >> /etc/mdadm.conf
[root@zred dev]# cat /etc/mdadm.conf //查看配置

技術分享圖片


raid 5到這就配置好了!

----raid 10----

要求:在 RAID 10 中,我們至少需要4個磁盤,前2個磁盤為 RAID 1,其他2個磁盤為 RAID 0。

經過上面的詳細raid5配置相信大家都熟悉了操作步驟,下面我們用/sd[e-h]簡單配置一下raid10。

一.分區與檢測磁盤。

使用fdisk,命令為4個磁盤(/dev/sde, /dev/sdf, /dev/sdg 和 /dev/sdh)創建新分區。

#fdisk/dev/sde

#fdisk/dev/sdf

#fdisk/dev/sdg

#fdisk/dev/sdh

設置完後查看下:

[root@zred dev]# fdisk -l /dev/sd[e-h]

技術分享圖片

檢查磁盤是否存在 raid:

[root@zred dev]# mdadm -E /dev/sd[e-h]

技術分享圖片

二.創建raid10卷。

確定mdadm工具安裝完成後,開始創建raid。

[root@zred dev]# mdadm --create /dev/md10 --level=10 --raid-devices=4 /dev/sd[e-h]1

技術分享圖片

檢查一下

[root@zred ~]# mdadm --detail /dev/md10

技術分享圖片

三.格式化與掛載。

格式化:

[root@zred ~]# mkfs.ext4 /dev/md10

技術分享圖片

添加自動掛載:

[root@zred ~]# mkdir /mnt/raid10 //創建掛載目錄

[root@zred ~]# vim /etc/fstab //編輯配置文件

技術分享圖片

[root@zred ~]# mount –a //掛載起來

[root@zred ~]# df –h //查看一下


技術分享圖片

最後:

[root@zred ~]# mdadm --detail --scan --verbose >> /etc/mdadm.conf //保存 RAID 配置

總結

本文主要描述了各式raid卷的特征和原理,並在後面詳細的說明了怎麽配置其中的raid5與raid10.設置完成後可以在掛載點下創建一些文件,並在文件中添加些內容,然後檢查內容。以驗證。

此致

linux配置磁盤陣列raid 0、raid1 、raid5 、raid6 、raid10