两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種用于數(shù)據(jù)恢復(fù)及自修復(fù)的raid卡設(shè)計方法

文檔序號:6398543閱讀:198來源:國知局
專利名稱:一種用于數(shù)據(jù)恢復(fù)及自修復(fù)的raid卡設(shè)計方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機(jī)應(yīng)用技術(shù)領(lǐng)域,具體地說是一種用于數(shù)據(jù)恢復(fù)及自修復(fù)的raid卡設(shè)計方法。
背景技術(shù)
在現(xiàn)在大型存儲設(shè)備在各行各業(yè)的使用已經(jīng)越來越廣泛了,存儲設(shè)備上使用的磁盤以單盤的形式存在的現(xiàn)象也越來越少見,絕大部分在往磁盤來寫數(shù)據(jù)之前會把多塊磁盤新建成raid,這樣既擴(kuò)大了存儲塊得容量,也提高了讀寫速度(raidl除外),也有的提高了安全性(raidO除外)。Raid有硬件raid和軟件raid兩種,硬件raid是使用專門的raid卡對磁盤進(jìn)行管理;軟件raid使用操作系統(tǒng)的raid模塊對磁盤進(jìn)行管理,其作用相當(dāng)于一個raid卡硬件。使用軟件raid成本相對較低,但是增加了系統(tǒng)cpu的負(fù)擔(dān),會耗費(fèi)大量的cpu帶寬。而使用raid卡管理磁盤,相對來講能較大的提高存儲的性能,降低系統(tǒng)負(fù)擔(dān),這在將來的存儲系統(tǒng)設(shè)計的時候會越來越多的使用?,F(xiàn)行的raid卡在設(shè)計上有缺陷,主要體現(xiàn)在使用raid卡以后,系統(tǒng)不能直接的與磁盤進(jìn)行交互,這兩者之間必須通過raid卡才能通信,也即raid對系統(tǒng)而言把底部的磁盤進(jìn)行了屏蔽。這會在raid數(shù)據(jù)盤出現(xiàn)問題,需要進(jìn)行數(shù)據(jù)恢復(fù)的時候帶了麻煩,或者raid系統(tǒng)需要人為干預(yù)的時候也將不容易實現(xiàn)。在raid出現(xiàn)故障的時候(如raid5系統(tǒng)出現(xiàn)一塊盤掉盤),如果在開始設(shè)置了熱備盤,raid會重建。raid重建的過程中,會嚴(yán)重影響raid的IO性能。這主要是raid重建的時候,會占用大量的IO帶寬,而且易出現(xiàn)重建不成功的情況。在很多情況下,raid掉盤后,raid重建的時候,管理員會把存儲業(yè)務(wù)斷開,這固然可以使存儲在raid重建的時候更不容易出錯,但是對于大型的數(shù)據(jù)中心來說,把業(yè)務(wù)斷開可能會影響很多用戶的工作?,F(xiàn)在的raid在重建的時候,一般都是把原先的故障盤完全替換,全盤重建,費(fèi)時較多,而有時raid掉線并不是磁盤出現(xiàn)了無法使用的錯誤,有可能僅僅是磁盤在讀寫數(shù)據(jù)的時候出現(xiàn)了超時,以至于raid卡沒能在規(guī)定的時間內(nèi)接收到磁盤的恢復(fù),使raid以為該磁盤出現(xiàn)了嚴(yán)重的故障,而使磁盤掉線。對于磁盤掉線,進(jìn)行raid重建問題,應(yīng)該分清楚磁盤出現(xiàn)故障的嚴(yán)重程度,然后再選擇是否重建或者如何重建。

