硬raid和軟raid課件_第1頁(yè)
硬raid和軟raid課件_第2頁(yè)
硬raid和軟raid課件_第3頁(yè)
硬raid和軟raid課件_第4頁(yè)
硬raid和軟raid課件_第5頁(yè)
已閱讀5頁(yè),還剩41頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1、什么是raid,raid的級(jí)別和特點(diǎn):什么是raid呢?全稱(chēng)是“A Case for Redundant of Iexpensive Disks(raid)”,在1987年,由加州大學(xué)伯克利大學(xué)發(fā)表的論文而來(lái),其實(shí)就是這個(gè)標(biāo)題的縮寫(xiě)就是raid;中譯為“磁盤(pán)陣列”;raid就是把幾個(gè)物理磁盤(pán)組合在一起成為一個(gè)大的虛擬物理磁盤(pán),主要目的和用途主要有:把若干小容量物理磁盤(pán)組成一個(gè)大容量虛擬存儲(chǔ)設(shè)備(以前的物理磁盤(pán)的容量都比較?。惶岣呶锢泶鎯?chǔ)效率(讀、寫(xiě)),或提供允余以提高數(shù)據(jù)存儲(chǔ)的安全性。根據(jù)應(yīng)用方向的不同,raid也分不不同級(jí)別,有l(wèi)inear、raid0、raid1、raid5、raid

2、10、raid4、raid6、multipath。常用的有raid0、raid1、raid5、raid10(其實(shí)就是0+1)、linear1.1什么是硬件raid和軟raid;raid還分為硬件raid和軟件raid,硬件raid是通過(guò)raid卡來(lái)實(shí)現(xiàn)的,而軟件raid是通過(guò)軟件來(lái)實(shí)現(xiàn)的;在企業(yè)級(jí)應(yīng)用領(lǐng)域,大部分都是硬件raid。而軟件raid由于性?xún)r(jià)比高,大多數(shù)被中小企業(yè)所采用;硬件raid是通過(guò)raid卡把若干同等容量大小的硬盤(pán),根據(jù)使用方向的不同,聚合起來(lái)成為一個(gè)大的虛擬raid設(shè)備(或raid0,或raid1,或者raid5,或raid10.),如果每個(gè)硬盤(pán)容量不一致,以最小容量的硬盤(pán)

3、為基礎(chǔ);它的成員是整個(gè)硬盤(pán);軟raid是軟件把若干同等容量大小的硬盤(pán)或分區(qū),根據(jù)使用方法的不同,聚合起來(lái)成為一個(gè)大的虛擬raid設(shè)備(或raid0,或raid1,或者raid5,或raid10.),如果每個(gè)硬盤(pán)容量不一致,以最小容量的硬盤(pán)為基礎(chǔ)。軟raid的成員是整個(gè)硬盤(pán)或分區(qū);raid總的來(lái)說(shuō)還是應(yīng)用在生產(chǎn)型項(xiàng)目領(lǐng)域中,一般在商用辦公或個(gè)人娛樂(lè)應(yīng)用并未被大規(guī)模采用。應(yīng)用領(lǐng)域大多要求性?xún)r(jià)比低的低端服務(wù)器或PC-SERVER;1.2raid的級(jí)別及特點(diǎn);raid有幾種級(jí)別,linear,raid0(striping),raid1(mirroring),raid4,raid5,raid6,raid

4、10,multipath,and faulty。其中我們常用有raid0、raid1、raid5、raid10.下面我們說(shuō)說(shuō)常用的raid0、raid1、raid5以及raid10;1.21什么是軟raid0及特點(diǎn);raid0是把兩個(gè)或兩個(gè)以上的容量相同的硬盤(pán)或分區(qū),通過(guò)raid控制器(硬raid是通過(guò)raid卡來(lái)實(shí)現(xiàn)的,軟raid是通過(guò)軟件來(lái)實(shí)現(xiàn)的),結(jié)合為一個(gè)在容量上是raid0下成員的容量的總和,在寫(xiě)入時(shí),要向每個(gè)硬盤(pán)分區(qū)同時(shí)寫(xiě)入數(shù)據(jù)。在硬raid中,raid0的成員是以整個(gè)硬盤(pán)為單位的,把兩個(gè)硬盤(pán)或兩個(gè)以上的硬盤(pán)通過(guò)raid卡綁定成為一個(gè)虛擬的磁盤(pán)設(shè)備,而每個(gè)硬盤(pán)就是raid0的成員;

5、在軟raid0中,raid0的成員是整個(gè)硬盤(pán)或分區(qū),容量是加入raid0的所有成員容量的總和。在raid0中每個(gè)成員的容量都是相同一致的。比如我們把/dev/sdb、/dev/sdc、/dev/sdd三個(gè)容量大小為80G的硬盤(pán)做成raid0,這時(shí)raid0設(shè)備的容量就是三個(gè)硬盤(pán)的總和80*3=240G。當(dāng)然我們也可以,在寫(xiě)入數(shù)據(jù)時(shí),系統(tǒng)要向每個(gè)硬盤(pán)同時(shí)寫(xiě)入數(shù)據(jù),是以條塊的形式寫(xiě)入。比如我們存一份數(shù)據(jù)linuxsir.tar.gz到raid0的設(shè)備中,這份數(shù)據(jù)是分拆成若干份被分散的寫(xiě)入到raid0中的每個(gè)成員中。只有raid0中的每個(gè)成員正常運(yùn)行,并且raid0也正常運(yùn)行的情況下,這份數(shù)據(jù)才是完

