亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來(lái)到思海網(wǎng)絡(luò),我們將竭誠(chéng)為您提供優(yōu)質(zhì)的服務(wù)! 誠(chéng)征網(wǎng)絡(luò)推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購(gòu)買流程 | 付款方式 | 聯(lián)系我們 [ 會(huì)員登錄/注冊(cè) ]
促銷推廣
客服中心
業(yè)務(wù)咨詢
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352289
點(diǎn)擊這里給我發(fā)消息  81721488
有事點(diǎn)擊這里…  376585780
有事點(diǎn)擊這里…  872642803
有事點(diǎn)擊這里…  459248018
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  380791050
技術(shù)支持
有事點(diǎn)擊這里…  714236853
有事點(diǎn)擊這里…  719304487
有事點(diǎn)擊這里…  1208894568
有事點(diǎn)擊這里…  61352289
在線客服
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  983054746
有事點(diǎn)擊這里…  893984210
當(dāng)前位置:首頁(yè) >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

Raid的學(xué)習(xí)和基礎(chǔ)知識(shí)

添加時(shí)間:2018-12-4 23:35:45  添加: 思海網(wǎng)絡(luò) 
1.什么是Raid;

RAID(Redundant Array of Inexpensive Disks)稱為廉價(jià)磁盤(pán)冗余陣列。RAID 的基本想法是把多個(gè)便宜的小磁盤(pán)組合到一起,成為一個(gè)磁盤(pán)組,使性能達(dá)到或超過(guò)一個(gè)容量巨大、價(jià)格昂貴的磁盤(pán)。
目前 RAID技術(shù)大致分為兩種:基于硬件的RAID技術(shù)和基于軟件的RAID技術(shù)。其中在Linux下通過(guò)自帶的軟件就能實(shí)現(xiàn)RAID功能,這樣便可省去購(gòu)買昂貴的硬件 RAID 控制器和附件就能極大地增強(qiáng)磁盤(pán)的 IO 性能和可靠性。由于是用軟件去實(shí)現(xiàn)的RAID功能,所以它配置靈活、管理方便。同時(shí)使用軟件RAID,還可以實(shí)現(xiàn)將幾個(gè)物理磁盤(pán)合并成一個(gè)更大的虛擬設(shè)備,從而達(dá)到性能改進(jìn)和數(shù)據(jù)冗余的目的。當(dāng)然基于硬件的RAID解決方案比基于軟件RAID技術(shù)在使用性能和服務(wù)性能上稍勝一籌,具體表現(xiàn)在檢測(cè)和修復(fù)多位錯(cuò)誤的能力、錯(cuò)誤磁盤(pán)自動(dòng)檢測(cè)和陣列重建等方面。


2.RAID級(jí)別介紹;

一般常用的RAID階層,分別是RAID 0、RAID1、RAID 3、RAID 4以及RAID 5,再加上二合一型 RAID 0+1﹝或稱RAID 10﹞。我們先把這些RAID級(jí)別的優(yōu)、缺點(diǎn)做個(gè)比較: 

RAID級(jí)別 相對(duì)優(yōu)點(diǎn) 相對(duì)缺點(diǎn)
RAID 0 存取速度最快 沒(méi)有容錯(cuò)
RAID 1 完全容錯(cuò) 成本高
RAID 3 寫(xiě)入性能最好 沒(méi)有多任務(wù)功能
RAID 4 具備多任務(wù)及容錯(cuò)功能 Parity 磁盤(pán)驅(qū)動(dòng)器造成性能瓶頸
RAID 5 具備多任務(wù)及容錯(cuò)功能 寫(xiě)入時(shí)有overhead
RAID 0+1/RAID 10 速度快、完全容錯(cuò) 成本高


2.1 RAID0的特點(diǎn)與應(yīng)用;

也稱為條帶模式(striped),即把連續(xù)的數(shù)據(jù)分散到多個(gè)磁盤(pán)上存取,如圖所示。當(dāng)系統(tǒng)有數(shù)據(jù)請(qǐng)求就可以被多個(gè)磁盤(pán)并行的執(zhí)行,每個(gè)磁盤(pán)執(zhí)行屬于它自己的那部分?jǐn)?shù)據(jù)請(qǐng)求。這種數(shù)據(jù)上的并行操作可以充分利用總線的帶寬,顯著提高磁盤(pán)整體存取性能。因?yàn)樽x取和寫(xiě)入是在設(shè)備上并行完成的,讀取和寫(xiě)入性能將會(huì)增加,這通常是運(yùn)行 RAID 0 的主要原因。但RAID 0沒(méi)有數(shù)據(jù)冗余,如果驅(qū)動(dòng)器出現(xiàn)故障,那么將無(wú)法恢復(fù)任何數(shù)據(jù)。



2.2 RAID 1 的特點(diǎn)與應(yīng)用;

