專利名稱:高度可用的文件服務器的制作方法
技術領域:
本發明涉及本發明涉及存儲器系統。
2.相關技術計算機存儲器系統被用于記錄和檢索數據。在某些計算機系統中,存儲器系統與一組用戶設備通信,并給那些用戶提供設備記錄和檢索數據服務。因為數據存儲對于很多應用很重要,因此期望于存儲器系統提供的服務和數據最大限度用于服務。因此,期望于提供一種存儲器系統,即使在面臨存儲器系統中部件故障時,它仍可用于服務。
用于提供能保持服務的存儲器系統的一種熟知技術是提供多個冗余的存儲器單元,這些存儲器單元具有這樣的性質當第一個存儲器單元出故障時,第二個存儲器單元可用于提供應該由第一個存儲器單元提供的服務和數據。從第一個存儲單元轉換至第二個存儲單元的轉換過程被稱為“故障恢復”。第二個存儲單元保存了被第一個單元保存的數據的復本,因此故障恢復可以在幾乎沒有中斷的情況下繼續進行。
用于實現故障恢復的第一種已知技術是使第二個存儲器單元復制所有的第一個單元的操作。這樣,被第一個存儲單元完成的每個操作也能被第二個單元完成。這種已知技術具有以下缺陷(1)在第二存儲器單元復制第一單元結果時要使用大量處理能力,而其中大部分被浪費了。(2)使得第一存儲器單元在確認操作完成時變緩慢,因為第一存儲器單元要等待第二存儲器單元完成同樣的操作。
第二種用于實現故障恢復的已知技術是識別檢驗點序列,在檢驗點上第一存儲器單元處于一致且已知的狀態。在故障恢復時,第二存儲器單元能從最近的檢驗點起繼續操作。例如,NFS(網絡文件系統)協議要求所有的寫操作在被確認前被存儲到磁盤上,以便于寫操作的確認能表明穩定的文件系統配置。此第二種已知技術具有下列缺點(1)將使在執行寫操作時的第一存儲器單元變得緩慢,因為第一存儲器單元等待寫操作被完全地存儲到磁盤上。(2)使得故障恢復中恢復變得緩慢,因為第二個存儲器單元要確定第一單元故障留下的被識別檢驗點之間的任何不一致處的地址。
因此,要提供一種存儲器系統和用于操作存儲器系統方法,能有效地利用所有的存儲器系統單元,快速地完成和確認操作,并快速地從任何存儲器單元故障中恢復過來。這些優點本發明的實施方案中得到了實現,其中存儲器系統實現頻繁而迅速的檢驗點,并且存儲器系統能快速地給存儲器單元中各檢驗點間的那些操作分配復制命令。
發明概述本發明提供了一種存儲器系統,即使在面臨存儲器系統內的部件故障時也是高度可用的,同時也提供了一種用于操作該存儲器系統的方法。第一和第二文件服務器各包含一個文件服務器請求記錄用于存儲輸入的文件服務器請求。第一和第二文件服務器都能訪問一組共同的海量存儲器單元。每一個輸入的文件服務器請求被復制到第一和第二文件服務器上,第一文件服務器處理文件服務器請求,而第二文件服務器在其文件服務器請求記錄中保存復本。每個文件服務器使用文件系統操作,該文件系統在各文件服務器請求之后仍保持一致的狀態。當故障恢復時,自最近的一致狀態起,第二文件服務器能執行其文件服務器請求記錄中的那些文件服務器請求。
本發明的另一個方面中,文件服務器系統提供了對一個或多個海量存儲器單元的鏡像。每個輸入的文件服務器請求被復制到第一和第二文件服務器上。第一文件服務器執行文件服務器請求以修改海量存儲器單元的基本組,同時也執行同樣的文件服務器請求以修改海量存儲器單元的鏡像組。鏡像海量存儲器單元與基本存儲器單元在物理上分離,例如在其它站點上,以便在整個海量存儲器單元的基本組被恢復時提供鏡像資源。
附圖簡述
圖1表示出了高度可用的文件服務器系統的方框圖。
圖2表示出了文件服務器系統中的文件服務器的方框圖。
圖3表示出了文件服務器系統操作的過程流程圖。
優選實施方案的詳細說明在下面的說明中,本發明的優選實施方案通過優選處理步驟及數據結構而被說明。然而,在研讀了本篇申請后,本領域中的技術人員應該認識到本發明的實施方案可以通過使用一個或多個編程控制操作下的通用處理器(或適用于特定處理步驟及數據結構的專用處理器)而被實現,利用這種裝置實現這里被說明的優選處理步驟及數據結構無需過度的實驗或進一步的發明。
文件服務器對和故障恢復操作圖1表示出了高度可用的文件服務器系統的方框圖。
文件服務器系統100包括一對文件服務器110,都被連接到同一組海量存儲器設備120上。第一個文件服務器110被連接到第一個I/O總線130用于控制海量存儲器設備120的第一個被選定的子組。同樣地,第二個文件服務器110被連接到第二個I/O總線130上用于控制海量存儲器設備120的第二個被選定的子組。
盡管這兩個服務器110都被連接到所有的共同海量存儲器設備120上,僅僅一個文件服務器110在任意指定的時間上操作控制任何一個海量存儲器設備120。這樣,盡管各個海量存儲器設備120在某個時間只能由一個文件服務器110控制,即便其上兩個關聯的文件服務器之一出現故障各個海量存儲器設備120仍保持可用。
在優選實施方案中,文件服務器系統100包括一對這樣的文件服務器110,然而,在可替換的實施方案中,多于兩個這種文件服務器110可以被包括在單一的文件服務器系統100中。
在優選實施方案中,第一I/O總線130和第二I/O總線130各包括一個中層(mezzanine)總線,例如PCI總線結構。
在優選實施方案中,海量存儲器設備120包括磁盤驅動器,光盤驅動器,或磁光盤驅動器。然而,在可替換的實施方案中也可以使用其它的存儲器系統,例如磁泡存儲器,閃存,或使用其它存儲技術的系統。海量存儲器設備120的部件被稱為“磁盤”,盡管那些部件可能包含其它的形式或形狀。
各海量存儲器設備120可包括單一磁盤或多個磁盤。在優選實施方案中,各存儲器設備120包括多個磁盤,并作為RAID存儲器系統被處理和操作。
在優選實施方案中,第一文件服務器110使用共同互連被連接到第二文件服務器110上。共同互連給各個文件服務器110提供了遠程存儲器訪問能力,以便數據能從遠距離位置被存儲到各個文件服務器110上。在優選實施方案中,此共同互連包括一個Tandem”ServerNet"互連。通過連接到I/O總線上的各個文件服務器110的設備控制器,該互連被連接到各文件服務器110上。
第一文件服務器110被連接到第一網絡接口140上,該接口被安排接收來自網絡150的文件服務器請求151。同樣地,第二文件服務器110被連接到第二網絡接口140上,此接口也被安排接收來自于網絡150的文件服務器請求151。
第一個文件服務器110包括第一服務器請求存儲器160,此存儲器接收文件服務器請求151并記錄它們。在第一文件服務器110從電源故障或其它服務中斷中恢復的情況下,在第一服務器請求存儲器160中未完成的文件服務器請求151被重新執行,以便將它們并入到由第一文件服務器110保持的文件系統的下一個一致狀態中。
同樣地,第二文件服務器110包括第二服務器請求存儲器160,該存儲器接收文件服務器請求151并記錄它們。如果第二文件服務器110從電源故障或其它服務中斷中恢復過來,第二服務器請求存儲器160中的未完成的文件服務器請求151被重新執行,以便將它們并入到由第二文件服務器110保持的文件系統的下一個一致狀態中。
當第一文件服務器110從網絡150接收文件服務器請求151時,文件服務器請求151被復制到第一服務器請求存儲器160中。使用共同互連的遠程存儲器訪問,文件服務器請求151也被復制到第二服務器請求存儲器160中。同樣地,當第二文件服務器110從網絡150接收文件服務器請求151時,文件服務器請求151被復制到第二服務器請求存儲器160中。使用共同互連的遠程存儲器訪問,文件服務器請求151也被復制到第一服務器請求存儲器160中。使用遠程存儲器訪問與使用網絡協議相比相對較快,并且具有較少的通信額外開銷。
如果任何一個文件服務器110出現故障,另一個文件服務器110可以利用存儲于其自身服務器請求存儲器160中的文件服務器請求151繼續處理。
在優選實施方案中,各個服務器請求存儲器160包括一個非易失性存儲器,因此那些被存儲于任意一個服務器請求存儲器160中的文件服務器請求不會由于電源故障或其它服務中斷而丟失。
響應的文件服務器110處理文件服務器請求151并可能修改在一個海量存儲器設備120中被存儲的文件。另一個不響應的文件服務器,即響應的的文件服務器110的同伴,保存存儲在其服務器請求存儲器160上的文件服務器,以防備響應的文件服務器110出現故障的可能。如果響應的文件服務器110出現故障,不響應的文件服務器110作為故障恢復技術的一部分將處理文件服務器請求151。
在優選實施方案中,各文件服務器110利用下面專利申請中說明的發明控制其關聯的海量存儲器設備120,以便形成例如RAID存儲器系統的冗余陣列。
○申請序列號08/471,218,在1995年6月5日提交,發明者David Hitz等人,名稱為“通過利用非易失性存儲器在Raid子系統中提供奇偶校驗的方法”。律師記錄表號碼NET-004;○申請序列號08/454,921,1995年5月31日提交,發明者David Hitz等人,名稱為“隨處寫文件系統設計”(WriteAnywhere File-System Layout),律師記錄表號碼NET-005;○申請序列號08/465591,1995年5月31日提交,發明者David Hitz等人,名稱為“在與RAID磁盤子系統相結合的文件系統中分配文件的方法”,律師記錄表號碼NET-006。
這些申請中在此作為參考,好像在此得到了充分地闡述。它們全部被稱為“WAFL公開”。
作為WAFL公開中被說明的技術的一部分,各文件服務器110響應原子形式的文件服務器請求151控制其關聯的海量存儲器設備120。任何文件服務器請求151的最后操作是向文件系統121中并入最近的一致狀態。這樣,在各文件服務器請求實現后,文件系統121處于內部一致的狀態。這樣,在海量存儲器120定義的文件系統121將被發現處于內部一致的狀態,而不管哪個文件服務器110控制那些海量存儲器設備120。內部一致狀態的例外僅僅包括幾個最近的文件服務器請求151,它們將被存儲到兩個文件服務器110的服務器請求存儲器160中。通過根據最近的一致狀態執行它們,那些最近文件服務器請求151能被并入到一致狀態中。
對于任意文件服務期請求151,如果通常回應文件服務器請求151的文件服務器110發生故障,另一文件服務器110將認識到這一故障,并執行故障恢復方法以控制先前被指定到發生故障的文件服務器110上的海量存儲器設備120。故障恢復文件服務器110將尋找處于內部一致狀態的文件系統121,但不包括最近的仍未被執行的文件服務器請求的那些海量存儲器設備120。故障恢復文件服務器110將在其服務器請求存儲器160中擁有最近的文件服務器請求151的復本,并響應那些復本執行這些文件服務器請求151。
文件服務器節點圖2表示了文件服務器系統中文件服務器的方框圖。
各個文件服務器110包括至少一個處理器111,一個程序和數據存儲器112,服務器請求存儲器160(包括非易失性隨機存儲器),網絡接口單元114,和一個磁盤接口單元115。這些通過使用總線117或其它用于在處理器、存儲器和外圍設備之間通信的已知系統結構互連起來。
在優選實施方案中,網絡接口單元114包括一個已知網絡接口用于與網絡150一起工作。例如,網絡接口單元114包括一個接口,用于與FDDI接口標準和100BaseT接口標準一起工作。
在故障恢復之后,文件服務器110響應文件服務器請求,這些請求被指向其自身或其(發生故障的)同伴文件服務器110。因此,在故障恢復時,各文件服務器110都能夠承擔額外的網絡標識,一個用于其自身,一個用于其發生故障的同伴文件服務器110。在優選實施方案中,各文件服務器110的網絡接口單元114包括一個網絡適配器,根據文件服務器110的指令能夠回應兩個獨立的地址。在可替換的實施方案中,各文件服務器110可能含有兩個這樣的網絡適配器。
在優選實施方案中,磁盤接口單元115包括已知磁盤接口用于與磁盤、光盤或磁光盤一起工作,該接口含有兩個獨立的端口,每個端口被連接到一個獨立的文件服務器110上,例如FC-AL接口。這樣有助于防止文件服務器110的故障影響其它文件服務器110的低級操作。
在優選實施方案中,總線117包括至少一個存儲器總線171和中層總線130。存儲器總線171連接處理器111和程序及數據存儲器112。中層總線130連接網絡接口單元114和磁盤接口單元115。通過使用I/O控制器173或其它已知的總線適配器技術,存儲器總線171被連接到中層總線130上。
在優選實施方案中,海量存儲器120中的各磁盤被靜態地指定到第一文件服務器110或第二文件服務器110上,響應是否磁盤被第一文件服務器110或第二文件服務器110連接實現主要的控制。各磁盤含有兩個控制口A和B,連接到端口A的文件服務器110對磁盤進行主要控制,而另一個文件服務器110僅在文件服務器110發生故障時控制磁盤。
操作過程流程3表示出了文件服務器系統操作的過程流程圖。
文件服務器100的部件執行方法300,并包括這里描述的一組流程點和處理步驟。
在流程點300,被連接到網絡150上的設備,期望生成文件系統請求151。
在步驟311,設備將文件系統請求151傳遞給網絡150。
在步驟312,網絡150將文件服務器請求151傳遞給文件服務器110。
在步驟313,文件服務器系統100中的第一文件服務器110接收文件服務器請求151。第一文件服務器110將文件服務器請求151復制到第一服務器請求存儲器160中,并使用共同互連將文件服務器請求151復制到第二服務器請求存儲器160中。在第二服務器請求存儲器160中的復制操作的目標是為這此保留的一塊區域。復制操作不要求第二文件服務器110進一步處理,而且第二文件服務器110通常也不處理或響應文件服務器請求151。
在步驟314,第一文件服務器110響應文件服務器請求151。
在流程點320,文件服務器請求得到成功地處理。
在本發明的另一方面中,第一文件服務器110提供一個或多個海量存儲器設備120的鏡像。
同發明的第一方面一樣,各輸入的文件服務器請求被復制到第一文件服務器110和第二文件服務器110中。第一文件服務器110執行文件服務器請求以在其控制下修改一個或多個主要的海量存儲器設備120。第一文件服務器110也執行文件服務器請求以在其控制下修改一組鏡像海量存儲器設備器120,但鏡像海量存儲器距離主要海量存儲器設備120。這樣,鏡像海量存儲器設備120實質上是主要海量存儲器設備120的拷貝。
如果整個這組主要的海量存儲器設備120要被恢復,例如當故障降臨到這組主要的海量存儲器設備120中時,這組鏡像海量存儲器120會提供資源。
在流程點330,文件服務器系統100中第一文件服務器110出現故障。
在步驟331中,文件服務器系統100中第二文件服務器110認識到第一文件服務器110中的故障。
在優選實施方案中,第二文件服務器110以下列方式執行步驟331○各文件服務器110的海量存儲器設備120包含兩個磁盤(因此,兩個文件服務器總共有四個這種磁盤),用于記錄文件服務器110的狀態信息。有兩個這種磁盤(被稱為“郵箱磁盤”)以便一個可以用作主要存儲器,另一個可以用作備份存儲器。如果兩個郵箱磁盤之一發生故障,使用該郵箱磁盤指定另一個磁盤的文件服務器110作為其兩個郵箱磁盤之一。
○各文件服務器110在各郵箱磁盤中至少要保留一個扇區,在此扇區上文件服務器110周期性地寫下狀態信息。通過使用遠程存儲器訪問,使用互連,各文件服務器110也將其狀態信息發送給另一個文件服務器110。各文件服務器110寫在郵箱磁盤上的狀態信息隨著每次更新而改變。
○各文件服務器110周期性地從至少一個郵箱磁盤中讀取另一個文件服務器110的狀態信息。通過使用遠程存儲器訪問,使用互連,各文件服務器110也接收來自另一個文件服務器110的狀態信息。
○通過注意到郵箱磁盤上給另一個文件服務器110的狀態信息未得到更新,各文件服務器110可以了解是否另一個文件服務器發生故障。
在優選實施方案中,第二文件服務器110決定是否第一文件服務器110的故障是硬件錯誤還是軟件錯誤,并僅僅識別第一文件服務器110上的硬件錯誤。在可替換的實施方案中,第二文件服務器110也可能識別第一文件服務器110上的軟件錯誤。
在步驟332,第二文件服務器110控制被先前指定到第一文件服務器110上的所有海量存儲器設備120。鑒于WAFL公開中說明的技術性質,在海量存儲器設備120定義的文件系統121將處于內部一致的狀態。所有被標記為完成的文件服務器請求151將被處理,結果被并入到海量存儲器設備120的存儲塊中。
在正常操作中,各文件服務器110在任何海量存儲器設備120中都不設置保留。在步驟332中(僅在故障恢復時),第二文件服務器110掌握對先前被第一文件服務器控制的海量存儲器設備120的控制,同時保持對那些海量存儲器設備120的控制直到確信第一文件服務器已恢復。
當第一文件服務器110恢復后,它發送恢復信息給第二文件服務器。在優選實施方案中,第二文件服務器110通過操作員的命令撤消對海量存儲器設備120的控制。然而,在可替換的實施方案中,第二文件服務器110可以從第一文件服務器110上了解恢復信息,對此響應撤消對被支配的海量存儲器120的控制。
在步驟333,第二文件服務器110注釋在其服務器請求存儲器160中被第一文件服務器110復制的所有的文件服務器請求151。那些其結果已經被并入到存儲器設備120的存儲塊中的文件服務器請求151被刪除。
在步驟334中,當第二文件服務器110得到各文件服務器請求151的復本后,第二文件服務器110正常處理文件服務器請求151。
在流程點340,從第一文件服務器110到第二文件服務器110的故障恢復被成功地處理。
可替換實施方案盡管這里公開了優選實施方案,屬于本發明的概念、范圍和實質內的許多改變是可能的,在研讀了本申請后這些改變對本領域中的技術人員是很明顯的。
權利要求
1.一種文件服務器系統包括第一文件服務器,包括一個文件服務器改變存儲器;第二文件服務器,包括一個文件服務器改變存儲器;海量存儲器單元;該第一和第二文件服務器被連接到該海量存儲器單元上;將文件系統改變的描述符復制到該第一和第二文件服務器上的裝置,由此第一文件服務器處理文件系統的改變,而第二文件服務器在其文件服務器改變存儲器中保存該描述符的復本;響應第一文件服務器中的服務中斷第二文件服務器執行其文件服務器改變存儲器中的文件系統的改變的裝置。
2.權利要求1的系統,對于各文件服務器包括至少一個海量存儲器。
3.權利要求1的系統,其中第一文件服務器被安排自動地處理文件系統改變,由此第二文件服務器在故障恢復時能處理那些沒有被第一文件服務器處理的文件系統的改變。
4.權利要求1的系統,其中第一文件服務器被安排用于為其自身和第二文件服務器同等地響應服務中斷。
5.權利要求1的系統,其中至少一個文件服務器被安排用于延遲到海量存儲器單元的輸出,而并不延遲對文件系統改變的響應。
6.權利要求1的系統,其中至少一個文件服務器在向海量存儲器提交該文件系統改變的結果之前響應文件系統的改變。
7.權利要求1的系統,其中各文件服務器使用本地存儲器訪問被連接到該文件服務器改變存儲器的至少一部分上;各文件服務器使用遠程存儲器訪問被連接到該文件服務器改變存儲器的至少一部分上。
8.權利要求1的系統,其中描述符包括文件服務器請求。
9.權利要求1的系統,其中所述文件服務器改變存儲器包括一個磁盤塊。
10.權利要求1的系統,其中所述文件服務器改變存儲器包括一個文件服務器請求。
11.權利要求1的系統,其中所述文件服務器改變存儲器被安排用于延遲到海量存儲器單元的輸出,而并不延遲對文件服務器請求的響應。
12.權利要求1的系統,其中海量存儲器單元包括文件存儲器系統;各文件服務器被安排用于在處理完文件系統的改變后使文件存儲器系統處于內部一致的狀態;該內部一致的狀態與一組完成的文件系統改變相關聯;該組完成的文件系統改變是可由各文件服務器識別的。
13.權利要求1的系統,其中海量存儲器包括文件存儲器系統,且各文件服務器被安排用于在處理完各文件系統改變之后使文件存儲器系統處于內部一致的狀態。
14.權利要求1的文件服務器系統,其中海量存儲器單元包括基本海量存儲器單元和鏡像海量存儲器單元,和第一文件服務器為所述基本海量存儲器單元和鏡像海量存儲器單元兩者處理這些文件系統的改變。
15.權利要求1的系統,其中復制裝置包括利用NUMA網絡訪問所述第一和第二文件服務器改變存儲器中至少一個。
16.權利要求1的系統,其中復制裝置包括對所述第一和第二文件服務器改變存儲器中至少一個的遠程存儲器訪問。
17.權利要求1的系統,其中所述第二文件服務器用于執行其文件服務器改變存儲器中的文件服務器請求的裝置,還響應所述第二文件服務器中的服務中斷而操作。
18.一種文件服務器系統,包括第一文件服務器,被連接到第一組海量存儲器設備上;第二文件服務器,被連接到第二組海量存儲器設備上;服務器改變存儲器;所述第一文件服務器被安排用于接收文件服務器請求,并對此響應將文件系統改變的描述符復制到服務器改變存儲器上;所述第一文件服務器被安排用于為第一組海量存儲器設備和至少第二組海量存儲器設備中的一個兩者處理文件系統的改變。
19.權利要求18的系統,其中所述第二文件服務器被安排用于接收文件服務器請求,并對此響應將文件系統的改變描述符復制到文件服務器改變存儲器中;和所述第二文件服務器被安排用于為第二組海量存儲器設備和至少第一組海量存儲器設備中的一個兩者中而處理文件系統的改變。
20.權利要求18的系統,其中服務器改變存儲器包括磁盤塊。
21.權利要求18的系統,其中服務器改變存儲器包括文件服務器請求。
22.權利要求18的系統,其中服務器改變存儲器包括被安排在所述第一文件服務器中的第一部分和被安排在所述第二文件服務器中的第二部分。
23.權利要求18的系統,其中服務器改變存儲器包括被安排在所述第一文件服務器中的第一部分和被安排在所述第二文件服務器中的第二部分;第一文件服務器被安排用于將描述符復制到該第一和第二部分中。
24.權利要求18的系統,其中所述服務器改變存儲器包括被安排在第一文件服務器中的第一部分和被安排在所述第二文件服務器中的第二部分。所述第一文件服務器和所述第二文件服務器均被安排用于將所述描述符復制到所述第一部分和所述第二部分兩者中。
25.權利要求18的系統,其中所述服務器改變存儲器被安排用于延遲至海量存儲器單元的輸出,而并不延遲文件服務器請求的響應。
26.一種文件服務器系統包括多個文件服務器,該多個文件服務器被連接到海量存儲器單元和至少一個文件服務器改變存儲器上;各文件服務器被安排用于接收文件服務器請求并對此響應將文件系統改變的描述符復制到該文件服務器改變存儲器上;和各文件服務器被安排用于響應服務中斷,通過執行文件服務器改變存儲器中的文件系統改變而實現。
27.權利要求26的系統,各文件服務器包括至少一個海量存儲器單元。
28.權利要求26的系統,各文件服務器包括至少一個該服務器改變存儲器。
29.權利要求26的系統,其中所述第一文件服務器被安排用于按原子地處理文件服務器的改變,由此,所述第二文件服務器在故障恢復中能夠處理那些所述第一文件服務器沒有處理的文件系統的改變。
30.權利要求26的系統,其中第一文件服務器被安排用于為其自身和第二文件服務器同等地響應服務中斷。
31.權利要求26的系統,其中至少一個該文件服務器延遲到該海量存儲器單元的輸出,而并不延遲對文件服務器請求的響應。
32.權利要求26的系統,其中至少一個文件服務器在向海量存儲器提交該文件系統改變之前響應文件系統的改變。
33.權利要求26的系統,其中各文件服務器利用本地存儲器訪問被連接到至少文件服務器改變存儲器的一部分上;各文件服務器利用遠程存儲器訪問被連接到至少文件服務器改變存儲器的一部分上。
34.權利要求26的系統,其中各文件服務器被安排利用NUMA網絡復制描述符。
35.權利要求26的系統,其中各文件服務器被安排利用遠程存儲器訪問復制描述符。
36.權利要求26的系統,其中所述文件服務器改變存儲器包括一個磁盤塊。
37.權利要求26的系統,其中所述文件服務器改變存儲器包括一個文件服務器請求。
38.權利要求26的系統,其中所述文件服務器改變存儲器被安排延遲至海量存儲器單元的輸出,而并不延遲對文件服務器請求的響應。
39.權利要求26的系統,其中所述海量存儲器單元包括一個文件存儲器系統,和各文件服務器被安排用于在處理完文件系統改變后保持文件存儲器系統處于內部一致的狀態。
40.權利要求26的系統,其中所述海量存儲器單元包括一個文件存儲器系統;各文件服務器被安排用于在處理完文件系統改變后保持文件存儲器系統處于內部一致的狀態;該內部一致狀態與一組完成的文件系統改變關聯;該組完成的文件系統改變對各文件服務器是可識別的。
41.權利要求26的文件服務器系統,其中海量存儲器單元包括基本海量存儲器單元和鏡像海量存儲器單元;和第一文件服務器為基本海量存儲器單元和鏡像海量存儲器單元兩者處理文件系統的改變。
42.一種用于操作文件服務器系統的方法,該方法包括如下步驟通過將文件系統改變的描述符復制到第一和第二文件服務器兩者中,響應輸入的文件服務器請求;在第一文件服務器中處理文件系統的改變,而在在第二文件服務器中保存描述符復本;在第二文件服務器中執行文件系統改變以響應復制的描述符和第一文件服務器中的服務中斷。
43.權利要求42的方法,包括將第一、第二文件服務器與海量存儲器單元關聯起來的步驟。
44.權利要求42的方法,包括由至少一個文件服務器延遲到海量存儲器系統的輸出而并不延遲對文件系統改變的響應的步驟。
45.權利要求42中的方法,其中第一文件服務器被安排用于按原子地處理文件系統改變,由此,第二文件服務器在故障恢復時能夠處理那些第一文件服務器沒有處理的文件系統改變。
46.權利要求42的方法,其中所述第一文件服務器被安排為其自身及第二文件服務器同等地響應服務中斷。
47.權利要求42的方法,其中在向海量存儲器提交所述文件系統改變的結果之前,至少一個文件服務器響應文件系統的改變。
48.權利要求42的方法,其中各文件服務器包括一個文件服務器改變存儲器;各文件服務器利用本地存儲器訪問被連接到至少文件服務器改變存儲器的一部分上;各文件服務器利用遠程存儲器訪問被連接到至少文件服務器請求存儲器的一部分上。
49.權利要求42的方法,其中文件服務器改變存儲器包括一個磁盤塊。
50.權利要求42的方法,其中文件服務器改變存儲器包括一個文件服務器請求。
51.權利要求42的方法,其中文件服務器改變存儲器被安排用于延遲向海量存儲器單元的輸出,而并不延遲對文件服務器請求的響應。
52.權利要求42的方法,其中海量存儲器單元包括一個文件存儲器系統,各文件服務器被安排用于在處理完各文件系統改變之后保持文件存儲器系統處于內部一致的狀態。
53.權利要求42的方法,其中響應被復制的描述符用于執行文件系統改變的步驟,響應第二文件服務器中的服務中斷時而操作。
54.權利要求42的方法,其中該處理步驟包括用于處理在基本海量存儲器單元和鏡像海量存儲器單元兩者中的文件系統改變的步驟。
55.一種用于操作文件服務器系統的方法,該方法包括如下步驟在多個文件服務器至少一個中接收文件服務器請求,并對此響應將文件系統改變的描述符復制到服務器改變存儲器上;為連接到第一個所述文件服務器上的第一組海量存儲器設備和連接到第二個所述文件服務器上的第二組海量存儲器設備中至少一個兩者處理文件系統改變。
56.權利要求56的方法,其中所述描述符包括文件服務器請求。
57.權利要求56的方法,其中所述服務器改變存儲器包括磁盤塊。
58.權利要求56的方法,其中所述服務器改變存儲器包括文件服務器請求。
59.權利要求56的方法,其中服務器改變存儲器包括被安排在第一文件服務器中的第一部分和被安排在第二文件服務器中的第二部分
60.權利要求56的方法,其中服務器改變存儲器包括被安排在所述第一文件服務器中的第一部分和被安排在所述第二文件服務器中的第二部分;和其中該復制步驟包括用于將描述符復制到第一和第二部分中的步驟。
61.權利要求56中的方法,其中服務器改變存儲器包括被安排在第一文件服務器中的第一部分和被安排在第二文件服務器中的第二部分;和其中該復制步驟包括用于通過第一文件服務器或第二文件服務器中任何一個將該描述符復制到第一和第二部分中的步驟。
62.權利要求56的方法,其中服務器改變存儲器被安排用于延遲到海量存儲器單元的輸出,而并不延遲對文件服務器請求的響應。
63.權利要求56的方法,其中所述接收步驟包括在第一文件服務器或第二文件服務器上接收文件服務器請求,和所述復制描述符步驟包括由第一文件服務器或第二文件服務器復制;并且包括步驟為海量存儲器設備的第二組和所述第一組的至少一個海量存儲器兩者處理該文件系統的改變。
64.一種用于操作文件服務器系統的方法,該方法包括如下步驟接收在多個文件服務器中至少一個接收文件服務器請求并對此響應將文件系統改變的描述符復制到文件服務器改變存儲器中;和響應服務中斷,通過響應文件服務器改變存儲器中的描述符而執行文件系統改變實現。
65.權利要求65的方法,包括將多個文件服務器與至少一個海量存儲器單元和至少一個文件服務器改變存儲器聯系起來的步驟。
66.權利要求65的方法,包括延遲到海量存儲器單元的輸出而并不延遲對文件服務器請求的響應的步驟。
67.權利要求65的方法,包括步驟用于在處理完各文件系統改變后,保持在海量存儲器單元之上的文件存儲器系統處于內部一致的狀態。
68.權利要求65的方法,包括步驟在處理完各文件系統改變后,保持在海量存儲器單元之上的文件存儲器系統處于內部一致的狀態;將內部一致狀態與一組完成的文件系統改變關聯起來;由至少一個文件服務器識別該組完成的文件系統的改變。
69.權利要求65的方法,包括在基本海量存儲器單元和鏡像海量存儲器單元兩者中執行被接收到的文件服務器請求的步驟。
70.權利要求65的方法,包括步驟按原子地處理在第一文件服務器中的文件服務器的改變;和在故障恢復時能夠處理那些第一文件服務器沒有處理的文件系統的改變。
71.權利要求65的方法,包括為其自身和第二文件服務器同等地響應在第一文件服務器中的服務中斷的步驟。
72.權利要求65的方法,其中文件服務器改變存儲器包括磁盤塊。
73.權利要求65的方法,其中文件服務器改變存儲器包括文件服務器請求。
74.權利要求65的方法,其中文件服務器改變存儲器被安排用于延遲到海量存儲器單元的輸出,而并不延遲對文件服務器請求的響應。
75.權利要求65的方法,包括在向文件服務器中的海量存儲器提交文件系統改變的結果之間響應文件系統的改變的步驟。
全文摘要
發明提供了一種存儲器系統,即使存儲器系統面臨部件故障時也是高度可用的,同時也提供了一種方法,用于操作該存儲器系統。第一和第二文件服務器各包含一個文件服務器請求記錄,用于存儲輸入的文件服務器請求。第一和第二文件服務器都能訪問一組共同的存儲器單元。各個輸入的文件服務器請求被復制到第一和第二文件服務器上;第一文件服務器處理文件服務器請求而第二文件服務器在其文件服務器請求記錄中保存其復本。每個文件服務器使用文件系統完成操作;該文件系統在各個文件服務器請求之后仍保持一致的狀態。在故障恢復時,自最近的一致狀態開始,第二文件服務器能夠執行文件服務器請求記錄中的那些文件服務器請求。不存在能阻止對任何單個海量存儲器單元訪問的單一的故障點。
文檔編號G06F12/00GK1299484SQ99805880
公開日2001年6月13日 申請日期1999年3月8日 優先權日1998年3月10日
發明者S·克萊曼 申請人:網絡裝置公司