6、整的。raid0中任何一個(gè)成員(硬盤(pán)分區(qū))有問(wèn)題時(shí),raid0便不能運(yùn)行,同時(shí)數(shù)據(jù)也不是完整的;raid0在讀寫(xiě)速度上是比較塊的,是普通不做raid的兩倍左右(注:實(shí)際速度和機(jī)器的硬件配置有關(guān)),所以raid0常被用于對(duì)存儲(chǔ)效率要求較高,但對(duì)數(shù)據(jù)安全性要求不高的應(yīng)用解決方案中;安全性:raid0中有任何一個(gè)成員出現(xiàn)故障,整個(gè)raid0就不能被激活,數(shù)據(jù)不能保障;1.22 什么是軟raid1及特點(diǎn);raid1就是把若干相同容量的硬盤(pán)或分區(qū),成員與成員之間是鏡像關(guān)系。在容量上,raid1設(shè)備是單個(gè)成員的容量。比如兩個(gè)80G的硬盤(pán)做成raid1,這個(gè)raid1的設(shè)備容量仍是80G。比如我們寫(xiě)入一份數(shù)

7、據(jù)linuxsir.tai.bz2到raid1設(shè)備時(shí),其實(shí)是向raid的每個(gè)成員都寫(xiě)了一份。比如raid1設(shè)備下有兩個(gè)成員/dev/sdb和/dev/sdc,我們寫(xiě)入linuxsri.tar.bz2到raid1時(shí),/dev/sdb和/dev/sdc都有一份完整的linuxsir.tar.bz2。所以raid1是允余的陣列,一般被用于安全性要求比較高的應(yīng)用中。因?yàn)閞aid1是鏡像允余,所以磁盤(pán)利用效率并不高,或者說(shuō)是“浪費(fèi)”。這種方案相對(duì)來(lái)說(shuō)性?xún)r(jià)比并不高,一般很少應(yīng)用。數(shù)據(jù)讀寫(xiě)效率要比raid0慢。安全性:raid1中只要有一個(gè)成員是健康的,raid1完全可以激活,而且數(shù)據(jù)絕對(duì)是完整安全的。如果

8、所有的成員有故障,raid1也就報(bào)廢了。1.23 什么是軟raid5及特點(diǎn);軟raid5也是允余安全的,raid5是把至少三個(gè)硬盤(pán)或分區(qū)通過(guò)軟件虛擬成為一個(gè)大的存儲(chǔ)設(shè)備。在容量上是(n-1)x單個(gè)硬盤(pán)(分區(qū))容量,比如我們用三塊80G硬盤(pán)做成raid5,容量就是兩塊容量的和160G。在寫(xiě)入上,數(shù)據(jù)被分拆成若干份,分別向raid5的每個(gè)成員下寫(xiě)入。比如把linuxsir.tar.ba2寫(xiě)入raid5時(shí),要先把linuxsir.tar.ba2分拆成若干份,分別寫(xiě)入raid5成員中。因?yàn)樯婕暗皆视?,所以?shù)據(jù)在寫(xiě)入速度上并不是很快,沒(méi)辦法和raid0相比,但raid5的寫(xiě)入數(shù)據(jù)速度沒(méi)有raid1和ra

9、id0快,也沒(méi)有不做raid的磁盤(pán)寫(xiě)入速度要快;因?yàn)閞aid5在容量損失比較小,有允余安全故障,另外寫(xiě)入速度比較快,從整體上來(lái)看,性?xún)r(jià)比比較高,所以被大范圍采用;安全性:當(dāng)raid5中的成員中有一個(gè)發(fā)生故障時(shí),raid5一樣能啟動(dòng)和正常運(yùn)行,只要n-1(注n3)塊磁盤(pán)或分區(qū)不出現(xiàn)故障,raid5上的數(shù)據(jù)就是安全,對(duì)于一個(gè)文件村到raid5設(shè)備中,只有成員是n-1(注n3)無(wú)故障時(shí),這份文件才是完整的。比如raid5有四個(gè)硬盤(pán)或分區(qū)做的,當(dāng)一個(gè)硬盤(pán)或分區(qū)掛掉了,并不影響整個(gè)raid5上數(shù)據(jù)的完整性和安全性。1.24 什么是軟raid10及特點(diǎn):軟raid10也是允余安全陣列,是raid0+1的集

10、成,raid10是把至少四個(gè)硬盤(pán)或分區(qū)通過(guò)軟件虛擬成為一個(gè)大的存儲(chǔ)設(shè)備。在容量是:n÷2×單個(gè)硬盤(pán)或分區(qū)容量,比如我們用四塊80G硬盤(pán)做成raid10.容量就是兩塊容量的和4÷2×80=160G。做raid10所需要的硬盤(pán)或分區(qū)個(gè)數(shù)是偶數(shù)的。raid10,有raid1的鏡像特點(diǎn),還喲偶raid0的速度??梢赃@么理解raid10,比如有四個(gè)硬盤(pán)做成的raid10,過(guò)程是先把兩個(gè)硬盤(pán)做成raid1,然后在兩個(gè)raid1的基礎(chǔ)上再做成raid0。從理論上來(lái)說(shuō),raid10應(yīng)該繼承raid0的速度和raid10的允余安全。但結(jié)果我在軟raid0、raid1、ra

11、id5、raid10的測(cè)試過(guò)程中發(fā)現(xiàn)raid10的寫(xiě)入速度是最慢的,測(cè)試方法是用超過(guò)1G的大文件幾盤(pán)復(fù)制。結(jié)果發(fā)現(xiàn)速度由高低的順序是:raid0、不做raid、raid1、raid5、raid102 在linux中,軟raid的創(chuàng)建和管理:在linux中,軟raid是通過(guò)mdadm來(lái)創(chuàng)建和管理的,mdadm是一個(gè)專(zhuān)用創(chuàng)建和管理raid的軟件,在linux中,大多發(fā)行版本已經(jīng)默認(rèn)安裝,mdadm能創(chuàng)建任何級(jí)別的軟raid;在本節(jié)中,raid創(chuàng)建并不是目的,我們還要查看學(xué)會(huì)raid的狀態(tài),啟動(dòng)、停止raid。還要學(xué)會(huì)使用raid。所以raid的使用應(yīng)該包括創(chuàng)建、管理和使用。raid的使用就是在ra