RAID 1又稱為鏡像(Mirroring),一個(gè)具有全冗余的模式,如圖所示。RAID 1可以用于兩個(gè)或2xN個(gè)磁盤(pán),并使用0塊或更多的備用磁盤(pán),每次寫(xiě)數(shù)據(jù)時(shí)會(huì)同時(shí)寫(xiě)入鏡像盤(pán)。這種陣列可靠性很高,但其有效容量減小到總?cè)萘康囊话,同時(shí)這些磁盤(pán)的大小應(yīng)該相等,否則總?cè)萘恐痪哂凶钚〈疟P(pán)的大小。



2.3 RAID 3特點(diǎn)與應(yīng)用;

RAID 3 是將數(shù)據(jù)先做XOR 運(yùn)算,產(chǎn)生Parity Data后,在將數(shù)據(jù)和Parity Data 以并行存取模式寫(xiě)入成員磁盤(pán)驅(qū)動(dòng)器中,因此具備并行存取模式的優(yōu)點(diǎn)和缺點(diǎn)。進(jìn)一步來(lái)說(shuō),RAID 3每一筆數(shù)據(jù)傳輸,都更新整個(gè)Stripe﹝即每一個(gè)成員磁盤(pán)驅(qū)動(dòng)器相對(duì)位置的數(shù)據(jù)都一起更新﹞,因此不會(huì)發(fā)生需要把部分磁盤(pán)驅(qū)動(dòng)器現(xiàn)有的數(shù)據(jù)讀出來(lái),與新數(shù)據(jù)作XOR運(yùn)算,再寫(xiě)入的情況發(fā)生﹝這個(gè)情況在 RAID 4和RAID 5會(huì)發(fā)生,一般稱之為Read、Modify、Write Process,我們姑且譯為為讀、改、寫(xiě)過(guò)程﹞。因此,在所有 RAID級(jí)別中,RAID 3的寫(xiě)入性能是最好的。

RAID 3的 Parity Data 一般都是存放在一個(gè)專屬的Parity Disk,但是由于每筆數(shù)據(jù)都更新整個(gè)Stripe,因此,RAID 3的 Parity Disk 并不會(huì)如RAID 4的 Parity Disk,會(huì)造成存取的瓶頸。

RAID 3的并行存取模式,需要RAID 控制器特別功能的支持,才能達(dá)到磁盤(pán)驅(qū)動(dòng)器同步控制,而且上述寫(xiě)入性能的優(yōu)點(diǎn),以目前的Caching 技術(shù),都可以將之取代,因此一般認(rèn)為RAID 3的應(yīng)用,將逐漸淡出市場(chǎng)。

RAID 3 以其優(yōu)越的寫(xiě)入性能,特別適合用在大型、連續(xù)性檔案寫(xiě)入為主的應(yīng)用,例如繪圖、影像、視訊編輯、多媒體、數(shù)據(jù)倉(cāng)儲(chǔ)、高速數(shù)據(jù)擷取等等。


2.4 RAID 4特點(diǎn)與應(yīng)用;

創(chuàng)建RAID 4需要三塊或更多的磁盤(pán),它在一個(gè)驅(qū)動(dòng)器上保存校驗(yàn)信息,并以RAID 0方式將數(shù)據(jù)寫(xiě)入其它磁盤(pán),如圖所示。因?yàn)橐粔K磁盤(pán)是為校驗(yàn)信息保留的,所以陣列的大小是(N-l)*S,其中S是陣列中最小驅(qū)動(dòng)器的大小。就像在 RAID 1中那樣,磁盤(pán)的大小應(yīng)該相等。

如果一個(gè)驅(qū)動(dòng)器出現(xiàn)故障,那么可以使用校驗(yàn)信息來(lái)重建所有數(shù)據(jù)。如果兩個(gè)驅(qū)動(dòng)器出現(xiàn)故障,那么所有數(shù)據(jù)都將丟失。不經(jīng)常使用這個(gè)級(jí)別的原因是校驗(yàn)信息存儲(chǔ)在一個(gè)驅(qū)動(dòng)器上。每次寫(xiě)入其它磁盤(pán)時(shí),都必須更新這些信息。因此,在大量寫(xiě)入數(shù)據(jù)時(shí)很容易造成校驗(yàn)磁盤(pán)的瓶頸,所以目前這個(gè)級(jí)別的RAID很少使用了。
RAID 4 是采取獨(dú)立存取模式,同時(shí)以單一專屬的Parity Disk 來(lái)存放Parity Data。RAID 4的每一筆傳輸﹝Strip﹞資料較長(zhǎng),而且可以執(zhí)行Overlapped I/O,因此其讀取的性能很好。

但是由于使用單一專屬的Parity Disk 來(lái)存放Parity Data,因此在寫(xiě)入時(shí),就會(huì)造成很大的瓶頸。因此,RAID 4并沒(méi)有被廣泛地應(yīng)用。


2.5 RAID 5特點(diǎn)與應(yīng)用;

