1. 程式人生 > >龍芯3B2000四路伺服器的RAID搭建

龍芯3B2000四路伺服器的RAID搭建

http://www.loongson.cn/news/company/501.html

簡介:
       RAID是冗餘磁碟陣列(Redundant Array of Inexpensive Disk)的簡稱。它是把多個磁碟組成一個陣列,當作單一磁碟使用。它將資料以分段(striping)的方式分散儲存在不同的磁碟中,通過多個磁碟的同時讀寫,來減少資料的存取時間,並且可以利用不同的技術實現資料的冗餘,即使有一個磁碟損壞,也可以從其他的磁碟中恢復所有的資料。簡單地說,其好處就是:安全性高、速度快、資料容量大。
       磁碟陣列根據其使用的技術不同而劃分了等級,稱為RAID level,目前公認的標準是RAID 0~RAID 5。下面對RAID 5進行簡單的介紹。RAID5特點:以資料的校驗位來保證資料的安全,但它不是以單獨硬碟來存放資料的校驗位,而是將資料段的校驗位互動存放於各個磁碟上(圖1)。任何一個磁碟損壞,都可以根據其他磁碟上的校驗位來重建損壞的資料。並行讀寫資料,效能也很高。

圖一:RAID5原理

磁碟利用數:n-1,且最低需要3塊硬碟

1.搭建環境準備:

硬體:龍芯3B2000的四路伺服器,3塊相同容量的硬碟,1塊系統盤;
作業系統:Loongnix1.0系統;
相關軟體:mdadm(搭建RAID);

2.具體操作

1、   安裝好3塊預備RAID的硬碟;

2、   取得root使用者許可權,本文所有操作均需要root級許可權;

3、格式化除系統盤之外的3塊硬碟,這裡我們統一選擇格式化為ext3格式;
4、準備mdadm程式      
mdadm是multiple devices admin的簡稱,它是Linux下的一款標準的軟體 RAID管理工具;
通過龍芯的源直接:yum install mdadm 即可安裝成功
5、製作RAID
a.       mdadm --create --verbose /dev/md0 --level=raid5 --raid-devices=3 /dev/sdb /dev/sdc   /dev/sdd
 --create --verbose /dev/md0建立/dev/md0裝置,
--level=raid5:raid的級別這裡為raid5,
--raid-devices=3:幾塊硬碟做為RUN
b.      檢視RAID陣列情況
cat /proc/mdstat
                     建立RAID過程需要很長時間,因為磁碟要進行同步化操作,檢視/proc/mdstat                  檔案,該檔案顯示RAID的當前狀態和同步完成所需要的時間。如下:
              personalities :[raid6] [raid5] [raid4]
                     md0 : active raid5 sdc[1] sdd[2] sdb[0]
              1953524992 blocks level 5, 64k chunk, algorithm 2 [3/2] [UU_]
              [>....................] recovery = 4.3% (1622601/37734912) finish=1.0min speed=15146K/sec
              unused devices:
              當新建或重構完成後,再次檢視/proc/mdstat檔案。下文表示同步成功:
              Personalities : [raid6] [raid5] [raid4]
              md0 : active raid5 sdc[1] sdd[2] sdb[0]
                  1953524992 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
              unused devices: <none>
       各部分所代表的意思如下:“[3/3]”中的第一位數表示陣列所包含的裝置數,第二位數表示活動的裝置數,如果有一個裝置損壞,則第二位數將減1;“[UUU]”標記當前陣列可以正常使用的裝置情況,現假設/dev/sdb出現故障,則該標記將變成 [_UU],這時的陣列以降級模式執行,即該陣列仍然可用,但是不再具有任何冗餘;“sdd[2]”指陣列所包含的裝置數為n,若方括號內的數值小於 n,則表示該裝置為活動裝置,若數值大於等於n,則該裝置為備份裝置,當一個裝置出現故障的時候,相應裝置的方括號後將被標以(F)。
6、格式化RAID5磁碟
RAID5已經啟動並處於執行狀態,現在要做的就是在其上建立一個檔案系統。這裡我們選擇格式化成ext3格式#mkfs.ext3 /dev/md0
7、掛載RAID5磁碟
當新的檔案系統生成之後,就可以將/dev/md0掛接到指定的目錄了:
a.       新建一個資料夾:#mkdir /raid5;
b.      掛載/dev/md0 到 /raid5 上:#mount /dev/md0  /raid5;
c.       可以直接使用磁碟了;
8、生成配置檔案
              mdadm的預設配置檔案為/etc/mdadm.conf,它主要是為了方便陣列的日常管理而設定的,非必須的。
              在mdadm.conf檔案中要包含兩種型別的行:一種是以DEVICE開頭的行,它指明在陣列中的裝置列表;另一種是以ARRAY開頭的行,它詳細地說明了陣列的名稱、模式、陣列中活動裝置的數目以及裝置的UUID號。格式如下:
       DEVICE /dev/sdb /dev/sdc /dev/sdd 
       ARRAY /dev/md0 level=raid5 num-devices=3 UUID=8f128343:715a42df: baece2a8
       以上的這些資訊可以通過掃描系統的陣列來獲取,命令為:
       # mdadm  -Ds (或者 #mdadm --detail scan)
       ARRAY /dev/md0 level=raid5 num-devices=3 UUID=6ecd420a:ff66d6de:bfe78010:bc810f04
       devices=/dev/sdb,/dev/sdc,/dev/sdd
       按照規定的格式編輯修改/etc/mdadm.conf檔案
       # vim/etc/mdadm.conf

3.常用RAID維護命令

1、啟動陣列
       # mdadm -As /dev/md0
       該命令指啟動/dev/md0陣列,其中“-A”指裝載一個已存在的陣列;“-s”指查詢mdadm.conf檔案中的配置資訊,並以此為依據啟動陣列。
       #mdadm -As
       該命令指啟動mdadm.conf檔案中的所有陣列。
       #mdadm -A /dev/md0 /dev/sd[b,c,d]
       如果沒有建立mdadm.conf檔案則可以採用上面這種啟動方式。
2、停止陣列
# mdadm -S /dev/md0
3、顯示指定陣列的詳細資訊
# mdadm -D /dev/md0

4.總結:

本文驗證了RAID在龍芯主機和伺服器平臺上的搭建過程,證明了龍芯平臺可以提供安全高效能的儲存系統。
更多Loongnix技術資訊請訪問龍芯社群(http://www.loongnix.org)進行更深入的了、學習。
相關資料:
[1] https://en.wikipedia.org/wiki/RAID
[2] https://en.wikipedia.org/wiki/Mdadm

1.png