12、id設(shè)備上創(chuàng)建文件系統(tǒng),然后存儲(chǔ)應(yīng)用;流程是:【raid創(chuàng)建】-【raid管理】-【raid的使用】|【raid的維護(hù)】2.1 raid的創(chuàng)建方法:創(chuàng)建raid有兩個(gè)方法,第一種方法:用mdadm通過(guò)-C或-create參數(shù)來(lái)創(chuàng)建raid。這種方法,是把raid信息寫(xiě)到每個(gè)raid成員的superblocks(超級(jí)塊)中,在每個(gè)raid成員的超級(jí)塊中,都會(huì)記錄raid的級(jí)別、成員、raid的UUID等.這種方法把raid的信息記錄在各個(gè)成員的superblocks(超級(jí)塊)中。這種方法對(duì)于重裝系統(tǒng)或系統(tǒng)發(fā)生災(zāi)難來(lái)說(shuō),有利于現(xiàn)有raid的恢復(fù);這種方法是最常用的;第二種方法:用mdadm通過(guò)-B

13、或-build參數(shù)來(lái)創(chuàng)建raid。這種方法并不把raid的信息寫(xiě)入raid成員的superblocks(超級(jí)塊)中,所以我們無(wú)法通過(guò)查看raid成員信息來(lái)獲得raid的級(jí)別,以及raid的成員等;這種方法對(duì)于重裝系統(tǒng)或系統(tǒng)發(fā)生災(zāi)難來(lái)說(shuō),不利于現(xiàn)有raid的恢復(fù);如果你想用第二種方法來(lái)創(chuàng)建raid,可以在下面的語(yǔ)法中,把-C或-create換成-B或-build。語(yǔ)法:創(chuàng)建把raid信息寫(xiě)入raid每個(gè)成員的superblocks(超級(jí)塊)中;mdadm -C -v /dev/mdX -lY -nZ riad成員或mdadm -create -verbose /dev/mdX -level=Y

14、-RAID-devices=Z riad成員注:-C是-create的縮寫(xiě),表示創(chuàng)建的意思;這種方法是創(chuàng)建把raid信息寫(xiě)入每個(gè)raid成員superblocks(超級(jí)塊)的方法。這是最常用的方法。-v是-verbose,顯示創(chuàng)建過(guò)程中詳細(xì)的事件;如果把-C或-create換成-B或-build,就是創(chuàng)建raid的另一種方法,不把raid信息寫(xiě)入raid成員的superblocks(超級(jí)塊)中,raid設(shè)備:/dev/mdX,raid設(shè)備在linux中,大多是/dev/md0,/dev/md1.第一個(gè)設(shè)備從/dev/md0開(kāi)始。比如你已經(jīng)有raid0設(shè)備是/dev/md0,你再想做一個(gè)raid

15、5,那就是/dev/md1,以此類(lèi)推;raid級(jí)別:用-lY或-level=Y表示,Y是raid的級(jí)別。raid的級(jí)別有raid0就用0表示,raid1就用1表示,raid5就用5表示,raid10就用10表示。raid的級(jí)別是根據(jù)自己的使用方向和現(xiàn)有磁盤(pán)和分區(qū)個(gè)數(shù)來(lái)定位。如果你就想高速讀寫(xiě)、大容量,對(duì)數(shù)據(jù)安全性要求不高,那就用raid0,如果對(duì)數(shù)據(jù)要求較高,可以用raid1或raid5,再者就是raid10。比如-l0或-level=0表示raid0,-l5或-level=5 表示raid5,-l1或-level=1表示raid1,-l10或-level=10表示raid10;-nZ或-RA

16、ID-devices=Z表示raid成員的個(gè)數(shù),比如我們把三個(gè)硬盤(pán)分區(qū)做成一個(gè)raid,那就是3個(gè)設(shè)備。就要寫(xiě)成這樣-n3或-RAID-devices=3;值得注意的是raid0和raid1至少需要兩個(gè)硬盤(pán),raid5至少需要三個(gè)設(shè)備,raid10至少四個(gè)設(shè)備(偶數(shù));raid成員:也就是raid的組成設(shè)備,要一個(gè)一個(gè)的列出來(lái),每個(gè)設(shè)備后要用空格來(lái)隔開(kāi);比如我們把/dev/sdb、/dev/sdc、/dev/sdd三個(gè)硬盤(pán)做成raid0,在raid設(shè)備這塊,我們要寫(xiě)成/dev/sdb /dev/sdc /dev/sdd;軟件raid的成員還可以分區(qū),比如/dev/sdb1、/dev/sdb.舉

17、例一:我們要做一個(gè)raid0,成員是/dev/sdb、/dev/sdc兩個(gè)硬盤(pán)設(shè)備。我們要運(yùn)行如下命令;mdadm -C -verbose /dev/md0 -l0 -n2 /dev/sdb /dev/sdc或mdadm -C -verbose /dev/md0 -level=0 -RAID-devices=2 /dev/sdb /dev/sdc如果我們想把/dev/sdb1、/dev/sdc1和/dev/sdd1三個(gè)分區(qū)做成raid0呢?mdadm -C -v /dev/md0 -l0 -n3 /dev/sdbcd1或mdadm -C -verbose /dev/md0 -level=0 -

18、RAID-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1舉例二:我們要做一個(gè)raid5,成員是/dev/sdb、/dev/sdc、/dev/sdd三個(gè)設(shè)備,我們要運(yùn)行如下命令;mdadm -C -v /dev/md0 -l5 -n3 /dev/sdbcd或mdadm -C -verbose /dev/md0 -level=5 -RAID-devices=3 /dev/sdb /dev/sdc /dev/sdd如果我們想把/dev/sdb1、/dev/sdc1、/dev/sdd1三個(gè)分區(qū)做成raid5呢?mdadm -C -v /dev/md0 -l5 -n3 /