在希望結(jié)合大量物理磁盤(pán)并且仍然保留一些冗余時(shí),RAID 5 可能是最有用的 RAID 模式。RAID 5可以用在三塊或更多的磁盤(pán)上,并使用0塊或更多的備用磁盤(pán)。就像 RAID 4一樣,得到的 RAID5 設(shè)備的大小是(N-1)*S。

RAID5 與 RAID4 之間最大的區(qū)別就是校驗(yàn)信息均勻分布在各個(gè)驅(qū)動(dòng)器上,如圖4所示,這樣就避免了RAID 4中出現(xiàn)的瓶頸問(wèn)題。如果其中一塊磁盤(pán)出現(xiàn)故障,那么由于有校驗(yàn)信息,所以所有數(shù)據(jù)仍然可以保持不變。如果可以使用備用磁盤(pán),那么在設(shè)備出現(xiàn)故障之后,將立即開(kāi)始同步數(shù)據(jù)。如果兩塊磁盤(pán)同時(shí)出現(xiàn)故障,那么所有數(shù)據(jù)都會(huì)丟失。RAID5 可以經(jīng)受一塊磁盤(pán)故障,但不能經(jīng)受兩塊或多塊磁盤(pán)故障。
RAID 5也是采取獨(dú)立存取模式,但是其Parity Data 則是分散寫(xiě)入到各個(gè)成員磁盤(pán)驅(qū)動(dòng)器,因此,除了具備Overlapped I/O 多任務(wù)性能之外,同時(shí)也脫離如RAID 4單一專屬Parity Disk的寫(xiě)入瓶頸。但是,RAI?D 5在座資料寫(xiě)入時(shí),仍然稍微受到"讀、改、寫(xiě)過(guò)程"的拖累。

由于RAID 5 可以執(zhí)行Overlapped I/O 多任務(wù),因此當(dāng)RAID 5的成員磁盤(pán)驅(qū)動(dòng)器數(shù)目越多,其性能也就越高,因?yàn)橐粋(gè)磁盤(pán)驅(qū)動(dòng)器再一個(gè)時(shí)間只能執(zhí)行一個(gè) Thread,所以磁盤(pán)驅(qū)動(dòng)器越多,可以O(shè)verlapped 的Thread 就越多,當(dāng)然性能就越高。但是反過(guò)來(lái)說(shuō),磁盤(pán)驅(qū)動(dòng)器越多,數(shù)組中可能有磁盤(pán)驅(qū)動(dòng)器故障的機(jī)率就越高,整個(gè)數(shù)組的可靠度,或MTDL (Mean Time to Data Loss) 就會(huì)降低。

由于RAID 5將Parity Data 分散存在各個(gè)磁盤(pán)驅(qū)動(dòng)器,因此很符合XOR技術(shù)的特性。例如,當(dāng)同時(shí)有好幾個(gè)寫(xiě)入要求發(fā)生時(shí),這些要寫(xiě)入的數(shù)據(jù)以及Parity Data 可能都分散在不同的成員磁盤(pán)驅(qū)動(dòng)器,因此RAID 控制器可以充分利用Overlapped I/O,同時(shí)讓好幾個(gè)磁盤(pán)驅(qū)動(dòng)器分別作存取工作,如此,數(shù)組的整體性能就會(huì)提高很多。

基本上來(lái)說(shuō),多人多任務(wù)的環(huán)境,存取頻繁,數(shù)據(jù)量不是很大的應(yīng)用,都適合選用RAID 5 架構(gòu),例如企業(yè)檔案服務(wù)器、WEB 服務(wù)器、在線交易系統(tǒng)、電子商務(wù)等應(yīng)用,都是數(shù)據(jù)量小,存取頻繁的應(yīng)用。


2.6 RAID 0+1﹝RAID 10﹞的特點(diǎn)與應(yīng)用;

RAID 0+1/RAID 10,綜合了RAID 0 和 RAID 1的優(yōu)點(diǎn),適合用在速度需求高,又要完全容錯(cuò),當(dāng)然經(jīng)費(fèi)也很多的應(yīng)用。 RAID 0和RAID 1的原理很簡(jiǎn)單,合起來(lái)之后還是很簡(jiǎn)單,我們不打算詳細(xì)介紹,倒是要談?wù),RAID 0+1到底應(yīng)該是 RAID 0 over RAID 1,還是RAID 1 over RAID 0,也就是說(shuō),是把多個(gè)RAID 1 做成RAID 0,還是把多個(gè) RAID 0 做成RAID 1?

RAID 0 over RAID 1

假設(shè)我們有四臺(tái)磁盤(pán)驅(qū)動(dòng)器,每?jī)膳_(tái)磁盤(pán)驅(qū)動(dòng)器先做成RAID 1,再把兩個(gè)RAID 1做成RAID 0,這就是RAID 0 over RAID 1:

(RAID 1) A = Drive A1 + Drive A2 (Mirrored)
(RAID 1) B = Drive B1 + Drive B2 (Mirrored)
RAID 0 = (RAID 1) A + (RAID 1) B (Striped)

RAID 1 over RAID 0

