專利名稱:用于提供對存儲系統(tǒng)的延遲維護(hù)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及存儲系統(tǒng)維護(hù)領(lǐng)域。更具體地,本發(fā)明涉及提供對存儲 系統(tǒng)的延遲維護(hù)的方法。
背景技術(shù):
典型的數(shù)據(jù)中心的存儲需要已經(jīng)增加了 一段時(shí)間,并且預(yù)期在可預(yù)見的 未來繼續(xù)增加。即使盤驅(qū)動(dòng)器的容量已經(jīng)增加,但是存儲要求的增加導(dǎo)致在 數(shù)據(jù)中心中具有更多的盤驅(qū)動(dòng)器和更多的存儲系統(tǒng)。
大多數(shù)存儲系統(tǒng)的典型服務(wù)模式是盤驅(qū)動(dòng)器故障時(shí)的按需式
(on-demand)模式,使用可用的備用之一來重建故障驅(qū)動(dòng)器的數(shù)據(jù)。同時(shí), 被通知了該故障的服務(wù)工程師通常在24小時(shí)內(nèi)調(diào)度訪問,以便用新的驅(qū)動(dòng)器 替換故障的驅(qū)動(dòng)器,該新的驅(qū)動(dòng)器現(xiàn)在變?yōu)樾碌膫溆?在一些實(shí)現(xiàn)中,在將 數(shù)據(jù)從備用復(fù)制到新的驅(qū)動(dòng)器以后,將新的驅(qū)動(dòng)器插入陣列中,從而將備用 返回到池(pool))。對于具有若干盤驅(qū)動(dòng)器(500或更多)的數(shù)據(jù)中心,在任 何時(shí)間點(diǎn)存在至少一個(gè)故障盤驅(qū)動(dòng)器的概率相當(dāng)高。
按需式維護(hù)模式對大的安裝具有以下不利影響與用于替換驅(qū)動(dòng)器的服 務(wù)工程師訪問相關(guān)聯(lián)的高服務(wù)成本,以及錯(cuò)誤的驅(qū)動(dòng)器可能被拔出系統(tǒng)的可 能性。
為了減少與盤驅(qū)動(dòng)器的按需式維護(hù)相關(guān)聯(lián)的成本,有時(shí)使用延遲 (deferred)維護(hù)模式。在此情況下,創(chuàng)建備用盤驅(qū)動(dòng)器的池,使得多個(gè)備用 可用。當(dāng)一個(gè)盤驅(qū)動(dòng)器出故障時(shí),使用來自池中的一個(gè)備用用于替換。如果 第二個(gè)驅(qū)動(dòng)器出故障,則可以使用來自池中的另一個(gè)備用。只有在備用的數(shù) 量低于最小值時(shí)才需要服務(wù)行動(dòng)。
不同于為每個(gè)單獨(dú)的驅(qū)動(dòng)器故障調(diào)度訪問,服務(wù)工程師可以將多個(gè)替換 行動(dòng)打包為單個(gè)訪問,并且最小化服務(wù)成本。這種方案可以工作于具有若干 盤驅(qū)動(dòng)器的大型存儲系統(tǒng),其中備用池可用于遍及連接到系統(tǒng)的所有驅(qū)動(dòng)器 的替換。圖1圖示了大型存儲系統(tǒng),其中這種大型存儲系統(tǒng)包括100- 500個(gè)驅(qū)動(dòng) 器。在這種存儲系統(tǒng)中,可以容易地創(chuàng)建大的備用驅(qū)動(dòng)器池,以便延遲維護(hù) 行動(dòng)。各備用驅(qū)動(dòng)器可以由控制器訪問,以便替換存儲系統(tǒng)內(nèi)的已經(jīng)出故障 的任何驅(qū)動(dòng)器。要注意的是,圖1所示的兩個(gè)控制器典型用于主動(dòng)(active) -主動(dòng)配置,即,在正常條件下,兩個(gè)控制器都主動(dòng)地管理驅(qū)動(dòng)器,但是如果 一個(gè)控制器出故障,則另一個(gè)管理整個(gè)驅(qū)動(dòng)器組,直到故障的控制器被替換。 各驅(qū)動(dòng)器全部使用RAID方案配置,使得在驅(qū)動(dòng)器故障時(shí),沒有數(shù)據(jù)損失。 然而,需要將備用放入具有故障驅(qū)動(dòng)器的陣列以便替代它。在故障和重建階 段期間陣列可操作,其中對應(yīng)于故障驅(qū)動(dòng)器的數(shù)據(jù)被重建到備用上。然而, 如果丟失了另 一個(gè)驅(qū)動(dòng)器(對于只能容忍一個(gè)故障的RAID方案(如RAID 5 和RAIDl)),則將存在數(shù)據(jù)丟失。 一旦數(shù)據(jù)已經(jīng)重建到備用上,則陣列能夠 容納另一個(gè)驅(qū)動(dòng)器的故障。
然而,在具有若干存儲子系統(tǒng)的安裝中,每個(gè)存儲子系統(tǒng)具有有限數(shù)量 的盤驅(qū)動(dòng)器,不能創(chuàng)建所有存儲子系統(tǒng)能夠使用的大的備用池,因?yàn)槊總€(gè)存 儲子系統(tǒng)只能使用直接連接的盤驅(qū)動(dòng)器。這種安裝具有在這樣的環(huán)境中的應(yīng) 用,其中存儲子系統(tǒng)因?yàn)槌杀究紤]而缺乏可升級性或者缺乏處理大量盤驅(qū)動(dòng) 器的性能。
圖2中描述了這種小的存儲系統(tǒng),其只包括例如10-30個(gè)驅(qū)動(dòng)器。在這 種系統(tǒng)中,創(chuàng)建大的備用池將意味著大部分驅(qū)動(dòng)器將不會用于活動(dòng)存儲,降 低了利用并增加了成本。
因此,需要開發(fā)一種方案,其能夠帶來對其中存在若干存儲子系統(tǒng)的安 裝中的延遲維護(hù)的益處,每個(gè)存儲子系統(tǒng)具有有限數(shù)量的盤驅(qū)動(dòng)器。
無論上述引證的參考文件具有什么精確優(yōu)點(diǎn)、特征和好處,它們中沒有 一個(gè)實(shí)現(xiàn)或完成本發(fā)明的目的。
發(fā)明內(nèi)容
本發(fā)明提供了 一種用于延遲存儲系統(tǒng)的維護(hù)的基于計(jì)算機(jī)的方法,該存 儲系統(tǒng)包括多個(gè)存儲子系統(tǒng),每個(gè)子系統(tǒng)包含由一組盤形成的盤陣列,每個(gè) 盤陣列^1配置為除了一個(gè)或多個(gè)凝:據(jù)分區(qū)(partition)外還具有一個(gè)或多個(gè)備 用分區(qū),在檢測包含故障盤的故障陣列時(shí),該方法包括以下步驟(a)將包 含所述故障盤的所述故障陣列中的數(shù)據(jù)移動(dòng)到剩余陣列中的一個(gè)或多個(gè)備用分區(qū);(b)重新配置所述故障陣列以形成沒有所述故障盤的新陣列;(c)將 數(shù)據(jù)從其它陣列中的一個(gè)或多個(gè)備用分區(qū)移動(dòng)到在(b)中重新配置的沒有故 障盤的所述新陣列;(d)監(jiān)視以便在全部盤陣列中的整體備用容量低于預(yù)定 閾值時(shí)標(biāo)識;以及其中在超過所述預(yù)定閾值時(shí),所述基于計(jì)算機(jī)的方法調(diào)度 用于故障盤的替換的服務(wù)訪問。本發(fā)明還提供一種實(shí)現(xiàn)上述方法的制造產(chǎn)品。
在優(yōu)選實(shí)施例中,盤陣列的每個(gè)盤的備用分區(qū)大小相等。
在另一擴(kuò)展實(shí)施例中,在基于所述調(diào)度訪問的故障驅(qū)動(dòng)器的替換后,所 述方法還包括以下步驟(e)將每個(gè)之前的故障陣列中的數(shù)據(jù)移動(dòng)到剩余陣 列的一個(gè)或多個(gè)備用分區(qū);(f)重新配置每個(gè)之前的故障陣列以包括新替換 的盤;以及(g)將數(shù)據(jù)移動(dòng)回到在(f)中的重新配置的陣列。
在另一擴(kuò)展實(shí)施例中,該方法還包括將在(a)中移動(dòng)的數(shù)據(jù)永久地維持 在一個(gè)或多個(gè)備用分區(qū)中的步驟。
在擴(kuò)展實(shí)施例中,本發(fā)明并入可視化層,其確保移動(dòng)對訪問所述盤陣列 中的數(shù)據(jù)的主機(jī)和應(yīng)用是透明的。
每個(gè)盤陣列實(shí)現(xiàn)為RAID陣列。能夠結(jié)合本發(fā)明實(shí)現(xiàn)的RAID類型的具 體示例包括^旦不限于RAID 1 、 RAID 5或RAID 6
本發(fā)明還提供了 一種用于延遲對存儲系統(tǒng)的維護(hù)的基于計(jì)算機(jī)的方法, 其中所述基于計(jì)算機(jī)的方法包括(a)指定一組存儲子系統(tǒng)中的盤的子集用 作部分備用池;(b )在包括所述部分備用池的每個(gè)存儲子系統(tǒng)中創(chuàng)建盤陣列; (c)配置所述部分備用池除了數(shù)據(jù)分區(qū)外還具有備用分區(qū);(d)在檢測包含 故障盤的故障陣列時(shí),將故障陣列中的數(shù)據(jù)移動(dòng)到遍及所述部分備用池分布 的備用存儲;(d)重新配置所述故障陣列以旁路所述故障盤;(e)將數(shù)據(jù)從 所述備用存儲的部分移動(dòng)到在(d)中重新配置的陣列中;其中當(dāng)整體備用容 量低于閾值時(shí),調(diào)度服務(wù)訪問來替換全部故障驅(qū)動(dòng)器。
圖1圖示大型存儲系統(tǒng),其中這種大型存儲系統(tǒng)包括100 - 500個(gè)驅(qū)動(dòng)器;
圖2圖示小型存儲系統(tǒng),其中這種小型存儲系統(tǒng)包括10-30個(gè)驅(qū)動(dòng)器;
圖3示出了使用多個(gè)小型存儲系統(tǒng)的安裝;
圖4圖示按照本發(fā)明教導(dǎo)的存儲系統(tǒng)的示例;
圖5圖示具有故障驅(qū)動(dòng)器jl的存儲系統(tǒng)的示例;以及圖6圖示按照本發(fā)明教導(dǎo)的存儲系統(tǒng)中的重新配置的存儲陣列的示例。
具體實(shí)施例方式
盡管在優(yōu)選實(shí)施例中圖示和描述了本發(fā)明,但是本發(fā)明可以以許多不同 配置來產(chǎn)生。在附圖中描繪了并且將在此詳細(xì)描述本發(fā)明的優(yōu)選實(shí)施例,要 理解的是本公開要被當(dāng)作本發(fā)明的原理和用于其解釋的相關(guān)功能說明的示 例,并且意圖不在于將本發(fā)明限制于圖示的實(shí)施例。本領(lǐng)域技術(shù)人員將預(yù)見 本發(fā)明范圍內(nèi)的許多其它可能的變化。
圖3示出了使用多個(gè)小型存儲系統(tǒng)(現(xiàn)在稱為子系統(tǒng),因?yàn)榇鎯ο到y(tǒng)包 括整個(gè)子系統(tǒng)組加上可視化應(yīng)用)的安裝。在這種安裝中, 一個(gè)子系統(tǒng)上的 備用驅(qū)動(dòng)器不能被另一個(gè)子系統(tǒng)使用,因?yàn)槊總€(gè)子系統(tǒng)只能訪問其自己的驅(qū) 動(dòng)器。在這種類型的安裝中本發(fā)明將實(shí)現(xiàn)提供延遲維護(hù)的益處。備用容量貫 穿全部子系統(tǒng)分布。每個(gè)子系統(tǒng)可以只具有小的備用容量,也就是說等效于 單個(gè)驅(qū)動(dòng)器。但是通過具有許多子系統(tǒng),在邏輯意義上有效地存在許多"備 用"驅(qū)動(dòng)器?,F(xiàn)在當(dāng)任何驅(qū)動(dòng)器出故障時(shí),受影響的陣列上的數(shù)據(jù)被分布到 剩余子系統(tǒng)的備用容量上。該陣列被重新配置以移除故障的驅(qū)動(dòng)器(例如, 如果是15驅(qū)動(dòng)器上的RAID 5,則其將被重新配置為14驅(qū)動(dòng)器上的RAID 5 )。 在重新配置結(jié)束時(shí),該陣列現(xiàn)在能夠容忍另一個(gè)驅(qū)動(dòng)器故障。移出該陣列的 數(shù)據(jù)現(xiàn)在被移回到該陣列上。
圖4圖示按照本發(fā)明教導(dǎo)的存儲系統(tǒng)的非限制示例。在圖4中,遍及安 裝中的整個(gè)存儲子系統(tǒng)組(同類的)創(chuàng)建了多個(gè)盤陣列402、 404和406。在 該非限制示例中,盤陣列402包含盤a!、 b!、 Cl、山、e!、 f,、 gl、 h,、 h和j" 盤陣列404包含盤32、 b2、 c2、 d2、 e2、 f2、 g2、 h2、 ^和J2;并且盤陣列406
包含盤an、 bn、 Cn、 dn、 en、 fn、 gn、 hn、 in和jn。根據(jù)本發(fā)明的教導(dǎo),特定驅(qū)
動(dòng)器沒有被標(biāo)記為備用,但是對應(yīng)于要求的備用量的物理空間遍及全部陣列 分布。因此,每個(gè)陣列將不會完全利用用戶數(shù)據(jù)來包裝(pack)-將存在可 用的備用容量。圖1所示的每個(gè)驅(qū)動(dòng)器中的陰影面積對應(yīng)于為備用數(shù)據(jù)分配 的空間。盡管圖l描述了在盤陣列402、 404和406中的相等數(shù)量的驅(qū)動(dòng)器, 但是要注意的是,驅(qū)動(dòng)器的數(shù)量可以變化并且不必相等。
盡管圖4描述了每個(gè)驅(qū)動(dòng)器具有備用分區(qū)(陰影面積),但是要注意的是, 可以指定該驅(qū)動(dòng)器組中的子組具有存儲備用數(shù)據(jù)的備用分區(qū)。同樣,可以遍
8及驅(qū)動(dòng)器的子組刪除(strip)備用數(shù)據(jù)。
在優(yōu)選實(shí)施例中,給定陣列的每個(gè)驅(qū)動(dòng)器(或指定驅(qū)動(dòng)器的子組的每個(gè)) 中的備用分區(qū)大小相等。然而,要注意的是,如果需要的話,可以實(shí)現(xiàn)各驅(qū) 動(dòng)器之間的備用分區(qū)的大小變化。
根據(jù)本發(fā)明的教導(dǎo),當(dāng)驅(qū)動(dòng)器出故障時(shí),(具有故障的驅(qū)動(dòng)器的)陣列中 的數(shù)據(jù)被移到其它陣列中的可用的備用空間,從而清空原始陣列。例如,圖
5圖示了盤陣列402中的驅(qū)動(dòng)器j,已經(jīng)出故障的情景。盤陣列402需要被重 新配置以將故障驅(qū)動(dòng)器j從其中移出。為了實(shí)現(xiàn)該目的,對應(yīng)于盤陣列102 的數(shù)據(jù)(即,a,、 b,、 Cl、山、e,、 f,、 gl、 h,和i!中的數(shù)據(jù))被復(fù)制到剩余 盤陣列(即,盤陣列1-404到盤陣列n-406)中的一個(gè)或多個(gè)備用分區(qū)。
當(dāng)這種復(fù)制完成時(shí),現(xiàn)在重新配置盤陣列402以將故障驅(qū)動(dòng)器從其中移 出。圖6示出了重新配置的示例,其中從盤陣列402中移出了故障驅(qū)動(dòng)器jp 并且配置的新的盤陣列具有驅(qū)動(dòng)器a,、 b。 Cl、 d,、 e,、 f,、 gl、 h!和i,。
接著,移動(dòng)到其它陣列中的備用空間的數(shù)據(jù)現(xiàn)在被移動(dòng)回到原始陣列。
在一個(gè)實(shí)施例中,(對應(yīng)于一個(gè)驅(qū)動(dòng)器容量的)這些數(shù)據(jù)的一些可以永久 地留在其它陣列的一個(gè)或多個(gè)的備用空間中。
上面的可視化層確保移動(dòng)對訪問數(shù)據(jù)的主機(jī)和應(yīng)用是透明的。這種可視 化層可以以帶中(in-band)應(yīng)用、作為帶外(out-of-band)應(yīng)用、作為存儲 系統(tǒng)的部分、或以存儲(或SAN)開關(guān)實(shí)現(xiàn)。本發(fā)明可以結(jié)合在名為"IBM System Storage SAN Volume Controller"的書中扭克括的存儲可視化技術(shù)來實(shí)現(xiàn)。
當(dāng)整個(gè)備用容量低于閾值時(shí),調(diào)度服務(wù)訪問以替換安裝中的所有故障驅(qū) 動(dòng)器。替換操作后,可以一次執(zhí)行類似的移動(dòng)以便
利用替換的驅(qū)動(dòng)器清空子系統(tǒng)中的陣列的所有數(shù)據(jù),
*重新配置這些陣列以包括替換驅(qū)動(dòng)器,以及
將數(shù)據(jù)移動(dòng)到這些陣列。
備用容量因?yàn)槔鄯e的故障盤而降低(即,遍及所有陣列的組合的備用容 量逐步用于保持已經(jīng)出故障的驅(qū)動(dòng)器中之前包含的數(shù)據(jù))。
在一個(gè)實(shí)施例中,依賴于存儲設(shè)備的存儲需要,驅(qū)動(dòng)器中(或指定驅(qū)動(dòng) 器的子組中)的備用分區(qū)可以動(dòng)態(tài)變化。
如可以從上面的要素中看到的,該方案可以給現(xiàn)有RAID存儲系統(tǒng)(具 體來說,RAID 1、 RAID 5或RAID 6系統(tǒng))提供延遲維護(hù)的益處。要注意的是,本發(fā)明在存儲子系統(tǒng)外部,并且可以使用而不用對現(xiàn)有存 儲子系統(tǒng)進(jìn)行任何改變。
根據(jù)一個(gè)實(shí)施例,本發(fā)明提供了 一種用于延遲存儲系統(tǒng)的維護(hù)的基于計(jì) 算機(jī)的方法,該存儲系統(tǒng)包括多個(gè)由一組盤形成的盤陣列,每個(gè)陣列被配置 為除了數(shù)據(jù)分區(qū)外還具有備用分區(qū),在檢測包含故障盤的故障陣列時(shí),該方
法包括以下步驟(a)將包含所述故障盤的所述故障陣列中的數(shù)據(jù)移動(dòng)到剩 余陣列中的一個(gè)或多個(gè)備用分區(qū);(b)重新配置所述故障陣列以形成沒有所 述故障盤的新陣列;(c)將數(shù)據(jù)從其它陣列中的一個(gè)或多個(gè)備用分區(qū)移動(dòng)到 在(b)中重新配置的沒有故障盤的所述新陣列;(d)監(jiān)視以便在全部盤陣列 中的整體備用容量低于預(yù)定閾值時(shí)標(biāo)識;以及其中在超過所述預(yù)定閾值時(shí), 所述基于計(jì)算機(jī)的方法調(diào)度用于故障盤的替換的服務(wù)訪問。 本發(fā)明還提供一種實(shí)現(xiàn)上述方法的制造產(chǎn)品。
在另一擴(kuò)展實(shí)施例中,在基于所述調(diào)度訪問的故障驅(qū)動(dòng)器的替換后,所 述方法還包括以下步驟(e)將每個(gè)之前的故障陣列中的數(shù)據(jù)移動(dòng)到剩余陣 列的一個(gè)或多個(gè)備用分區(qū);(f)重新配置每個(gè)之前的故障陣列以包括新替換 的盤;以及(g)將數(shù)據(jù)移動(dòng)回到在(f)中的重新配置的陣列。
在另一擴(kuò)展實(shí)施例中,該方法還包括將在(a)中移動(dòng)的數(shù)據(jù)永久地維持 在一個(gè)或多個(gè)備用分區(qū)中的步驟。
在擴(kuò)展實(shí)施例中,本發(fā)明并入可視化層,其確保移動(dòng)對訪問所述盤陣列 中的數(shù)據(jù)的主;f幾和應(yīng)用是透明的。
在優(yōu)選實(shí)施例中,盤陣列的每個(gè)盤的備用分區(qū)大小相等。
每個(gè)盤陣列實(shí)現(xiàn)為RAID陣列。能夠結(jié)合本發(fā)明實(shí)現(xiàn)的RAID類型的具 體示例包括但不限于RAID 1 、 RAID 5或RAID 6
本發(fā)明還提供了 一種用于延遲對存儲系統(tǒng)的維護(hù)的基于計(jì)算機(jī)的方法, 其中所述基于計(jì)算機(jī)的方法包括(a)指定一組存儲子系統(tǒng)中的盤的子集用 作部分備用池;(b )在包括所述部分備用池的每個(gè)存儲子系統(tǒng)中創(chuàng)建盤陣列; (c)配置所述部分備用池除了數(shù)據(jù)分區(qū)外還具有備用分區(qū);(d)在檢測包含 故障盤的故障陣列時(shí),將故障陣列中的數(shù)據(jù)移動(dòng)到遍及所述部分備用池分布 的備用存儲;(d)重新配置所述故障陣列以旁路所述故障盤;(e)將數(shù)據(jù)從 所述備用存儲的部分移動(dòng)到在(d)中重新配置的陣列中;其中當(dāng)整體備用容 量低于閾值時(shí),調(diào)度服務(wù)訪問來替換全部故障驅(qū)動(dòng)器。
10此外,本發(fā)明提供一種制造產(chǎn)品,其中包括計(jì)算機(jī)可讀程序代碼,用于 實(shí)現(xiàn)一個(gè)或多個(gè)模塊,實(shí)現(xiàn)用于對存儲子系統(tǒng)提供延遲維護(hù)的方法。此外, 本發(fā)明包括一種基于計(jì)算機(jī)程序代碼的產(chǎn)品,該產(chǎn)品是在其中存儲有程序代 碼的存儲介質(zhì),該程序代碼可用于指令計(jì)算機(jī)執(zhí)行與本發(fā)明相關(guān)聯(lián)的任何方
法。該計(jì)算機(jī)存儲介質(zhì)包括但不限于以下的任何CD-ROM、 DVD、磁帶、 光盤、硬驅(qū)動(dòng)器、軟盤、鐵電存儲器、閃存、鐵磁存儲器、光存儲、電荷耦 合設(shè)備、磁或光卡、智能卡、EEPROM、 EPROM、 RAM、 ROM、 DRAM、 SRAM、 SDRAM或任何其它適當(dāng)?shù)撵o態(tài)或動(dòng)態(tài)存儲器或數(shù)據(jù)存儲設(shè)備。
本發(fā)明還提供一種制造產(chǎn)品,其包括在其中包括計(jì)算機(jī)可讀程序代碼的 計(jì)算機(jī)用戶介質(zhì),該計(jì)算機(jī)可讀程序代碼實(shí)現(xiàn)用于存儲系統(tǒng)的延遲維護(hù)的方 法,該存儲系統(tǒng)包括由一組盤形成的盤陣列,所述盤組中的盤的子集被配置 為除了數(shù)據(jù)分區(qū)外,還具有大小相同的備用分區(qū),其中在檢測包含故障盤的 故障陣列時(shí)(a)計(jì)算機(jī)可讀程序代碼幫助將包含所述故障盤的所述故障陣 列中的數(shù)據(jù)移動(dòng)到所述盤的子集中的一個(gè)或多個(gè)備用分區(qū);(b)計(jì)算機(jī)可讀 程序代碼幫助重新配置所述故障陣列以形成沒有所述故障盤的新陣列;(c) 計(jì)算機(jī)可讀程序代碼幫助將數(shù)據(jù)從所述盤的子集中的一個(gè)或多個(gè)備用分區(qū)移 動(dòng)到所述在(b)中的重新配置的沒有故障盤的新陣列;(d)計(jì)算機(jī)可讀程序 代碼幫助監(jiān)視以便在所述備用部分中的整體備用容量低于預(yù)定閾值時(shí)標(biāo)識; 以及在超過所述預(yù)定閾值時(shí),(e)計(jì)算機(jī)可讀程序代碼幫助調(diào)度用于故障盤 的替換的服務(wù)訪問。
結(jié)論
在上面的實(shí)施例中已經(jīng)示出了用于有效實(shí)現(xiàn)用于對存儲子系統(tǒng)提供延遲 維護(hù)的方法的系統(tǒng)和方法。經(jīng)過已經(jīng)示出和描述了各種優(yōu)選實(shí)施例,但是將 理解的是,意圖不在于通過這種公開限制本發(fā)明,而是意圖在于覆蓋落入如 權(quán)利要求中定義的本發(fā)明的精神和范圍內(nèi)的所有修改。例如,本發(fā)明不應(yīng)當(dāng) 受分配給備用部分的空間的百分比、陣列中的驅(qū)動(dòng)器數(shù)目、軟件/程序、計(jì)算 環(huán)境、或特定計(jì)算硬件的限制。
上面的增加在各種計(jì)算環(huán)境中實(shí)現(xiàn)。例如,本發(fā)明可以在^^務(wù)器或其等
*々 夂乂上《々i: f /6:'l-A" c a 、t A: r a 、t 、 A: W《々i Z rH /Ur RTl 、imrri7
7入、 ;x r ,g、 ',; 、 ,p Lm丄、;八la丄、乂 -Aj""i八'"v a、 p乂匕 、,p ,h r" 、vv vv vv 、
無線web)上實(shí)現(xiàn)。涉及的所有程序和數(shù)據(jù)存儲在計(jì)算機(jī)存儲器中,靜態(tài)或 動(dòng)態(tài)的,并且可以由用戶以以下的任何取回傳統(tǒng)計(jì)算機(jī)存儲、顯示器(例如,CRT)和/或硬拷貝(例如,打印)形式。本發(fā)明的程序可以由存儲系統(tǒng) 領(lǐng)域的普通技術(shù)人員實(shí)現(xiàn)。
權(quán)利要求
1. 一種用于延遲存儲系統(tǒng)的維護(hù)的基于計(jì)算機(jī)的方法,該存儲系統(tǒng)包括多個(gè)存儲子系統(tǒng),每個(gè)存儲子系統(tǒng)包含由一組盤形成的盤陣列,每個(gè)盤被配置為除了一個(gè)或多個(gè)數(shù)據(jù)分區(qū)外還具有一個(gè)或多個(gè)備用分區(qū),在檢測包含故障盤的故障陣列時(shí),所述基于計(jì)算機(jī)的方法包括以下步驟a. 將包含所述故障盤的所述故障陣列中的數(shù)據(jù)移動(dòng)到剩余陣列中的一個(gè)或多個(gè)備用分區(qū);b. 重新配置所述故障陣列以形成沒有所述故障盤的新陣列;c. 將數(shù)據(jù)從剩余陣列中的所述一個(gè)或多個(gè)備用分區(qū)移動(dòng)到在(b)中所述重新配置的沒有故障盤的所述新陣列;d. 監(jiān)視以便在所述備用分區(qū)中的整體備用容量低于預(yù)定閾值時(shí)標(biāo)識;以及其中在超過所述預(yù)定閾值時(shí),所述基于計(jì)算機(jī)的方法調(diào)度用于故障盤的替換的服務(wù)訪問。
2. 如權(quán)利要求1所述的基于計(jì)算機(jī)的方法,其中所述備用分區(qū)大小相等。
3. 如權(quán)利要求1所述的基于計(jì)算機(jī)的方法,其中每個(gè)盤陣列中所述數(shù)據(jù) 分區(qū)和所述備用分區(qū)之間的比率由所述存儲系統(tǒng)根據(jù)存儲需要來動(dòng)態(tài)改變。
4. 如權(quán)利要求1所述的基于計(jì)算機(jī)的方法,其中可視化層確保移動(dòng)對訪 問所述盤陣列中的數(shù)據(jù)的主機(jī)和應(yīng)用是透明的。
5. 如權(quán)利要求1所述的基于計(jì)算機(jī)的方法,其中在基于所述調(diào)度訪問的 故障驅(qū)動(dòng)器的替換后,所述方法還包括以下步驟e. 將與每個(gè)之前的故障陣列相關(guān)聯(lián)的盤中的數(shù)據(jù)移動(dòng)到一個(gè)或多個(gè)備 用分區(qū);f. 重新配置所述每個(gè)之前的故障陣列以包括新替換的盤;以及g. 將數(shù)據(jù)移動(dòng)回到(f)中的所述重新配置的陣列。
6. 如權(quán)利要求1所述的基于計(jì)算機(jī)的方法,其中每個(gè)所述盤陣列是RAID陣列。
7. 如權(quán)利要求6所述的基于計(jì)算機(jī)的方法,其中所述RAID陣列是以下 的任何RAID 1 、 RAID 5或RAID 6。
8. 如權(quán)利要求1所述的基于計(jì)算機(jī)的方法,其中所述基于計(jì)算機(jī)的方法還包括將(a)中的所述移動(dòng)的數(shù)據(jù)永久地維持在所述一個(gè)或多個(gè)備用分區(qū)中。
9. 一種用于延遲對存儲系統(tǒng)的維護(hù)的基于計(jì)算機(jī)的方法,所述基于計(jì)算 才幾的方法包4舌a. 從一組盤中創(chuàng)建多個(gè)盤陣列;b. 指定所述盤的子組中的一組盤用作備用池,其中所述盤的子組中的每 個(gè)盤的相等部分專用于備用存儲;c. 在檢測包含故障盤的故障陣列時(shí),將所述故障陣列中的數(shù)據(jù)移動(dòng)到遍 及所述盤的子組分布的所述備用存儲;d. 重新配置所述故障陣列以旁路所述故障盤;e. 將數(shù)據(jù)從所述備用存儲移動(dòng)到(d)中的所述重新配置的陣列;其中當(dāng)整體備用容量低于閾值時(shí),調(diào)度服務(wù)訪問來替換全部故障驅(qū)動(dòng)器。
10. 如權(quán)利要求9所述的基于計(jì)算機(jī)的方法,其中可視化層確保(c)和 (e )中的所述移動(dòng)對訪問所述盤陣列中的數(shù)據(jù)的主^L和應(yīng)用是透明的。
11. 如權(quán)利要求9所述的基于計(jì)算機(jī)的方法,其中在基于所述調(diào)度訪問 的故障驅(qū)動(dòng)器的替換后,所述方法還包括以下步驟f. 將之前的故障陣列中的數(shù)據(jù)移動(dòng)到所述備用存儲;g. 重新配置所述每個(gè)之前的故障陣列以包括新替換的盤;以及h. 將數(shù)據(jù)移動(dòng)回到(g)中的所述重新配置的陣列。
12. 如權(quán)利要求9所述的基于計(jì)算機(jī)的方法,其中所述盤陣列的每個(gè)是 RAID陣列。
13. 如權(quán)利要求12所述的基于計(jì)算機(jī)的方法,其中所述RAID陣列是以 下的任何RAID 1 、 RAID 5或RAID 6。
14. 如權(quán)利要求9所述的基于計(jì)算機(jī)的方法,其中所述基于計(jì)算機(jī)的方 法還包括將(c)中的所述移動(dòng)的數(shù)據(jù)永久地維持在所述一個(gè)或多個(gè)備用分區(qū) 中。
15. —種用于延遲存儲系統(tǒng)的維護(hù)的計(jì)算機(jī)系統(tǒng),該存儲系統(tǒng)包括多個(gè) 存儲子系統(tǒng),每個(gè)存儲子系統(tǒng)包含由一組盤形成的盤陣列,每個(gè)盤被配置為 除了 一個(gè)或多個(gè)數(shù)據(jù)分區(qū)外還具有一個(gè)或多個(gè)備用分區(qū),其中在檢測包含故 障盤的故障陣列時(shí),所述系統(tǒng)包括a.幫助將包含所述故障盤的所述故障陣列中的數(shù)據(jù)移動(dòng)到剩余陣列中 的一個(gè)或多個(gè)備用分區(qū)的部件;b. 幫助重新配置所述故障陣列以形成沒有所述故障盤的新陣列的部件;c. 幫助將數(shù)據(jù)從剩余陣列中的一個(gè)或多個(gè)備用分區(qū)移動(dòng)到在(b)中所 述重新配置的沒有所述故障盤的新陣列的部件;d. 幫助監(jiān)視以便在所述備用分區(qū)中的整體備用容量低于預(yù)定閾值時(shí)標(biāo) 識的部件;以及e. 在超過所述預(yù)定閾值時(shí),幫助調(diào)度用于故障盤的替換的服務(wù)訪問的部件。
16. 如權(quán)利要求15所述的系統(tǒng),其中所述系統(tǒng)還包括可視化層,其確保 移動(dòng)對訪問所述盤陣列中的數(shù)據(jù)的主機(jī)和應(yīng)用是透明的。
17. 如權(quán)利要求15所述的系統(tǒng),其中每個(gè)所述盤陣列是RAID陣列。
18. 如權(quán)利要求17所述的系統(tǒng),其中所述RAID陣列是以下的任何 RAID 1 、 RAID 5或RAID 6。
19. 如權(quán)利要求15所述的系統(tǒng),其中所述系統(tǒng)還包括幫助將(a)中的 所述移動(dòng)的數(shù)據(jù)永久地維持在所述一個(gè)或多個(gè)備用分區(qū)中的計(jì)算機(jī)可讀程序 代碼。
20. 如權(quán)利要求15所述的系統(tǒng),其中每個(gè)盤陣列中所述數(shù)據(jù)分區(qū)和所述 備用分區(qū)之間的比率由所述存儲系統(tǒng)根據(jù)存儲需要來動(dòng)態(tài)改變。
21. 如權(quán)利要求15所述的系統(tǒng),其中所述備用分區(qū)大小相等。
22. 如權(quán)利要求15所述的系統(tǒng),其中只有所述盤組中的盤的子組被配置 來具有所述一個(gè)或多個(gè)備用分區(qū)。
全文摘要
多個(gè)盤陣列中的一組盤被配置為具有一個(gè)或多個(gè)備用分區(qū)。在檢測故障陣列中的故障盤時(shí),該方法包括以下步驟(a)將包含所述故障盤的所述故障陣列中的數(shù)據(jù)移動(dòng)到一個(gè)或多個(gè)備用分區(qū);(b)重新配置所述故障陣列以形成沒有所述故障盤的新陣列;(c)將數(shù)據(jù)從盤組中的一個(gè)或多個(gè)備用分區(qū)移動(dòng)到所述重新配置的新陣列;(d)監(jiān)視以便在整體備用容量低于預(yù)定閾值時(shí)標(biāo)識;以及在超過所述預(yù)定閾值時(shí),調(diào)度用于故障盤的替換的服務(wù)訪問。
文檔編號G06F11/07GK101470640SQ20081017682
公開日2009年7月1日 申請日期2008年11月25日 優(yōu)先權(quán)日2007年12月27日
發(fā)明者丹尼爾·E·波夫, 克里施納庫瑪·R·薩拉古奇, 布倫特·阿巴里, 莫哈梅德·巴尼卡澤米, 詹姆斯·L·哈夫納 申請人:國際商業(yè)機(jī)器公司