19、dev/sdbcd1或mdadm -C -verbose /dev/md0 -level=5 -RAID-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1創(chuàng)建完成后,raid也就立即啟動(dòng)了。我們會(huì)發(fā)現(xiàn)有類(lèi)似如下一行的提示信息:mdadm:array /dev/md0 started.我們也可以通過(guò)下面的命令來(lái)查看raid的信息;mdadm -Ds /dev/md0mdadm -D /dev/md02.2 raid管理工具;raid的管理包括創(chuàng)建、啟動(dòng)、狀態(tài)查看等一系列工具,我們只說(shuō)常用的使用方法;2.21 raid的啟動(dòng)方法;raid的啟動(dòng)有兩種方法,一種是指定r

20、aid設(shè)備和raid成員的辦法來(lái)啟動(dòng)raid,另一種辦法是通過(guò)加載raid默認(rèn)的配置文件來(lái)啟動(dòng)。第一種方法:不通過(guò)讀取mdadm.conf來(lái)啟動(dòng)raid;適用情況是你沒(méi)有配置/etc/mdadm.conf文件;語(yǔ)法:mdadm -A raid設(shè)備 raid成員注:-A 同-assemble,意思是激活一個(gè)已經(jīng)存在的raid;raid設(shè)備,就是/dev/md0或/dev/md1.根據(jù)你所創(chuàng)建的raid設(shè)備為準(zhǔn);raid成員,就是你要啟動(dòng)的raid,其下屬設(shè)備有那些,要一個(gè)一個(gè)的列出來(lái),中間以空格分開(kāi);舉例:比如我要啟動(dòng)一個(gè)raid,設(shè)備是/dev/md0,其下有成員是/dev/sdb和/dev/

21、sdc,所以我要用下面的辦法;mdadm -A /dev/md0 /dev/sdb /dev/sdc注:這種情況,是沒(méi)有配置raid的配置文件/etc/mdadm.conf時(shí),所使用的啟動(dòng)方法;如果你已經(jīng)配置好了/etc/mdadm.conf文件,就可以用mdadm -As來(lái)啟動(dòng);第二種方法:利用配置好的/etc/mdadm.conf來(lái)啟動(dòng)raid;mdadm -A raid設(shè)備或mdadm -As注:這種啟動(dòng)方法的前提是要配置/etc/mdadm.conf文件,要把你系統(tǒng)中所有的raid,都寫(xiě)入這個(gè)文件,然后就可以簡(jiǎn)單的用這個(gè)命令來(lái)啟動(dòng)了;-A同-assemble,意思是激活一個(gè)已經(jīng)存在的r

22、aid;raid設(shè)備,就是/dev/md0或/dev/md1.根據(jù)你所創(chuàng)建的raid設(shè)備為準(zhǔn);舉例:mdadm -A /dev/md0mdadm -As注:比如我配置好/etc/mdadm.conf后,啟動(dòng)raid設(shè)備/dev/md0,就用上面的辦法。具體mdadm.conf的寫(xiě)法,請(qǐng)參見(jiàn)raid的配置文件一節(jié);2.22 raid管理工具一些常用參數(shù)說(shuō)明;mdadm 參數(shù)raid設(shè)備raid成員-A 或-assemble激活一個(gè)raid;-S或-stop停止正在運(yùn)行的設(shè)備;-s或-scan掃描raid設(shè)備;-D或-detail查看raid的詳細(xì)信息;-examine查看raid成員的詳細(xì)信息;

23、注:其中中的選項(xiàng)是可選的。舉例:rootlinuxsir:#mdadm -Asrootlinuxsir:#mdadm -Ssrootlinuxsir:#mdadm -Dsrootlinuxsir:#mdadm -examine /dev/sdb注:上面的這些標(biāo)例,都是在配置好/dev/mdadm.conf的情況下,運(yùn)行的,如果你沒(méi)配置好mdadm.conf文件,請(qǐng)指定raid設(shè)備及其成員;其中,-As 是搜索/etc/mdadm.conf,然后根據(jù)mdadm.conf配置好的raid信息來(lái)啟動(dòng)raid。-Ss是搜索正在運(yùn)行的raid,然后停止。-Ds搜索raid,查看raid信息;-exami

24、ne /dev/sdb 是查看其中一塊硬盤(pán)的raid信息,這個(gè)很有用。比如你忘記了raid的成員和UUID,想恢復(fù)現(xiàn)有的raid,就要用這個(gè)來(lái)查看,然后重新讓raid啟動(dòng)起來(lái)。比如系統(tǒng)有一個(gè)raid,但在/etc/mdadm.conf中沒(méi)有相應(yīng)的記錄raid信息。我不知道這個(gè)raid是那個(gè)類(lèi)型的,是raid0,還是raid1,還是raid5?到底機(jī)器中有幾個(gè)raid?如果你是一個(gè)新接手的管理員,應(yīng)該想知道這些信息。那就是一個(gè)一個(gè)硬盤(pán),一個(gè)一個(gè)的分區(qū)查看過(guò)去。從中找出系統(tǒng)中所有的raid。然后一個(gè)一個(gè)的恢復(fù)。這時(shí)就要用到-examine這個(gè)參數(shù)了;rootlinuxsir:#fdisk -lro

25、otlinuxsir:#mdadm -examine /dev/sdb/dev/sdb:Magic:a92b4efcVersion:00.90.00UUID:35ela3e6:ed59c368:e5bc9166:5004fe52Creation Time:Wed Aug 1 07:11:43 2007RAID Level:RAID0Used Dev Size:0RAID Devices:2Total Devices:2Preferred Minor:0Update Time:Thu Aug 2 07:43:30 2007State:activeActive Devices:2Working D

26、evices:2Failed Devices:0Spare Devices:0Checksum:8f8a235e-correctEvents:0.29Chunk Size:64KNumber Major Minor RAIDDevice Statethis 0 8 16 0 active sync /dev/sdb0 0 8 16 0 active sync /dev/sdb1 1 8 32 1 active sync /dev/sdc注:首先:我們用fdisk -l查看一下機(jī)器中所有硬盤(pán)和分區(qū),如果不能完全列出,請(qǐng)指定具體硬盤(pán)。其次:我們查看一下某個(gè)硬盤(pán)或分區(qū)上是否有raid信息,比如我查看