假設(shè)我們有四臺(tái)磁盤(pán)驅(qū)動(dòng)器,每?jī)膳_(tái)磁盤(pán)驅(qū)動(dòng)器先做成RAID 0,再把兩個(gè)RAID 0做成RAID 1,這就是RAID 1 over RAID 0:

(RAID 0) A = Drive A1 + Drive A2 (Striped)
(RAID 0) B = Drive B1 + Drive B2 (Striped)
RAID 1 = (RAID 1) A + (RAID 1) B (Mirrored)

在這種架構(gòu)之下,如果 (RAID 0) A有一臺(tái)磁盤(pán)驅(qū)動(dòng)器故障,(RAID 0) A就算毀了,當(dāng)然RAID 1仍然可以正常工作;如果這時(shí) (RAID 0) B也有一臺(tái)磁盤(pán)驅(qū)動(dòng)器故障,(RAID 0) B也就算毀了,此時(shí)RAID 1的兩磁盤(pán)驅(qū)動(dòng)器都算故障,整個(gè)RAID 1資料就毀了。

因此,RAID 0 OVER RAID 1應(yīng)該比RAID 1 OVER RAID 0具備比較高的可靠度。所以我們建議,當(dāng)采用RAID 0+1/RAID 10架構(gòu)時(shí),要先作RAID 1,再把數(shù)個(gè)RAID 1做成RAID 0。


3. 怎樣選擇Raid級(jí)別;

RAID 012345 到底哪一種適合你,不只是成本問(wèn)題,容錯(cuò)功能和傳輸性能的考慮以及未來(lái)之可擴(kuò)充性都應(yīng)該符合應(yīng)用的需求。
RAID 在市場(chǎng)上的的應(yīng)用,已經(jīng)不是新鮮的事兒了,很多人都大略了解RAID的基本觀念,以及各個(gè)不同RAID LEVEL 的區(qū)分。但是在實(shí)際應(yīng)用 面,我們發(fā)現(xiàn),有很多使用者對(duì)于選擇一個(gè)合適的RAID LEVEL,仍然無(wú)法很確切的掌握,尤其是對(duì)于RAID 0+1 (10),RAID 3, RAID 5之間的選擇取舍,更是舉棋不定。


3.1 RAID條切“striped”的存取模式;

在使用數(shù)據(jù)條切﹝Data Stripping﹞ 的RAID 系統(tǒng)之中,對(duì)成員磁盤(pán)驅(qū)動(dòng)器的存取方式,可分為兩種:

并行存取﹝Paralleled Access﹞
獨(dú)立存取﹝Independent Access﹞

RAID 2和RAID 3 是采取并行存取模式。

RAID 0、RAID 4、RAID 5及RAID 6則是采用獨(dú)立存取模式。


3.2 平行存取模式;

并行存取模式支持里,是把所有磁盤(pán)驅(qū)動(dòng)器的主軸馬達(dá)作精密的控制,使每個(gè)磁盤(pán)的位置都彼此同步,然后對(duì)每一個(gè)磁盤(pán)驅(qū)動(dòng)器作一個(gè)很短的I/O數(shù)據(jù)傳送,如此一來(lái),從主機(jī)來(lái)的每一個(gè)I/O 指令,都平均分布到每一個(gè)磁盤(pán)驅(qū)動(dòng)器。

為了達(dá)到并行存取的功能,RAID 中的每一個(gè)磁盤(pán)驅(qū)動(dòng)器,都必須具備幾乎完全相同的規(guī)格:轉(zhuǎn)速必須一樣;磁頭搜尋速度﹝Access Time﹞必須相同;Buffer 或Cache的容量和存取速度要一致;CPU處理指令的速度要相同;I/O Channel 的速度也要一樣?偠灾貌⑿写嫒∧J,RAID 中所有的成員磁盤(pán)驅(qū)動(dòng)器,應(yīng)該使用同一廠牌,相同型號(hào)的磁盤(pán)驅(qū)動(dòng)器。


3.2.1 并行存取的基本工作原理;

假設(shè)RAID****有四部相同規(guī)格的磁盤(pán)驅(qū)動(dòng)器,分別為磁盤(pán)驅(qū)動(dòng)器A、B、C和D,我們?cè)诎褧r(shí)間軸略分為T(mén)0、T1、T2、T3和T4:

T0: RAID控制器將第一筆數(shù)據(jù)傳送到A的Buffer,磁盤(pán)驅(qū)動(dòng)器B、C和D的Buffer都是空的,在等待中
T1: RAID控制器將第二筆數(shù)據(jù)傳送到B的Buffer,A開(kāi)始把Buffer中的數(shù)據(jù)寫(xiě)入扇區(qū),磁盤(pán)驅(qū)動(dòng)器C和D的Buffer都是空的,在等待中
T2: RAID控制器將第三筆數(shù)據(jù)傳送到C的Buffer,B開(kāi)始把Buffer中的數(shù)據(jù)寫(xiě)入扇區(qū),A已經(jīng)完成寫(xiě)入動(dòng)作,磁盤(pán)驅(qū)動(dòng)器D和A的Buffer都是空的,在等待中
T3: RAID控制器將第四筆數(shù)據(jù)傳送到D的Buffer,C開(kāi)始把Buffer中的數(shù)據(jù)寫(xiě)入扇區(qū),B已經(jīng)完成寫(xiě)入動(dòng)作,磁盤(pán)驅(qū)動(dòng)器A和B的Buffer都是空的,在等待中
T4: RAID控制器將第五筆數(shù)據(jù)傳送到A的Buffer,D開(kāi)始把Buffer中的數(shù)據(jù)寫(xiě)入扇區(qū),C已經(jīng)完成寫(xiě)入動(dòng)作,磁盤(pán)驅(qū)動(dòng)器B和C的Buffer都是空的,在等待中 

如此一直循環(huán),一直到把從主機(jī)來(lái)的這個(gè)I/O 指令處理完畢,RAID控制器才會(huì)受處理下一個(gè)I/O 指令。重點(diǎn)是在任何一個(gè)磁盤(pán)驅(qū)動(dòng)器準(zhǔn)備好把數(shù)據(jù)寫(xiě)入扇區(qū)時(shí),該目的扇區(qū)必須剛剛好轉(zhuǎn)到磁頭下。同時(shí)RAID控制器每依次傳給一個(gè)磁盤(pán)驅(qū)動(dòng)器的數(shù)據(jù)長(zhǎng)度,也必須剛剛好,配合磁盤(pán)驅(qū)動(dòng)器的轉(zhuǎn)速,否則一旦發(fā)生 miss,RAID 性能就大打折扣。

3.2.2 并行存取RAID的最佳應(yīng)用;

并行存取RAID之架構(gòu),以其精細(xì)的馬達(dá)控制和分布之?dāng)?shù)據(jù)傳輸,將數(shù)組中每一個(gè)磁盤(pán)驅(qū)動(dòng)器的性能發(fā)揮到最大,同時(shí)充分利用Storage Bus的頻寬,因此特別適合應(yīng)用在大型、數(shù)據(jù)連續(xù)的檔案存取應(yīng)用,例如:

影像、視訊檔案服務(wù)器
數(shù)據(jù)倉(cāng)儲(chǔ)系統(tǒng)
多媒體數(shù)據(jù)庫(kù)
電子圖書(shū)館
印前或底片輸出檔案服務(wù)器
其它大型且連續(xù)性檔案服務(wù)器

由于并行存取RAID架構(gòu)之特性,RAID 控制器一次只能處理一個(gè)I/O要求,無(wú)法執(zhí)行Overlapping 的多任務(wù),因此非常不適合應(yīng)用在 I/O次數(shù)頻繁、數(shù)據(jù)隨機(jī)存取、每筆數(shù)據(jù)傳輸量小的環(huán)境。同時(shí),因?yàn)椴⑿写嫒o(wú)法執(zhí)行Overlapping 的多任務(wù),因此沒(méi)有辦法"隱藏"磁盤(pán)驅(qū)動(dòng)器搜尋﹝seek﹞的時(shí)間,而且在每一個(gè)I/O的第一筆數(shù)據(jù)傳輸,都要等待第一個(gè)磁盤(pán)驅(qū)動(dòng)器旋轉(zhuǎn)延遲﹝rotational latency﹞,平均為旋轉(zhuǎn)半圈的時(shí)間,如果使用一萬(wàn)轉(zhuǎn)的磁盤(pán)驅(qū)動(dòng)器,平均就需要等待50 usec。所以機(jī)械延遲時(shí)間,是并行存取架構(gòu)的最大問(wèn)題。


3.3 獨(dú)立存取模式;

相對(duì)于并行存取模式,獨(dú)立存取模式并不對(duì)成員磁盤(pán)驅(qū)動(dòng)器作同步轉(zhuǎn)動(dòng)控制,其對(duì)每個(gè)磁盤(pán)驅(qū)動(dòng)器的存取,都是獨(dú)立且沒(méi)有順序和時(shí)間間格的限制,同時(shí)每筆傳輸?shù)臄?shù)據(jù)量都比較大。因此,獨(dú)立存取模式可以盡量地利用overlapping 多任務(wù)、Tagged Command Queuing等等高階功能,來(lái)" 隱藏"上述磁盤(pán)驅(qū)動(dòng)器的機(jī)械時(shí)間延遲﹝Seek 和Rotational Latency﹞。

由于獨(dú)立存取模式可以做overlapping 多任務(wù),而且可以同時(shí)處理來(lái)自多個(gè)主機(jī)不同的I/O Requests,在多主機(jī)環(huán)境﹝如Clustering﹞,更可發(fā)揮最大的性能。


3.3.1 獨(dú)立存取RAID的最佳應(yīng)用;