發(fā)明內(nèi)容
本發(fā)明的技術(shù)任務(wù)是解決現(xiàn)有技術(shù)的不足,提供一種用于數(shù)據(jù)恢復(fù)及自修復(fù)的raid卡設(shè)計方法。本發(fā)明的技術(shù)方案是按以下方式實現(xiàn)的,具體步驟如下:
(一)在raid出現(xiàn)嚴(yán)重故障需要人為干預(yù)并進(jìn)行數(shù)據(jù)恢復(fù)時,raid系統(tǒng)與數(shù)據(jù)恢復(fù)系統(tǒng)交互,為了達(dá)到方便數(shù)據(jù)恢復(fù)工作更好的進(jìn)行,raid板卡添加功能設(shè)計如下:
a、對于raid系統(tǒng)在正常運(yùn)行的時候,操作系統(tǒng)不需要與磁盤交互,只是在出現(xiàn)故障的時候,操作系統(tǒng)才需要與磁盤進(jìn)行交互,對于這種情況,raid卡把與系統(tǒng)cpu連接的接口設(shè)計成復(fù)用端口;
b、該復(fù)用端口用如下方法實現(xiàn),使用撥接開關(guān)進(jìn)行切換,當(dāng)將開關(guān)撥到某一位置時,操作系統(tǒng)看不到底部的磁盤,只能看到raid,系統(tǒng)不能對接在raid卡上的磁盤進(jìn)行操作,當(dāng)開關(guān)撥到另一位置時,操作系統(tǒng)同時看到raid以及raid卡上的各個磁盤,并且能對磁盤通過相關(guān)軟件進(jìn)行操作;
C、在數(shù)據(jù)恢復(fù)的時候,現(xiàn)有的數(shù)據(jù)恢復(fù)軟件基本在windows系統(tǒng)下運(yùn)行,在數(shù)據(jù)恢復(fù)工程師實施數(shù)據(jù)恢復(fù)的時候,只需要把相關(guān)軟件安裝上去,在本機(jī)上進(jìn)行數(shù)據(jù)恢復(fù)相關(guān)操作,以便盡可能地保護(hù)用戶數(shù)據(jù)的安全;
d、對于使用unix,Iinux操作系統(tǒng)的設(shè)備,存儲上的數(shù)據(jù)盤需要與外界數(shù)據(jù)恢復(fù)工程師的計算設(shè)備相連,為了方便數(shù)據(jù)恢復(fù),raid卡最好能提供對外的如USB的相關(guān)接口,該接口在平時不允許對設(shè)備進(jìn)行連接,它的對外工作與否,應(yīng)使用撥接開關(guān)控制,當(dāng)需要raid卡通過USB接口對外連接時,通過撥接開關(guān)斷開raid卡與主機(jī)一切邏輯連接;
通過上述措施,raid系統(tǒng)在raid —旦崩潰需要進(jìn)行數(shù)據(jù)恢復(fù)的時候就能提供很大的方便;
(二)在raid系統(tǒng)出現(xiàn)掉盤時,raid系統(tǒng)維護(hù)一個有寫操作的條帶列表,raid系統(tǒng)自行快速重建,包括如下步驟;
a、對于raid系統(tǒng)出現(xiàn)掉盤之后,在沒有設(shè)置熱備盤的情況下,raid會出現(xiàn)降級,這時掉線盤不會進(jìn)行數(shù)據(jù)的讀寫,所有的數(shù)據(jù)的讀寫由其他盤承擔(dān),并且開始維護(hù)一個列表,并記錄從掉盤開始的raid各條帶的寫情況;
b、由于在很多情況下,磁盤掉盤并不是磁盤出現(xiàn)嚴(yán)重問題,有可能是磁盤在做IO操作的是沒有來得及響應(yīng),以至于raid系統(tǒng)誤判該盤已經(jīng)不能正常工作了 ;
C、因此為了減少投資,raid系統(tǒng)盡快回復(fù)正常,raid卡應(yīng)該保持對掉線盤進(jìn)行喚醒操作,如果在喚醒多次后,磁盤依然沒有正確回應(yīng),這時raid卡應(yīng)該把該磁盤當(dāng)成出現(xiàn)了嚴(yán)重的故障,后續(xù)管理員應(yīng)該讓該盤完全脫離raid,并把掉盤情況,喚醒情況,相關(guān)故障診斷情況,采取的措施寫入raid卡日志及系統(tǒng)日志,同時把以前維護(hù)的掉盤開始的raid各條帶的寫記錄情況清除;
d、如果喚醒通過,raid卡應(yīng)該把原來掉線的磁盤與其他成員盤一起工作,承擔(dān)數(shù)據(jù)的讀寫,即新寫入的數(shù)據(jù)寫入raid當(dāng)中所有的磁盤,原來掉線期間的數(shù)據(jù),根據(jù)raid卡維護(hù)的列表通過讀改寫的方式重新進(jìn)行寫入所有的盤,這樣就避免需要重新添加新盤,全盤重建的情況;
Raid需要維護(hù)的列表就是掉盤時間段具體有哪些條帶組中的條帶內(nèi)容進(jìn)行了改變,假設(shè)當(dāng)raid完成了條帶組4的寫入,然后磁盤3出現(xiàn)掉盤,這時raid5會降級成raidO,繼續(xù)的把數(shù)據(jù)寫入磁盤I和磁盤2用P表示校驗條帶,如PO表示O號條帶組的校驗條帶,條帶組η及以后表示raid通過磁盤喚醒,磁盤3又重新加入到raid當(dāng)中,并且一起與其他盤一起進(jìn)行了數(shù)據(jù)存儲,這樣也就是只有條帶組4到條帶組η之間的條帶組需要進(jìn)行恢復(fù),因此根據(jù)條帶數(shù)據(jù)結(jié)構(gòu),把掉盤時間段的數(shù)據(jù)重建就行了,這樣就大大節(jié)省了 raid重建的時間;
(三)快速raid重建過程實現(xiàn),raid系統(tǒng)是根據(jù)優(yōu)先級進(jìn)行讀寫調(diào)度,以便前端系統(tǒng)與存儲交互時能繼續(xù)正常進(jìn)行,具體重建步驟如下:
a、raid重建是否啟動需要對現(xiàn)在raid的io情況進(jìn)行監(jiān)測,如果現(xiàn)階段raid的IO很繁忙,則暫時停止重建,也即raid重建的IO優(yōu)先級放在最低;
b、當(dāng)raid的io相對比較空閑的時候,raid卡系統(tǒng)根據(jù)前面維護(hù)的條帶寫列表找出在raid掉盤期間那些條帶進(jìn)行了改變,然后讀出其中的一個條帶組中原來運(yùn)行良好的磁盤中的數(shù)據(jù),由于原來的raid類型是raid5,掉盤以后raid會降級,變成raidO,因此剩余的那些盤的條帶當(dāng)中存儲的全部都是數(shù)據(jù),沒有校驗數(shù)據(jù);
C、如果要恢復(fù)整個raid5系統(tǒng),必須確定在一個條帶組當(dāng)中,哪個磁盤條帶用來存放校驗數(shù)據(jù),這需要掃描前面的條帶組,得出raid系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)到底是左同步,左異步,右同步,右異步,常規(guī)還是非常規(guī)的數(shù)據(jù)存儲結(jié)構(gòu)形式,最后確定出條帶組中哪個磁盤條帶用來存放校驗數(shù)據(jù),最后確定出該raid的數(shù)據(jù)結(jié)構(gòu)形式,如要確定需要重建部分的數(shù)據(jù)存儲結(jié)構(gòu),確定出校驗條帶如何存放,如能夠掃描前面的4個條帶組,就能得出這是常規(guī)左異步結(jié)構(gòu),當(dāng)然也能根據(jù)raid開始設(shè)定的數(shù)據(jù)存儲結(jié)構(gòu),計算出各個條帶組的數(shù)據(jù)存放方式;
d、確定出了數(shù)據(jù)的結(jié)構(gòu)形式后,對剛才讀取的數(shù)據(jù)計算出校驗數(shù)據(jù),完成后把各條帶數(shù)據(jù)按照前面確定的數(shù)據(jù)結(jié)構(gòu)形式寫入磁盤,這樣就完成了維護(hù)列表當(dāng)中的一個條帶組數(shù)據(jù)的重建,重建完成后還需要把該條帶組從維護(hù)的數(shù)據(jù)列表當(dāng)中刪除;
e、按照前面的步驟進(jìn)行下一個條帶組的重建過程,直到維護(hù)列表中的條帶組全部恢復(fù)完成。本發(fā)明的有益效果:通過本發(fā)明的方法可以在硬件raid卡與計算機(jī)系統(tǒng)在數(shù)據(jù)出現(xiàn)損壞的時候如何更好的交互以方便后面的數(shù)據(jù)修復(fù),以及在數(shù)據(jù)修復(fù)期間如何提高修復(fù)速度。