27、的是/dev/sdb,結(jié)果顯示出,/dev/sdb是raid0設(shè)備的一個(gè)成員,/dev/sdb和/dev/sdc共同組成的raid0;得到這些信息有何用呢?我們就可以激活raid,或重寫(xiě)/etc/mdadm.conf,讓raid重新運(yùn)行起來(lái)。在此過(guò)程中,千萬(wàn)不要用-C或-create參數(shù)來(lái)重新創(chuàng)建raid,否則你以前存在的raid就被破壞,里面的數(shù)據(jù)當(dāng)然也會(huì)一無(wú)所有!切記。在一個(gè)有數(shù)據(jù)的raid中,不能隨便用-C參數(shù)。如果用了-C或-create就是創(chuàng)建一個(gè)新的raid設(shè)備!2.3 raid的配置文件;raid并不是一定一要配置文件,但有配置文件,會(huì)方便管理,比如raid最精簡(jiǎn)的方法執(zhí)行、狀態(tài)

28、查看.也需要raid的配置文件。如果沒(méi)有配置文件,還要指定raid成員;raid的配置文件是mdadm.conf位于/etc目錄,如果你沒(méi)有這個(gè)文件,可以自己創(chuàng)建一個(gè);當(dāng)我們做好raid后,首先要配置這個(gè)文件;把你所有的raid配置信息都寫(xiě)入這個(gè)文件。我們可以自己手動(dòng)編寫(xiě)。參照mdadm.conf配置文件的示例就比較方便。你也可以用下面的方法,要先做好/etc/mdadm.conf的備份;rootlinuxsir:#mv /etc/mdadm.conf /etc/mdadm.conf.bak第一步:搜索raid;搜索raid是以激活raid為前提條件,否則下面的命令不會(huì)有什么作用;請(qǐng)參見(jiàn)激活r

29、aid的辦法;語(yǔ)法:mdadm -Ds注:其中-D表示-detail,-s表示-scan,兩者結(jié)合起來(lái)就是-Ds;提示:運(yùn)行查詢(xún)r(jià)aid的時(shí),要首先激活raid;舉例:rootlinuxsir:#mdadm -DsARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35e1a3e6:ed59c368:e5bc9166:5004fe52第二步:查詢(xún)RAID的詳細(xì)信息,主要查看RAID的成員有那些;語(yǔ)法:mdadm -D RAID設(shè)備舉例:下面查詢(xún)已經(jīng)啟動(dòng)了的RAID設(shè)備/dev/md0的詳細(xì)信息;rootlinuxsir:#mdadm -D /dev/md

30、0/dev/md0:Version:00.90.03Creation Time:Wed Aug 1 07:11:43 2007RAID Level:RAID0Array Size:156249856(149.01 GiB 160.00GB)RAID Devices:2Total Devices:2Preferred Minor:0Persistence:Superblock is persistentUpdate Time:Thu Aug 2 07:22:27 2007State:cleanActive Devices:2Working Devices:2Failed Devices:0Spa

31、re Devices:0Chunk Size:64KUUID:35ela3e6:ed59c368:e5bc9166:5004fe52Events:0.21Number Major Minor RAIDDevices State0 8 16 0 active sync /dev/sdb1 8 32 1 active sync /dev/sdb注:通過(guò)查詢(xún)?cè)敿?xì)信息,我們得到/dev/md0是raid0,下面兩個(gè)成員/dev/sdb和/dev/sdc;UUID為35ela3e6:ed59c368:e5bc9166:5004fe52;這個(gè)raid是有超級(jí)塊的;第三步:書(shū)寫(xiě)raid的配置文件mdadm.

32、conf;rootlinuxsir:#mdadm -Ds >> /etc/mdadm.conf 注:把查詢(xún)出來(lái)的raid信息寫(xiě)到mdadm.conf中;(自動(dòng)加載raid)rootlinuxsir:#more /etc/mdadm.conf 注:看看有沒(méi)有內(nèi)容寫(xiě)進(jìn)來(lái)?ARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35ela3e6:ed59c368:e5bc9166:5004fe52因?yàn)槲覀冊(cè)谇懊嬉呀?jīng)通過(guò)mdadm -D /dev/md0 得知其下有成員/dev/sdb和/dev/sdc兩塊硬盤(pán)。所以我們要修改一下mdadm.conf的內(nèi)

33、容。要在加上/dev/md0的成員/dev/sdb和/dev/sdc;用編輯器打開(kāi)/etc/mdadm.conf;在下面類(lèi)似的一行;ARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35ela3e6:ed59c368:e5bc9166:5004fe52修改成ARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35ela3e6:ed59c368:e5bc9166:5004fe52 devices=/dev/sdb,/dev/sdc其實(shí)也就是把/dev/md0這個(gè)RAID設(shè)備的成員指定出來(lái),每個(gè)設(shè)備之間要用逗號(hào)隔開(kāi)。

34、或者寫(xiě)成devices=/dev/sdbc類(lèi)似的寫(xiě)法也行;我們來(lái)看一下/dev/md0這行,其中/dev/md0這行是一個(gè)RAID0設(shè)備,由兩個(gè)成員組成,/dev/md0的UUID=35ela3e6:ed59c368:e5bc9166:5004fe52,兩個(gè)成員分別是/dev/sdb和/dev/sdc兩個(gè)硬盤(pán);其實(shí)我們無(wú)論添加多少raid設(shè)備,都可以通過(guò)這種方法寫(xiě)入raid配置問(wèn)價(jià)/etc/mdadm.conf中,每個(gè)raid設(shè)備一行;寫(xiě)好后,我們要重啟一下raid;rootlinuxsir:#mdadm -Ss或rootlinuxsir:#mdadm -stop -scanmdadm:sto