由于獨(dú)立存取模式可以同時(shí)接受多個(gè)I/O Requests,因此特別適合應(yīng)用在數(shù)據(jù)存取頻繁、每筆數(shù)據(jù)量較小的系統(tǒng)。例如:

在線交易系統(tǒng)或電子商務(wù)應(yīng)用
多使用者數(shù)據(jù)庫(kù)
ERM及MRP 系統(tǒng)
小文件之文件服務(wù)器


4. 創(chuàng)建和維護(hù)Raid;


4.1 mdadm;

在Linux服務(wù)器中是通過(guò)mdadm工具來(lái)創(chuàng)建和維護(hù)軟RAID的,mdadm在創(chuàng)建和管理軟RAID時(shí)非常方便,而且很靈活。mdadm常用的參數(shù)有如下:
* --create或-C:創(chuàng)建一個(gè)新的軟RAID,后面接raid設(shè)備的名稱。例如,/dev/md0,/dev/md1等。

*--assemble或-A:加載一個(gè)已存在的陣列,后面跟陣列以及設(shè)備的名稱。

*--detail或-D:輸出指定RAID設(shè)備的詳細(xì)信息。

*--stop或-S:停止指定的RAID設(shè)備。

*--level或-l:設(shè)置RAID的級(jí)別,例如,設(shè)置“--level=5”則表示創(chuàng)建陣列的級(jí)別是RAID 5。

*--raid-devices或-n:指定陣列中活動(dòng)磁盤(pán)的數(shù)目。

*--scan或-s:掃描配置文件或/proc/mdstat文件來(lái)搜索軟RAID的配置信息,該參數(shù)不能單獨(dú)使用,只能配置其它參數(shù)才能使用。

下面將通過(guò)一個(gè)實(shí)例來(lái)講述通過(guò)mdadm如何實(shí)現(xiàn)軟RAID的功能。


4.1.1 創(chuàng)建分區(qū);

【實(shí)例1】

某臺(tái)機(jī)器上有4塊空閑的硬盤(pán),分別是/dev/sdb、/dev/sdc、/dev/sdd和/dev/sde,并用這四塊硬盤(pán)來(lái)創(chuàng)建來(lái)創(chuàng)建一個(gè)RAID 5,具體操作步驟如下:

首先使用“fdisk”命令在每塊硬盤(pán)上創(chuàng)建一個(gè)分區(qū),操作如下:

root@xiaop-laptop:/# fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel. Changes will remain in memory only,

until you decide to write them. After that, of course, the previous

content won't be recoverable.


Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)


Command (m for help): n #按n創(chuàng)建新分區(qū)

Command action

e extended

p primary partition (1-4) #輸入p 選擇創(chuàng)建主分區(qū)

p

Partition number (1-4): 1 #輸入 1 創(chuàng)建第一個(gè)主分區(qū)

First cylinder (1-102, default 1): #直接回車,選擇分區(qū)開(kāi)始柱面這里就從 1 開(kāi)始

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-102, default 102):

Using default value 102


Command (m for help): w #然后輸入w寫(xiě)盤(pán)

The partition table has been altered!


Calling ioctl() to re-read partition table.

Syncing disks.

針對(duì)其余幾塊硬盤(pán)也做相同操作,按照此步驟在另外的兩塊磁盤(pán)上做同樣的操作;
全部做完后,運(yùn)行 fdisk -l 應(yīng)該可以看到如下信息:

Disk /dev/sdb: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 1 204 208880 fd Linux raid autodetect

Disk /dev/sdc: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

Device Boot Start End Blocks Id System
/dev/sdc1 1 204 208880 fd Linux raid autodetect

Disk /dev/sdd: 214 MB, 214748160 bytes
64 heads, 32 sectors/track, 204 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes

Device Boot Start End Blocks Id System
/dev/sdd1 1 204 208880 fd Linux raid autodetect

看到上面三個(gè)磁盤(pán)上分別建了一個(gè)分區(qū),分區(qū)大小都一樣;


4.1.2 創(chuàng)建RAID 5;

創(chuàng)建完/dev/sdb1、/dev/sdc1、/dev/sdd1、/dev/sde1四個(gè)分區(qū)后,下面就可以來(lái)創(chuàng)建RAID 5了,其中設(shè)定/dev/sde1作為備用設(shè)備,其余為活動(dòng)設(shè)備,備用設(shè)備的作用是一旦某一設(shè)備損壞可以立即使用備用設(shè)備替換。操作命令如下:
root@xiaop-laptop:/# mdadm --create /dev/md0 --level=5 --raid-devices=3 --spare-devices=1 /dev/sd[b-e]1

mdadm: array /dev/md0 started.

其中“--spare-devices=1”表示當(dāng)前陣列中備用設(shè)備只有一塊,即作為備用設(shè)備的“/dev/sde1”,若有多塊備用設(shè)備,則將“--spare-devices”的值設(shè)置為相應(yīng)的數(shù)目。成功創(chuàng)建完成RAID設(shè)備后,通過(guò)如下命令可以查看到RAID的詳細(xì)信息:
root@xiaop-laptop:/# mdadm --detail /dev/md0

