RAID介紹:
磁碟陣列既本文中所講的RAID,其具有提高磁碟操作效率及容錯的功能。RAID分為硬RAID和軟RAID,硬RAID是基於磁碟陣列卡的,而軟RAID則是使用軟體管理,本文中所述的RAID屬於軟RAID。
各個RAID型別的簡單介紹:
RAID0:至少需要兩塊磁碟,提高讀寫效能,沒有容錯能力。磁碟利用率為:100% RAID1:至少需要兩塊硬碟,映象資料,具有容錯能力,讀的效能提升,寫的效能下降。磁碟利用率為: 50% RAID4:至少需要三塊硬碟,允許一塊出錯,讀寫效能提升。磁碟利用率為: (n-1)/n RAID5:至少需要三塊硬碟,允許一塊出錯,讀寫效能提升。磁碟利用率為: (n-1)/n RAID6:至少需要四塊硬碟,允許兩塊出錯,讀寫效能提升。磁碟利用率為:(n-2)/n RAID10:至少需要四塊硬碟,允許不同組內各壞一塊盤,讀寫效能提升。磁碟利用率為:50
環境準備:
本文中使用VirtualBox虛擬機器,你也可以使用VMware的虛擬機器。虛擬機器中安裝好CentOS 6.5版本後,新增四塊大小為10GB的SCSI硬碟,此處硬碟介面型別可隨意。
軟體包安裝:
# yum install -y mdadm //mdadm是Linux下的軟RAID管理程式。
軟RAID建立方法:
檢視剛剛新增的硬碟。
# lsblk
若剛才新增的硬碟不顯示,則重啟系統後再次檢視,重啟命令如下。
# reboot
下面我將帶你建立一個RAID10來了解CentOS 6下軟RAID建立和管理的流程。
RAID10是RAID1和RAID0組合在一起的一種形式,兼具兩者的優點,在企業中比較常用。製作時先做RAID1再做RAID0,如下圖中就是本例中的RAID10的建立方案。結合圖片可以很容易理解,RAID10就是兩組高可靠的RAID1被使用RAID0組合在一起增加了效能。
具體步驟如下。
一、先為每塊硬碟新建一個分割槽,並將分割槽型別修改為RAID。此處需注意的是:加入到同一個RAID的不同硬碟上的分割槽的大小最好相同,否則以容量最小的分割槽的容量作為同一RAID在所有硬碟上的可用容量,其餘空間則浪費掉。
這裡只以/dev/sdb為例說明,其餘硬碟按照需求參考此步驟操作即可。
使用fdisk工具編輯/dev/sbd硬碟的分割槽表,本例中為每塊硬碟建立1個主分割槽,每個主分割槽使用全部硬碟空間。
# fdisk /dev/sdb
fdisk工具的使用方法這裡不做詳細說明,如需瞭解可參考此篇文章。
檢視劃分完的分割槽。
二、將分割槽型別修改為RAID,預設為Linux。
在fdisk程式中輸入t,隨後會要求你輸入要將分割槽更改為的型別的程式碼,並提示可以輸入L或list列出所有可選的型別的程式碼。
注意,如果硬碟中存在多個分割槽(本例中一塊硬碟只有一個分割槽),那輸入t後還會要求你輸入要更改分割槽型別的分割槽的編號,如下圖中,我選擇為1號分割槽更改分割槽型別。
輸入L,檢視所有可選型別。
如上圖紅色箭頭標記的,我們要將分割槽型別修改為Linux raid auto,輸入他的程式碼:fd,而後會彈出一個修改成功的提示。
將所有硬碟的所有分割槽都按照如上步驟修改其分割槽型別。
全部修改完後,檢視所有磁碟。
# lsblk
上圖中,可以看到每塊硬碟下都有我們剛剛新建的分割槽,若你看不到分割槽也不用著急,可以執行下面的命令後再次檢視。
# partprobe //使系統核心立即讀取新的分割槽表資訊
若Shell提示找不到partprobe命令則可以參考此篇文章解決。
三、使用mdadm工具建立並管理軟RAID
使用mdadm工具將/dev/sdb、/dev/sdc、/dev/sdd、/dev/sde這四塊硬碟組建成RAID10。
# mdadm -C /dev/md10 -a yes -l 10 -n 4 /dev/sd{b,c,d,e}1 //不要看命令好長就覺得頭暈,可以結合下面的命令引數解釋來試著理解這條命令中每一部分的含義。
執行後,返回資訊提示已經成功建立。
在組建RAID時若彈出以下提示是警告你:軟RAID不能用作啟動盤,是否還繼續建立軟RAID,輸入“y”確認即可。
若出現下圖這種提示是因為磁碟之前做過一次RAID,也輸入y確認。
以下是mdadm工具各個引數的詳細說明:
-A 裝配模式 //暫時沒搞懂是怎麼用的,如果你知道的話歡迎留言。 -C 建立模式 建立模式專用選項: -n 用於建立RAID裝置的個數 -x 熱備磁碟的個數 -l 指定RAID級別 -a 引數值:yes(自動為建立的RAID裝置建立裝置檔案) -c 指定塊的大小,預設為512KB -F FOLLOW 監控 -S 停止RAID -D 顯示陣列詳細資訊 例如: # mdadm -C /dev/md10 -a yes -l 10 -n 4 /dev/sd{b,c,d,e}1 //此條命令就是本文中建立RAID10的命令,現在可以結合引數的幫助文件來理解啦! 管理模式命令: -f 將一塊硬碟標記為損壞 -r 移除裝置 -a 新增新裝置 例如: # mdadm /dev/md0 -a /dev/sdb1 //這裡將/dev/sdb1這塊硬碟從RAID10中移除。
需要注意的是,使用mdadm工具組建完軟RAID後要將其寫入到RAID配置檔案中,否則系統重啟後RAID裝置的名稱會變為預設的md127,而非之前指定的md10。
# mdadm -Ds > /etc/mdadm.conf
檢視剛剛建立的RAID10的資訊。
# mdadm -D /dev/md10
四、為RAID裝置指定檔案系統。
這裡我將其格式化為ext4檔案系統。
# mkfs.ext4 /dev/md10
五、掛載磁碟
# mount /dev/md10 /mnt
也可以將其寫入到/etc/fstab檔案中,使其開自動掛載。
# vim /etc/fstab