35、pped /dev/md0rootlinuxsir:#mdadm -As或rootlinuxsir:#mdadm -assemble -scanmdadm:/dev/md0 has been started with 2 drives.注:-S和-stop相同,表示停止raid。而-s和-scan相同,表示掃描raid。-A和-assemble表示激活raid;這些參數(shù)都比較簡(jiǎn)單,查查man和help就知道了;激活raid后,我們要通過(guò)查看raid設(shè)備分區(qū)、文件系統(tǒng)初始化,掛載方法;既然我們已經(jīng)把raid設(shè)備做好了,我們就要使用這個(gè)設(shè)備。raid做好后,類(lèi)似一個(gè)沒(méi)有格式化的新硬盤(pán)。如果我們拿到

36、新硬盤(pán)時(shí)第一步是做什么?對(duì),是分區(qū)和格式化,安裝操作系統(tǒng)。raid做好后,沒(méi)有文件系統(tǒng),一樣是沒(méi)辦法用的,所以我們做好raid后,要來(lái)創(chuàng)建文件系統(tǒng);raid只不過(guò)是把幾個(gè)硬盤(pán)或分區(qū)綁定在一起成為一個(gè)大的虛擬物理存儲(chǔ)設(shè)備。如果我們要對(duì)這個(gè)大的虛擬設(shè)備進(jìn)行使用,就要在這個(gè)設(shè)備上創(chuàng)建文件系統(tǒng)才行。linux目前可用的文件系統(tǒng)有reiserfs、xfs、ext3,我推薦reiserfs和xfs,感覺(jué)這個(gè)比較安全點(diǎn)。雖然現(xiàn)在有超強(qiáng)的zfs,但我認(rèn)為還是處于小白鼠階段。對(duì)于重量級(jí)應(yīng)用來(lái)說(shuō),我們還是觀察一段時(shí)間再說(shuō)。raid做好后,我們要為它進(jìn)行進(jìn)行文件系統(tǒng)初始化,當(dāng)初始化完成后,我們就可以?huà)燧d使用了。在一

37、般情況下,我們可以把做好的raid掛載到/home,我們可以把所有的存儲(chǔ)性文件。在linux中,創(chuàng)建文件系統(tǒng)的工具有mkfs.xfs(創(chuàng)建xfs文件系統(tǒng)),mkfs.jfs(創(chuàng)建jfs文件系統(tǒng)),mkfs. reiserfs(創(chuàng)建reiserfs文件系統(tǒng)),mkfs.ext3(創(chuàng)建ext3文件系統(tǒng)).。我們推薦的是reiserfs和xfs,不推薦ext2和ext3,為什么不推薦?因?yàn)閷?shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn),性能不如人、安全不如人,怎么用?我不是ext文件系統(tǒng)的專(zhuān)家,我只用最方便,維護(hù)比較容易的文件系統(tǒng)。raid也可以分區(qū)來(lái)使用,但以我看來(lái),大可不必,凡是能用到raid的,大多是服務(wù)器領(lǐng)域。我

38、們可以把raid做成后,掛載到/home目錄上,有關(guān)數(shù)據(jù)存儲(chǔ)的都放在raid上。操作系統(tǒng)并不安裝在raid上,當(dāng)操作系統(tǒng)故障的時(shí)候,我們僅僅是修復(fù)或重裝操作系統(tǒng),對(duì)數(shù)據(jù)存儲(chǔ)的raid沒(méi)有任何影響。就是重裝操作系統(tǒng),我也能在幾分鐘之內(nèi)恢復(fù)raid。如果你想把raid再進(jìn)行分區(qū)是同,可以用fdisk、parted或cfdisk來(lái)進(jìn)行分區(qū)工作,也可以嘗試lvm的來(lái)對(duì)分區(qū)進(jìn)行管理,lvm能自動(dòng)調(diào)整分區(qū)的大小。當(dāng)然,我不會(huì)推薦raid+lvm,或?qū)aid進(jìn)行分區(qū)操作。raid做好后,我們就像使用物理硬盤(pán)一樣使用它,比如根據(jù)前面的列子,把/dev/sdb和/dev/sdc兩個(gè)硬盤(pán)做成raid0,其設(shè)備為

39、/dev/md0,我們就可以對(duì)/dev/md0進(jìn)行和物理硬盤(pán)一樣的操作。如果我們不分區(qū),只是進(jìn)行創(chuàng)建文件系統(tǒng),那就比較簡(jiǎn)單了。比如我們?cè)?dev/md0上創(chuàng)建reiserfs文件系統(tǒng),我們可以用mkfs. reiserfs命令來(lái)完成。第一步:查看/dev/md0設(shè)備是否存在,以及它的容量; rootlinuxsir:#fdisk -l /dev/md0Disk /dev/md0:159.9GB,159999852544bytes2heads,4sectors/track,39062464cylindersUnits=cylinders of 8 * 512=4096bytesDisk /dev

40、/md0 doesnt contain a valid partition table注:我們可以看到/dev/md0設(shè)備有158.0GB的容量,不包含有效分區(qū)。如果你想要用分區(qū)操作,請(qǐng)用fdisk /dev/md0、或cfdisk /dev/md0或parted /dev/md0來(lái)操作;第二步:創(chuàng)建文件系統(tǒng);在這里我們是計(jì)劃用reiserfs文件系統(tǒng);rootlinuxsir:#mkfs. reiserfs /dev/md0mkfs. reiserfs 3.6.19(2003 )A pair of credits:.Continue(y/n):y注:在這里輸入y,就進(jìn)行創(chuàng)建文件系統(tǒng)了;.Re

41、iserFS is successfully created on /dev/md0.這樣文件系統(tǒng)reiserfs就創(chuàng)建成功了。如果你想創(chuàng)建xfs文件系統(tǒng),就用mkfs.xfs /dev/md0,其它文件系統(tǒng)也類(lèi)似.第三步:掛載文件系統(tǒng)并使用;rootlinuxsir:#mkdir /mnt/datarootlinuxsir:#mount /dev/md0 /mnt/datarootlinuxsir:#df -lh /dev/md0文件系統(tǒng) 容量 已用 可用 已用% 掛載點(diǎn)/dev/md0 150G 33M 149G 1% /mnt/RAID0注:這樣就將設(shè)備/dev/md0設(shè)備掛載到/mnt