圖1是raid板卡結(jié)構(gòu)示意 圖2是raid5掉盤并被喚醒情況示意圖。
具體實施例方式下面結(jié)合附圖對本發(fā)明的方法作進(jìn)一步詳細(xì)說明。本發(fā)明主要從3個方面提出用于數(shù)據(jù)恢復(fù)和自修復(fù)的raid系統(tǒng)實現(xiàn)方法。(一)實現(xiàn)在raid出現(xiàn)嚴(yán)重故障,需要人為干預(yù)并進(jìn)行數(shù)據(jù)恢復(fù)時,raid系統(tǒng)與數(shù)據(jù)恢復(fù)系統(tǒng)交互。為了達(dá)到方便數(shù)據(jù)恢復(fù)工作更好的進(jìn)行,raid板卡添加功能設(shè)計
a、對于raid系統(tǒng)在正常運(yùn)行的時候,操作系統(tǒng)不需要與磁盤交互,只是在出現(xiàn)故障的時候,操作系統(tǒng)才需要與磁盤進(jìn)行交互。對于這種情況,raid卡可以把與系統(tǒng)cpu連接的接口設(shè)計成復(fù)用端口;
b、該復(fù)用端口可以用如下方法實現(xiàn),使用撥接開關(guān)(或者相關(guān)類似方法),當(dāng)撥接開關(guān)撥到某一位置(假設(shè)為A位置)時,操作系統(tǒng)看不到底部的磁盤,只能看到raid,系統(tǒng)不能對接在raid卡上的磁盤進(jìn)行操作。當(dāng)開關(guān)撥到另一位置(假設(shè)為B位置)時,操作系統(tǒng)可以同時看到raid以及raid卡上的各個磁盤,并且能對磁盤通過相關(guān)軟件進(jìn)行操作;
C、上面的設(shè)計方式對于windows系統(tǒng)比較實用,在數(shù)據(jù)恢復(fù)的時候,現(xiàn)有的數(shù)據(jù)恢復(fù)軟件基本在windows系統(tǒng)下運(yùn)行,在數(shù)據(jù)恢復(fù)工程師設(shè)施數(shù)據(jù)恢復(fù)的時候,只需要把相關(guān)軟件安裝上去,在本機(jī)上進(jìn)行數(shù)據(jù)恢復(fù)相關(guān)操作。這可以盡可能的保護(hù)用戶數(shù)據(jù)的安全; d、因為現(xiàn)在很多服務(wù)器,存儲等設(shè)備的操作系統(tǒng)都是unix,Iinux等操作系統(tǒng),現(xiàn)在的數(shù)據(jù)恢復(fù)軟件暫時不能在上面運(yùn)行。而已在很多時候存儲上的數(shù)據(jù)盤還是需要與外界數(shù)據(jù)恢復(fù)工程師的計算設(shè)備相連,為了數(shù)據(jù)恢復(fù)的方便,raid卡最好能提供對外的如USB等相關(guān)接口。該接口在平時不允許對進(jìn)行連接,它的對外工作與否也使用通過上面提到的撥接開關(guān)控制。當(dāng)撥接開關(guān)撥到假設(shè)為C位置時raid卡可以通過USB接口對外連接,并且斷開raid卡與主機(jī)一切邏輯連接。這樣對于raid系統(tǒng)就可以在raid —旦崩潰需要進(jìn)行數(shù)據(jù)恢復(fù)的時候提供很大的方便。(二)在raid系統(tǒng)出現(xiàn)掉盤,raid系統(tǒng)維護(hù)一個有寫操作的條帶列表,根據(jù)數(shù)據(jù)的有raid系統(tǒng)自行快速重建。(以raid5為例,因為raid5現(xiàn)在使用比較多,安全性,性能各方面相對都比較好。)
a、對于raid系統(tǒng)出現(xiàn)掉盤(單個盤掉盤)之后,在沒有設(shè)置熱備盤的情況下,raid會出現(xiàn)降級,這時掉線盤不會進(jìn)行數(shù)據(jù)的讀寫,所有的數(shù)據(jù)的讀寫由其他盤承擔(dān)。并且開始維護(hù)一個列表,并記錄從掉盤開始的raid各條帶的寫情況;
b、由于在很多情況下,磁盤掉盤并不是磁盤出現(xiàn)嚴(yán)重問題,有可能是磁盤在做IO操作的是沒有來得及響應(yīng),以至于raid系統(tǒng)以為該盤已經(jīng)不能正常工作了 ;
C、因此為了減少投資,raid系統(tǒng)盡快回復(fù)正常,raid卡應(yīng)該保持對掉線盤進(jìn)行喚醒操作,如果在喚醒多次后,比如5次,磁盤依然沒有正確回應(yīng),這時raid卡應(yīng)該把該磁盤當(dāng)成出現(xiàn)了嚴(yán)重的故障,讓該盤完全脫離raid,并把掉盤情況,喚醒情況,相關(guān)故障診斷情況,后續(xù)管理員應(yīng)該采取的措施寫入raid卡日志及系統(tǒng)日志。同時把以前維護(hù)的掉盤開始的raid各條帶的寫記錄情況清除;
d、如果喚醒通過,raid卡應(yīng)該把原來掉線的磁盤與其他成員盤一起工作,承擔(dān)數(shù)據(jù)的讀寫。即新寫入的數(shù)據(jù)寫入raid當(dāng)中所有的磁盤,原來掉線期間的數(shù)據(jù),根據(jù)raid卡維護(hù)的列表通過讀改寫的方式重新進(jìn)行寫入所有的盤。這樣就避免需要重新添加新盤,全盤重建的情況。如圖2,Raid需要維護(hù)的列表就是掉盤時間段具體有哪些條帶組中的條帶內(nèi)容進(jìn)行了改變。假設(shè)當(dāng)raid完成了條帶組4的寫入,然后磁盤3出現(xiàn)掉盤,這是raid5會降級成raidO,繼續(xù)的把數(shù)據(jù)寫入磁盤I和磁盤2。圖2中P表示校驗條帶,如PO表示O號條帶組的校驗條帶。表格里的數(shù)字表示條帶邏輯順序。條帶組η及以后表示raid通過磁盤喚醒,磁盤3又重新加入到raid當(dāng)中,并且一起與其他盤一起進(jìn)行了數(shù)據(jù)存儲,這樣也就是只有條帶組4到條帶組η之間的條帶組需要進(jìn)行恢復(fù),因此根據(jù)條帶數(shù)據(jù)結(jié)構(gòu),把掉盤時間段的數(shù)據(jù)重建就行了,這樣就大大節(jié)省了 raid重建的時間。(三)快速raid重建過程的具體重建步驟:實現(xiàn)raid系統(tǒng)根據(jù)優(yōu)先級進(jìn)行讀寫調(diào)度,以便前端系統(tǒng)與存儲交互時能繼續(xù)正常進(jìn)行。(該重建與現(xiàn)在常用的raid全盤重建是不同的)
a、raid重建是否啟動需要對現(xiàn)在raid的io情況進(jìn)行監(jiān)測,如果現(xiàn)階段raid的IO很繁忙,則暫時停止重建。也即raid重建的IO優(yōu)先級放在最低;
b、當(dāng)raid的io相對比較空閑的時候,raid卡系統(tǒng)根據(jù)前面維護(hù)的條帶寫列表找出在raid掉盤期間那些條帶進(jìn)行了改變,然后讀出其中的一個條帶組中原來運(yùn)行良好的磁盤中的數(shù)據(jù)。由于原來的raid類型是raid5,掉盤以后raid會降級,變成raidO,因此剩余的那些盤的條帶當(dāng)中存儲的全部都是數(shù)據(jù),沒有校驗數(shù)據(jù);
C、如果要恢復(fù)整個raid5系統(tǒng),必須確定在一個條帶組當(dāng)中,那個磁盤條帶用來存放校驗數(shù)據(jù),這需要掃描前面的條帶組,得出raid系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)到底是左同步,左異步,右同步,右異步,常規(guī)還是非常規(guī)的數(shù)據(jù)存儲結(jié)構(gòu)形式,最后確定出條帶組中哪個磁盤條帶用來存放校驗數(shù)據(jù),最后確定出該raid的數(shù)據(jù)結(jié)構(gòu)形式。如圖2所示,如要確定需要重建部分的數(shù)據(jù)存儲結(jié)構(gòu),確定出校驗條帶如何存放,如可以掃描前面的4個條帶組,就可以得出這是常規(guī)左異步結(jié)構(gòu)。當(dāng)然也可以根據(jù)raid開始設(shè)定的數(shù)據(jù)存儲結(jié)構(gòu),計算出各個條帶組的數(shù)據(jù)存放方式;
d、確定出了數(shù)據(jù)的結(jié)構(gòu)形式后,對剛才讀取的數(shù)據(jù)計算出校驗數(shù)據(jù),完成后把各條帶數(shù)據(jù)按照前面確定的數(shù)據(jù)結(jié)構(gòu)形式寫入磁盤。這樣就完成了維護(hù)列表當(dāng)中的一個條帶組數(shù)據(jù)的重建,重建完成后還需要把該條帶組從維護(hù)的數(shù)據(jù)列表當(dāng)中刪除;
e、按照前面的步驟進(jìn)行下一個條帶組的重建過程,直到維護(hù)列表中的條帶組全部恢復(fù)完成。除本發(fā)明的說明書公開的技術(shù)特征外均為本專業(yè)技術(shù)人員的公職技術(shù)。
權(quán)利要求
1.一種用于數(shù)據(jù)恢復(fù)及自修復(fù)的raid卡設(shè)計方法,其特征在于,具體步驟如下: (一)在raid出現(xiàn)嚴(yán)重故障需要人為干預(yù)并進(jìn)行數(shù)據(jù)恢復(fù)時,raid系統(tǒng)與數(shù)據(jù)恢復(fù)系統(tǒng)交互,為了達(dá)到方便數(shù)據(jù)恢復(fù)工作更好的進(jìn)行,raid板卡添加功能設(shè)計如下: a、對于raid系統(tǒng)在正常運(yùn)行的時候,操作系統(tǒng)不需要與磁盤交互,只是在出現(xiàn)故障的時候,操作系統(tǒng)才需要與磁盤進(jìn)行交互,對于這種情況,raid卡把與系統(tǒng)cpu連接的接口設(shè)計成復(fù)用端口; b、該復(fù)用端口用如下方法實現(xiàn),使用撥接開關(guān)進(jìn)行切換,當(dāng)將開關(guān)撥到某一位置時,操作系統(tǒng)看不到底部的磁盤,只能看到raid,系統(tǒng)不能對接在raid卡上的磁盤進(jìn)行操作,當(dāng)開關(guān)撥到另一位置時,操作系統(tǒng)同時看到raid以及raid卡上的各個磁盤,并且能對磁盤通過相關(guān)軟件進(jìn)行操作; C、在數(shù)據(jù)恢復(fù)的時候,現(xiàn)有的數(shù)據(jù)恢復(fù)軟件基本在windows系統(tǒng)下運(yùn)行,在數(shù)據(jù)恢復(fù)工程師實施數(shù)據(jù)恢復(fù)的時候,只需要把相關(guān)軟件安裝上去,在本機(jī)上進(jìn)行數(shù)據(jù)恢復(fù)相關(guān)操作,以便盡可能地保護(hù)用戶數(shù)據(jù)的安全; d、對于使用unix,Iinux操作系統(tǒng)的設(shè)備,存儲上的數(shù)據(jù)盤需要與外界數(shù)據(jù)恢復(fù)工程師的計算設(shè)備相連,為了方便數(shù)據(jù)恢復(fù),raid卡最好能提供對外的如USB的相關(guān)接口,該接口在平時不允許對設(shè)備進(jìn)行連接,它的對外工作與否,應(yīng)使用撥接開關(guān)控制,當(dāng)需要raid卡通過USB接口對外連接時,通過撥接開關(guān)斷開raid卡與主機(jī)一切邏輯連接; 通過上述措施,raid系統(tǒng)在raid —旦崩潰需要進(jìn)行數(shù)據(jù)恢復(fù)的時候就能提供很大的方便; (二)在raid系統(tǒng)出現(xiàn)掉盤時,raid系統(tǒng)維護(hù)一個有寫操作的條帶列表,raid系統(tǒng)自行快速重建,包括如下步驟; a、對于raid系統(tǒng)出現(xiàn)掉盤之后,在沒有設(shè)置熱備盤的情況下,raid會出現(xiàn)降級,這時掉線盤不會進(jìn)行數(shù)據(jù)的讀寫,所有的數(shù)據(jù)的讀寫由其他盤承擔(dān),并且開始維護(hù)一個列表,并記錄從掉盤開始的raid各條帶的寫情況; b、由于在很多情況下,磁盤掉盤并不是磁盤出現(xiàn)嚴(yán)重問題,有可能是磁盤在做IO操作的是沒有來得及響應(yīng),以至于raid系統(tǒng)誤判該盤已經(jīng)不能正常工作了 ; C、因此為了減少投資,raid系統(tǒng)盡快回復(fù)正常,raid卡應(yīng)該保持對掉線盤進(jìn)行喚醒操作,如果在喚醒多次后,磁盤依然沒有正確回應(yīng),這時raid卡應(yīng)該把該磁盤當(dāng)成出現(xiàn)了嚴(yán)重的故障,后續(xù)管理員應(yīng)該讓該盤完全脫離raid,并把掉盤情況,喚醒情況,相關(guān)故障診斷情況,采取的措施寫入raid卡日志及系統(tǒng)日志,同時把以前維護(hù)的掉盤開始的raid各條帶的寫記錄情況清除; d、如果喚醒通過,raid卡應(yīng)該把原來掉線的磁盤與其他成員盤一起工作,承擔(dān)數(shù)據(jù)的讀寫,即新寫入的數(shù)據(jù)寫入raid當(dāng)中所有的磁盤,原來掉線期間的數(shù)據(jù),根據(jù)raid卡維護(hù)的列表通過讀改寫的方式重新進(jìn)行寫入所有的盤,這樣就避免需要重新添加新盤,全盤重建的情況; Raid需要維護(hù)的列表就是掉盤時間段具體有哪些條帶組中的條帶內(nèi)容進(jìn)行了改變,假設(shè)當(dāng)raid完成了條帶組4的寫入,然后磁盤3出現(xiàn)掉盤,這時raid5會降級成raidO,繼續(xù)的把數(shù)據(jù)寫入磁盤I和磁盤2用P表示校驗條帶,如PO表示O號條帶組的校驗條帶,條帶組η及以后表示raid通過磁盤喚醒,磁盤3又重新加入到raid當(dāng)中,并且一起與其他盤一起進(jìn)行了數(shù)據(jù)存儲,這樣也就是只有條帶組4到條帶組η之間的條帶組需要進(jìn)行恢復(fù),因此根據(jù)條帶數(shù)據(jù)結(jié)構(gòu),把掉盤時間段的數(shù)據(jù)重建就行了,這樣就大大節(jié)省了 raid重建的時間; (三)快速raid重建過程實現(xiàn),raid系統(tǒng)是根據(jù)優(yōu)先級進(jìn)行讀寫調(diào)度,以便前端系統(tǒng)與存儲交互時能繼續(xù)正常進(jìn)行,具體重建步驟如下: a、raid重建是否啟動需要對現(xiàn)在raid的io情況進(jìn)行監(jiān)測,如果現(xiàn)階段raid的IO很繁忙,則暫時停止重建,也即raid重建的IO優(yōu)先級放在最低; b、當(dāng)raid的io相對比較空閑的時候,raid卡系統(tǒng)根據(jù)前面維護(hù)的條帶寫列表找出在raid掉盤期間那些條帶進(jìn)行了改變,然后讀出其中的一個條帶組中原來運(yùn)行良好的磁盤中的數(shù)據(jù),由于原來的raid類型是raid5,掉盤以后raid會降級,變成raidO,因此剩余的那些盤的條帶當(dāng)中存儲的全部都是數(shù)據(jù),沒有校驗數(shù)據(jù); C、如果要恢復(fù)整個raid5系統(tǒng),必須確定在一個條帶組當(dāng)中,哪個磁盤條帶用來存放校驗數(shù)據(jù),這需要掃描前面的條帶組,得出raid系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)到底是左同步,左異步,右同步,右異步,常規(guī)還是非常規(guī)的數(shù)據(jù)存 儲結(jié)構(gòu)形式,最后確定出條帶組中哪個磁盤條帶用來存放校驗數(shù)據(jù),最后確定出該raid的數(shù)據(jù)結(jié)構(gòu)形式,如要確定需要重建部分的數(shù)據(jù)存儲結(jié)構(gòu),確定出校驗條帶如何存放,如能夠掃描前面的4個條帶組,就能得出這是常規(guī)左異步結(jié)構(gòu),當(dāng)然也能根據(jù)raid開始設(shè)定的數(shù)據(jù)存儲結(jié)構(gòu),計算出各個條帶組的數(shù)據(jù)存放方式; d、確定出了數(shù)據(jù)的結(jié)構(gòu)形式后,對剛才讀取的數(shù)據(jù)計算出校驗數(shù)據(jù),完成后把各條帶數(shù)據(jù)按照前面確定的數(shù)據(jù)結(jié)構(gòu)形式寫入磁盤,這樣就完成了維護(hù)列表當(dāng)中的一個條帶組數(shù)據(jù)的重建,重建完成后還需要把該條帶組從維護(hù)的數(shù)據(jù)列表當(dāng)中刪除; e、按照前面的步驟進(jìn)行下一個條帶組的重建過程,直到維護(hù)列表中的條帶組全部恢復(fù)完成。
全文摘要
本發(fā)明提供一種用于數(shù)據(jù)恢復(fù)及自修復(fù)的raid卡設(shè)計方法,具體步驟如下在raid出現(xiàn)嚴(yán)重故障需要人為干預(yù)并進(jìn)行數(shù)據(jù)恢復(fù)時,raid系統(tǒng)與數(shù)據(jù)恢復(fù)系統(tǒng)交互,為了達(dá)到方便數(shù)據(jù)恢復(fù)工作更好的進(jìn)行,raid板卡添加功能設(shè)計如下a、對于raid系統(tǒng)在正常運(yùn)行的時候,操作系統(tǒng)不需要與磁盤交互,只是在出現(xiàn)故障的時候,操作系統(tǒng)才需要與磁盤進(jìn)行交互,對于這種情況,raid卡把與系統(tǒng)cpu連接的接口設(shè)計成復(fù)用端口;b、該復(fù)用端口用如下方法實現(xiàn),使用撥接開關(guān)進(jìn)行切換,當(dāng)將開關(guān)撥到某一位置時,操作系統(tǒng)看不到底部的磁盤,只能看到raid,系統(tǒng)不能對接在raid卡上的磁盤進(jìn)行操作,當(dāng)開關(guān)撥到另一位置時,操作系統(tǒng)同時看到raid以及raid卡上的各個磁盤,并且能對磁盤通過相關(guān)軟件進(jìn)行操作。
文檔編號G06F11/14GK103116474SQ201310028448
公開日2013年5月22日 申請日期2013年1月25日 優(yōu)先權(quán)日2013年1月25日
發(fā)明者肖健明 申請人:浪潮電子信息產(chǎn)業(yè)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
屏东市| 清流县| 翁源县| 宁蒗| 云阳县| 汾阳市| 普兰店市| 甘泉县| 郯城县| 长武县| 六安市| 泸溪县| 赞皇县| 黎川县| 邵东县| 龙里县| 泗洪县| 新密市| 本溪市| 扶绥县| 黔江区| 古交市| 佛山市| 凌海市| 比如县| 河津市| 闽清县| 辽源市| 察哈| 宝坻区| 三河市| 浙江省| 雷波县| 澳门| 凤山县| 沁水县| 龙井市| 泰宁县| 南溪县| 南澳县| 富民县|