/dev/md0:

Version : 00.90.01

Creation Time : Mon Jan 22 10:55:49 2007

Raid Level : raid5

Array Size : 208640 (203.75 MiB 213.65 MB)

Device Size : 104320 (101.88 MiB 106.82 MB)

Raid Devices : 3

Total Devices : 4

Preferred Minor : 0

Persistence : Superblock is persistent


Update Time : Mon Jan 22 10:55:52 2007

State : clean

Active Devices : 3

Working Devices : 4

Failed Devices : 0

Spare Devices : 1


Layout : left-symmetric

Chunk Size : 64K


Number Major Minor RaidDevice State

0 8 17 0 active sync /dev/sdb1

1 8 33 1 active sync /dev/sdc1

2 8 49 2 active sync /dev/sdd1

3 8 65 -1 spare /dev/sde1

UUID : b372436a:6ba09b3d:2c80612c:efe19d75

Events : 0.6


4.1.3 創(chuàng)建RAID的配置文件;

RAID的配置文件名為“mdadm.conf”,默認(rèn)是不存在的,所以需要手工創(chuàng)建,該配置文件存在的主要作用是系統(tǒng)啟動(dòng)的時(shí)候能夠自動(dòng)加載軟RAID,同時(shí)也方便日后管理!癿dadm.conf”文件內(nèi)容包括:由DEVICE選項(xiàng)指定用于軟RAID的所有設(shè)備,和ARRAY選項(xiàng)所指定陣列的設(shè)備名、RAID級(jí)別、陣列中活動(dòng)設(shè)備的數(shù)目以及設(shè)備的UUID號(hào)。生成RAID配置文件操做如下:
root@xiaop-laptop:/# mdadm --detail --scan > /etc/mdadm.conf

但是當(dāng)前生成“mdadm.conf”文件的內(nèi)容并不符合所規(guī)定的格式,所以也是不生效的,這時(shí)需要手工修改該文件內(nèi)容為如下格式:
root@xiaop-laptop:/# vi /etc/mdadm.conf

DEVICE /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

ARRAY /dev/md0 level=raid5 num-devices=3 UUID=b372436a:6ba09b3d:2c80612c:efe19d75

如果沒(méi)有創(chuàng)建RAID的配置文件,那么在每次系統(tǒng)啟動(dòng)后,需要手工加載軟RAID才能使用,手工加載軟RAID的命令是:
root@xiaop-laptop:/# mdadm --assemble /dev/md0 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

mdadm: /dev/md0 has been started with 3 drives and 1 spare.


4.1.4 創(chuàng)建文件系統(tǒng);

接下來(lái)就只需要在RAID設(shè)備上創(chuàng)建文件系統(tǒng)就可使用了,在RAID設(shè)備上創(chuàng)建文件系統(tǒng)和在分區(qū)或磁盤(pán)上創(chuàng)建文件系統(tǒng)的方法一樣。在設(shè)備“/dev/md0”上創(chuàng)建ext3的文件系統(tǒng)命令如下:
root@xiaop-laptop:/# mkfs.ext3 /dev/md0

創(chuàng)建完文件系統(tǒng)后,將該設(shè)備掛載上就可正常的使用了。如果要?jiǎng)?chuàng)建其它級(jí)別的RAID,其步驟和創(chuàng)建RAID 5基本都一樣,區(qū)別在于指定“--level”值的時(shí)候,需要將該值設(shè)置為相應(yīng)的級(jí)別。 


4.2 維護(hù)軟RAID;

軟RAID雖然很大程度上能保證數(shù)據(jù)的可靠性,但是在日常的工作中,有時(shí)可能需要對(duì)RAID進(jìn)行調(diào)整以及不排除RAID設(shè)備物理介質(zhì)損壞的可能等相關(guān)問(wèn)題

,當(dāng)遇到這些情況時(shí),那么同樣可以通過(guò)“mdadm”命令來(lái)完成這些操作。下面也將通過(guò)一個(gè)實(shí)例來(lái)介紹更換RAID故障磁盤(pán)的完整過(guò)程。


4.2.1 模擬故障磁盤(pán);

【實(shí)例2】

以前面的【實(shí)例1】為基礎(chǔ),假定其中的“/dev/sdc1”設(shè)備出現(xiàn)故障時(shí),更換一個(gè)新的磁盤(pán),整個(gè)過(guò)程的詳細(xì)說(shuō)明如下:
在實(shí)際中,當(dāng)軟RAID檢測(cè)到某個(gè)磁盤(pán)有故障時(shí),會(huì)自動(dòng)標(biāo)記該磁盤(pán)為故障磁盤(pán),并停止對(duì)故障磁盤(pán)的讀寫(xiě)操作,所以這里需要將/dev/sdc1標(biāo)記為出現(xiàn)故障的磁盤(pán),命令如下:
root@xiaop-laptop:/# mdadm /dev/md0 --fail /dev/sdc1