42、/RAID0上了??梢钥吹皆O(shè)備大小為150G。已使用33M,掛載點(diǎn)為/mnt/RAID0。我們可以向設(shè)備里存儲(chǔ)文件;其實(shí)根據(jù)linux文件系統(tǒng)的結(jié)構(gòu),以及最新linux軟件方面易用的特點(diǎn)。我們完全可以把/home獨(dú)立出來(lái)。把raid設(shè)備掛載到哦/home目錄上。凡是涉及用戶(hù)或數(shù)據(jù)存儲(chǔ)的,都可以放在/home中,比如數(shù)據(jù)庫(kù),網(wǎng)絡(luò)服務(wù)器有關(guān)數(shù)據(jù)存儲(chǔ)的,都指定到/home中的文件夾中。所有的一切都是根據(jù)方便管理為前提。如果你的raid是在安裝系統(tǒng)后創(chuàng)建的,如果掛載到linux先有目錄下,要先做好相應(yīng)目錄的數(shù)據(jù)遷移到raid設(shè)備中,然后再把raid掛載到linux目錄中。比如你想把raid掛載到/ho

43、me目錄中,可以先創(chuàng)建一個(gè)臨時(shí)的錄,把raid掛到這個(gè)臨時(shí)的目錄上,接著再把/home目錄下的文件都移到raid上,然后再把raid卸載,在重新掛載到/home中,這樣/home的數(shù)據(jù)就完遷移了。至于如何操作系統(tǒng)安裝或遷移到raid上,不同的linux發(fā)行版有不同的方法。Fedora或Redhat在安裝的過(guò)程中,就為我們提供了在raid1上安裝系統(tǒng)。其它的發(fā)行版是否支持,不太知道,Slackware是不支持。如果你想把系統(tǒng)移植到raid1中,可能需要安裝好系統(tǒng)后,再進(jìn)行移植。感覺(jué)軟raid1在一塊硬盤(pán)上做,沒(méi)太大的必要,如果要做raid1,也要在兩個(gè)硬盤(pán)上(或兩個(gè)屬于不同硬盤(pán)的分區(qū)上來(lái)做)。如

44、何開(kāi)機(jī)掛載raid設(shè)備,不同的發(fā)行版也有自己的方法,流程是先激活raid,然后才是掛載。4.軟raid的高級(jí)進(jìn)階及維護(hù);raid做好以后,并不是萬(wàn)事大吉了,還要進(jìn)行日常維護(hù);比如某個(gè)硬盤(pán)(或分區(qū))壞掉,我們可以在不停機(jī)的情況下?lián)Q上?;蛘呶覀?yōu)閞aid做一個(gè)允余的硬盤(pán)或分區(qū),當(dāng)raid發(fā)生故障時(shí),允余硬盤(pán)或分區(qū)第總推上工作,能實(shí)現(xiàn)零停機(jī)任務(wù)。4.1 如何自己向已存在的raid中,添加一塊硬盤(pán)或分區(qū);raid有幾種模式,比如創(chuàng)建、管理。下面我們所說(shuō)的就是raid的管理模式Manage,也可以說(shuō)是raid的進(jìn)階應(yīng)用。管理模式的目的,僅僅是為了把有問(wèn)題的raid成員換掉,或者為了管理的需要把其中一個(gè)r

45、aid成員由另一個(gè)來(lái)替換,也可能是為了安全需要,讓新增加的硬盤(pán)或分區(qū)當(dāng)做raid的備用(spare)成員;在管理模式中,raid的真正成員個(gè)數(shù)并不改變。比如我們做raid5是,用的是三個(gè)硬盤(pán)或分區(qū)。在增加raid成員時(shí),raid5仍是三個(gè)成員,容量還是保持不變,如果三個(gè)raid成員完全正常健康,新增加的成員,僅僅是備用(spare)成員。備用成員的用途就是當(dāng)raid的真正成員發(fā)生問(wèn)題時(shí),備用成員會(huì)馬上啟動(dòng),僅僅是起到安全的允余的作用;我們要向一個(gè)既已存在raid中,添加或移除一個(gè)硬盤(pán)或分區(qū),我們要用到mdadm工具的-f和-r以及-a參數(shù);mdadm /dev/mdX -f raid成員mda

46、dm /dev/mdX -r raid成員mdadm /dev/mdX -a raid成員注-f 同 -fail表示把一個(gè)設(shè)備列為有問(wèn)題的設(shè)備,以便用-r或-remove參數(shù)移除;-r 同 -remove表示把raid中的一個(gè)成員移出raid;-a 同 -add 表示向一個(gè)raid中添加一個(gè)成員;-re-add 重新把最近移除的raid成員重新添加到raid中;值得一提的是,這些參數(shù)的運(yùn)用,必須是在raid正常運(yùn)行的情況進(jìn)行。其中raid設(shè)備是/dev/mdX,X是一個(gè)大于0的整數(shù),raid成員是一個(gè)硬盤(pán)或分區(qū)。添加設(shè)備并不會(huì)把raid的容量擴(kuò)大,僅僅是為了添加備用成員,比如在raid1、ra

47、id5和raid10中特加有用。當(dāng)一個(gè)raid成員發(fā)生故障的時(shí)候,要用這種方法來(lái)讓新成員頂替工作;舉例:rootlinuxsir:#mdadm /dev/md0 -f /dev/sdb3rootlinuxsir:#mdadm /dev/md0 -r /dev/sdb3rootlinuxsir:#mdadm /dev/md0 -a /dev/sdb3注:當(dāng)我們想把一個(gè)raid的成員/dev/sdb3移除raid設(shè)備/dev/md0時(shí),要首先標(biāo)注它為有問(wèn)題的(也可能是完全正常的,為了管理需要)。然后 用-r參數(shù)移除,接著用-a參數(shù)再添加一個(gè)設(shè)備/dev/sdb5到raid設(shè)備/dev/md0中;當(dāng)