mdadm: set /dev/sdc1 faulty in /dev/md0

由于【實(shí)例1】中的RAID 5設(shè)置了一個(gè)備用設(shè)備,所以當(dāng)有標(biāo)記為故障磁盤(pán)的時(shí)候,備用磁盤(pán)會(huì)自動(dòng)頂替故障磁盤(pán)工作,陣列也能夠在短時(shí)間內(nèi)實(shí)現(xiàn)重建。通過(guò)“/proc/mdstat”文件可查看到當(dāng)前陣列的狀態(tài),如下:
root@xiaop-laptop:/# cat /proc/mdstat

Personalities : [raid5]

md0 : active raid5 sde1[3] sdb1[0] sdd1[2] sdc1[4](F)

208640 blocks level 5, 64k chunk, algorithm 2 [3/2] [U_U]

[=====>...............] recovery = 26.4% (28416/104320) finish=0.0min speed=28416K/sec

unused devices: <none>

以上信息表明陣列正在重建,當(dāng)一個(gè)設(shè)備出現(xiàn)故障或被標(biāo)記故障時(shí),相應(yīng)設(shè)備的方括號(hào)后將被標(biāo)以(F),如“sdc1[4](F)”,其中“[3/2]”的第一位數(shù)表示陣列所包含的設(shè)備數(shù),第二位數(shù)表示活動(dòng)的設(shè)備數(shù),因?yàn)槟壳坝幸粋(gè)故障設(shè)備,所以第二位數(shù)為2;這時(shí)的陣列以降級(jí)模式運(yùn)行,雖然該陣列仍然可用,但是不具有數(shù)據(jù)冗余;而“[U_U]”表示當(dāng)前陣列可以正常使用的設(shè)備是/dev/sdb1和/dev/sdd1,如果是設(shè)備“/dev/sdb1”出現(xiàn)故障時(shí),則將變成[_UU]。 

重建完數(shù)據(jù)后,再次查看陣列狀態(tài)時(shí),就會(huì)發(fā)現(xiàn)當(dāng)前的RAID設(shè)備又恢復(fù)了正常,如下:
root@xiaop-laptop:/# cat /proc/mdstat

Personalities : [raid5]

md0 : active raid5 sde1[1] sdb1[0] sdd1[2] sdc1[3](F)

208640 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

unused devices: <none>


4.2.2 移除故障磁盤(pán);

既然“/dev/sdc1”出現(xiàn)了故障,當(dāng)然要移除該設(shè)備,移除故障磁盤(pán)的操作如下:
root@xiaop-laptop:/# mdadm /dev/md0 --remove /dev/sdc1

mdadm: hot removed /dev/sdc1

其中“—remove”表示移除指定RAID設(shè)備中的某個(gè)磁盤(pán),也可用“-r”來(lái)代替該參數(shù)。 


4.2.3 添加新硬盤(pán);

在添加新的硬盤(pán)前,同樣需要對(duì)新硬盤(pán)進(jìn)行創(chuàng)建分區(qū)的操作,例如,添加新硬盤(pán)的設(shè)備名為“/dev/sdc1”,則具體操作如下:
root@xiaop-laptop:/# mdadm /dev/md0 --add /dev/sdc1

mdadm: hot added /dev/sdc1

其中“--add”與前面的“--remove”其義剛好相反,用于將某個(gè)磁盤(pán)添加到指定的設(shè)備中,也可用“-a”代替該參數(shù)。 

由于【實(shí)例1】中的RAID 5設(shè)置了一個(gè)備用設(shè)備,所以不需要做任何操作RAID 5也能正常運(yùn)行,但是如果這時(shí)某塊磁盤(pán)再出現(xiàn)故障的話,會(huì)導(dǎo)致RAID 5沒(méi)有數(shù)據(jù)冗余功能,這對(duì)于存放重要的數(shù)據(jù)的設(shè)備來(lái)說(shuō)顯得太不安全了。那么這時(shí)增加到RAID 5中的“/dev/sdc1”則作為備用設(shè)備出現(xiàn)在陣列中,如下:
root@xiaop-laptop:/# mdadm --detail /dev/md0

/dev/md0:

……

……

Number Major Minor RaidDevice State

0 8 17 0 active sync /dev/sdb1

1 8 65 1 active sync /dev/sde1

2 8 49 2 active sync /dev/sdd1

3 8 33 -1 spare /dev/sdc1

UUID : b372436a:6ba09b3d:2c80612c:efe19d75

Events : 0.133
 

關(guān)鍵字:Raid、磁盤(pán)組、陣列
分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡(luò)有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證: 粵B1.B2-20030321 備案號(hào):粵B2-20030321-1
網(wǎng)站公安備案編號(hào):44060602000007 交互式欄目專項(xiàng)備案編號(hào):200303DD003  
察察 工商 網(wǎng)安 舉報(bào)有獎(jiǎng)  警警  手機(jī)打開(kāi)網(wǎng)站