48、我們用mdadm -D /dev/md0查看raid的狀態(tài)時(shí),我們會(huì)看到raid的詳細(xì)信息。比如是否正常、raid成員.下面是我們需要掌握的;Raid Level:注:陣列級(jí)別;比如raid5Array Size:注:陣列容量大?。籙sed Dev Size:注:raid單位成員容量大小,也就是構(gòu)成raid的成員硬盤(pán)或分區(qū)的容量的大?。籖aid Devices:注:raid成員的個(gè)數(shù);Total Devices:raid中下屬成員的總計(jì)個(gè)數(shù),因?yàn)檫€有允余硬盤(pán)或分區(qū),也就是spare,為了raid的正常運(yùn)行,隨時(shí)可以推上去加入raid的;State:clean,degraded,recoveri

49、ng注:狀態(tài),chean表示正常,degraded表示有問(wèn)題,recovering表示正在恢復(fù)或構(gòu)建;Active Devices:被激活的raid成員個(gè)數(shù);Working Devices:注:正常的工作的raid成員個(gè)數(shù);Failed Devices:出問(wèn)題的raid成員;Spare Devices:備用raid成員個(gè)數(shù),當(dāng)一個(gè)raid的成員出問(wèn)題時(shí),其它硬盤(pán)或分區(qū)來(lái)頂替時(shí),raid要進(jìn)行構(gòu)建,在沒(méi)構(gòu)建完成時(shí),這個(gè)成員也會(huì)被認(rèn)為是spare設(shè)備;Rebuild Status:注:raid的構(gòu)建進(jìn)度,比如38%complete,表示構(gòu)建到38%;UUID:注:raid的UUID指,系統(tǒng)中是唯一

50、的;Number Major Minor RaidDevices State0 8 17 0 active sync /dev/sdb1 注:表示這個(gè)成員是激活的;1 8 18 1 active sync /dev/sdb2 注:表示這個(gè)成員是激活的;4 8 19 2 spare rebuilding /dev/sdb3 注:未被激活,正在構(gòu)建中的成員,正在傳輸數(shù)據(jù);3 8 49 -spare /dev/sdd1注:spare /dev/sdd1表示/dev/sdd1是raid的備用成員,當(dāng)raid的正式成員/dev/sdb1、/dev/sdb2、或/dev/sdb3中有一個(gè)出問(wèn)題的時(shí)候,這個(gè)

51、備用成員會(huì)自動(dòng)進(jìn)行工作的。這個(gè)并不是必須的,可以用添加raid成員的辦法來(lái)添加,也可以在創(chuàng)建的raid的時(shí)候添加;4.2如何為一個(gè)現(xiàn)有raid擴(kuò)充容量;在raid的管理模式中,我們提到增加raid成員的辦法,如果raid所有真正成員都是健康的,這個(gè)成員就進(jìn)入備用(spare)狀態(tài)。只有當(dāng)真正成員有問(wèn)題時(shí),這個(gè)備用成員才啟用頂替出問(wèn)題的成員來(lái)工作。但我們能不能向raid添加一個(gè)新成員,并且讓他成為raid的真正成員,并且達(dá)到raid擴(kuò)充容量呢?比如有一個(gè)raid5,同的是3個(gè)20G的分區(qū)做的,其總?cè)萘渴牵?-1)×20=40G,我們能否為這個(gè)raid5新增加一個(gè)20G的分區(qū),并且讓其成

52、為這個(gè)raid5真正的成員,并且達(dá)到能擴(kuò)充容量的目的,也就是說(shuō)讓這個(gè)raid5有四個(gè)真正的成員,其容量為(4-1)×20=60G。在硬raid中,這個(gè)工作比較容量,但在軟raid中,是否能實(shí)現(xiàn)呢?答案是肯定的,這種情況僅針對(duì)已經(jīng)做好的raid,并且已經(jīng)在存儲(chǔ)過(guò)程中發(fā)現(xiàn)raid容量不足的情況下使用。然后是一個(gè)新做的raid,我們發(fā)現(xiàn)計(jì)劃錯(cuò)了,我們重新做一次就行了,沒(méi)必要用擴(kuò)容的辦法。我們?yōu)楝F(xiàn)有的raid擴(kuò)充容量,利用的就是raid的Grow模式,中譯為raid的增長(zhǎng)模式;應(yīng)用范圍是raid1、raid4、raid5、raid6.raid擴(kuò)充流程:向一個(gè)已經(jīng)存在的raid中添加一個(gè)成員-

53、執(zhí)行擴(kuò)容指令注:在這里我們要用到raid的管理模式中的添加成員的辦法。也就是用到mdadm中的-a參數(shù),請(qǐng)參考上一節(jié)的內(nèi)容。這時(shí)添加的成員是備用(spare)成員,我們要把備用成員“推”到位置上。這時(shí)我們要用到mdadm的Grow模式;舉例說(shuō)明:比如我們做的raid5,由三個(gè)硬盤(pán)分區(qū)/dev/sdb1、/dev/sdc1、/dev/sdd1構(gòu)成,這時(shí)的raid5真正成員就是3個(gè)。當(dāng)我們添加一個(gè)分區(qū)/dev/sdb2到這個(gè)raid5時(shí),新增加的這個(gè)sdb2就是這個(gè)raid5R的備用(spare)成員。比如已有的raid5的設(shè)備是/dev/md0;首先,查看raid狀態(tài);rootlinuxsir:

54、#mdadm -D /dev/md0/dev/md0:Version:00.90.03Creation Time:Tug Aug 7 01:55:23 2007Raid Level:raid5 注:raid級(jí)別;Array Size:39069824(37.26GiB 40.01GB)注:raid容量是390669824Used Dev Size:19534912(18.63GiB 20.00GB)注:raid中每個(gè)成員的容量是19534912Raid Devices:3注:raid真正成員是3個(gè)設(shè)備構(gòu)成;Total Devices:3注:總共設(shè)備是3個(gè);Preferred Minor:0Pre

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論