輔助式一致共享存儲器的制造方法
【技術領域】
[0001]本公開總體上涉及多節(jié)點系統(tǒng)。更具體地,本公開涉及在多節(jié)點系統(tǒng)內共享存儲器。
【背景技術】
[0002]多節(jié)點系統(tǒng)可包括多個節(jié)點。系統(tǒng)的類型包括但不限于網絡、機架服務器系統(tǒng)、刀片服務器等等。在某些情況下,每個節(jié)點可以是跨在節(jié)點內的處理或輸入/輸出(I/o)設備之間具有硬件高速緩存一致性的一個或多個機架的大部分的大型對稱多處理(SMP)節(jié)點。高速緩存一致性的結果是,大型SMP系統(tǒng)能夠應用足夠的計算資源來解決計算設備之間的細粒度負載均衡問題,同時具有大型存儲器印跡來存儲可通過存儲器加載和存儲語義由任何計算設備直接訪問的應用數據。該系統(tǒng)還可以是松耦合(LC)系統(tǒng),由多個較小的SMP系統(tǒng)組成,其中,節(jié)點能夠在粗糙粒度水平上協(xié)調任務。
【附圖說明】
[0003]通過參照包含所公開的主題的許多目標和特征的特定示例的附圖可更好地理解以下詳細描述。
[0004]圖1是多節(jié)點系統(tǒng)模型的框圖;
[0005]圖2是部分一致系統(tǒng)的示圖;
[0006]圖3是全局存儲器映射的示圖;
[0007]圖4是用于跨多個集群的一致共享存儲器的過程流程圖;以及
[0008]圖5是可訪問匯集存儲器資源的節(jié)點500的框圖。
[0009]貫穿本公開和附圖使用相同的編號來引用相同的組件和特征。100系列中的編號指代最初在圖1中發(fā)現的特征;200系列中的編號指代最初在圖2中發(fā)現的特征,以此類推。
【具體實施方式】
[0010]SMP系統(tǒng)包括單個故障域,其中,系統(tǒng)的任何組件或軟件的故障致使整個系統(tǒng)失效。例如,如果SMP節(jié)點失效,包括該SMP節(jié)點的整個系統(tǒng)失效。相反,LC系統(tǒng)將包含通過獨立故障域的任何組件或軟件的失效。因此,LC系統(tǒng)中受影響的服務器或組件可崩潰,但是其他服務器或組件將繼續(xù)操作,就像失效從未發(fā)生似的。然而,LC系統(tǒng)中的存儲器不通過加載/存儲語義共享。而是,通過I/O驅動器發(fā)送消息以便完成LC系統(tǒng)中的存儲器共享。當與SMP系統(tǒng)相比較時,由于與I/O驅動器相關聯(lián)的更高延遲,使用I/O驅動器來實現存儲器共享會降低LC系統(tǒng)的性能。
[0011]在此描述的實施例涉及跨多個集群的一致共享存儲器。在實施例中,結構存儲器控制器耦合到一個或多個節(jié)點。結構存儲器控制器使用加載存儲語義管理對每個節(jié)點內的存儲器模塊的訪問。每個節(jié)點上的存儲器模塊可被包括在每個節(jié)點的共享存儲器區(qū)域內。即便當節(jié)點已經失效時,共享存儲器區(qū)域是可訪問的。而且,結構存儲器控制器管理全局存儲器并且多個節(jié)點的每個共享存儲器區(qū)域可被結構存儲器控制器映射到全局存儲器。結果,提供了可高速緩存的全局存儲器??筛咚倬彺娴娜执鎯ζ髂軌蚩缍鄠€節(jié)點和集群遞送數據一致性,同時維護每個節(jié)點或集群的獨立故障域。進一步地,使用加載-存儲語義可作為本地存儲器訪問和高速緩存全局存儲器,同時每個集群維護其單獨的故障域。附加地,共享存儲器能夠提供可靠性、可用性、以及可服務性(RAS)功能,包括全部獨立盤冗余陣列(RAID)方案。本技術還可與任何高密度機架規(guī)模架構(RSA) —起使用。
[0012]在實施例中,每個節(jié)點包括一個或多個處理設備(例如,CPU)、可高速緩存的以及不可高速緩存的和易失性的以及非易失性的存儲器、以及運行一個B1S映像以及一個操作系統(tǒng)/虛擬機監(jiān)控器映像的一個或多個I/O設備。以此方式,每個節(jié)點是所包含的故障域。節(jié)點中的任何硬件組件的或在節(jié)點上運行的軟件的任何失效在最壞情況下僅擊倒該節(jié)點。
[0013]在以下說明書和權利要求書中,可使用術語“耦合”和“連接”及其衍生詞。應當理解的是這些術語不旨在作為彼此的同義詞。相反,在具體實施例中,“連接”可用于指示兩個或更多個元件彼此直接物理或電接觸?!榜詈稀笨梢庵竷蓚€或更多個元件直接物理或電接觸。然而,“耦合”還可意指兩個或更多個元件不彼此直接接觸,但是仍可彼此合作或交互。然而,術語“松耦合”是指具有獨立故障域的系統(tǒng)。結果,術語“耦合”的使用不改變或修改被稱為松耦合的系統(tǒng)。
[0014]某些實施例可在一個硬件、固件、和軟件或其組合中實現。某些實施例還可被實現為存儲在機器可讀介質上的指令,這些指令可由計算平臺讀取并執(zhí)行以便執(zhí)行在此描述的操作。機器可讀介質可包括用于存儲或傳輸機器(例如,計算機)可讀形式的信息的任何機制。例如,機器可讀介質可包括只讀存儲器(ROM)、隨機存取存儲器(RAM)、磁盤存儲介質、光學存儲介質、閃存設備等等。
[0015]實施例是實現方式或示例。貫穿本說明書對“實施例”、“一個實施例”、“某些實施例”、“各實施例”、或“其他實施例”的參考是指在此結合這些實施例所描述的特定特征、結構或特性包括在本發(fā)明的至少某些實施例但無需全部實施例中。“實施例”、“一個實施例”、或“某些實施例”的各種出現并非必須全部指代相同的實施例。實施例的元素或方面可與另一個實施例的元素或方面組合。
[0016]不是所有在此描述和示出的組件、特征、結構、特性等等需要被包括在一個或多個特定實施例。如果說明書陳述組件、特征、結構、或特性“可”、“可能”、“能夠”或“可以”被包括,例如不要求包括該特定特征、結構、或特性。如果說明書或權利要求書參考“一”、“一個”元件,這不意味著僅存在一個這種元件。如果說明書或權利要求書參考“附加”元件,這不排除存在多于一個這種附加元件。
[0017]注意,盡管已經參照具體實現方式描述了某些實施例,其他實現方式根據某些實施例是可能的。附加地,在附圖中示出和/或在此描述的電路元件或其他特征的安排和/或順序無需以所示出和描述的特定方式安排。許多其他安排根據某些實施例是可能的。
[0018]在附圖中示出的每個系統(tǒng)中,在某些情況下,元素可各自具有相同的參考標號或不同的參考標號,以便指示所表示的元素可不同和/或類似。然而,元素可足夠靈活以便具有不同的實現方式并且與在此示出或描述的某些或所有系統(tǒng)一起工作。在附圖中示出的各個元素可相同或不同。將哪一個稱為第一元素以及將哪一個稱為第二元素是任意的。
[0019]圖1是多節(jié)點系統(tǒng)模型的框圖100。多節(jié)點系統(tǒng)模型包括部分一致系統(tǒng)102、SMP系統(tǒng)104、以及LC系統(tǒng)106。盡管在每個系統(tǒng)中示出了若干服務器,每個系統(tǒng)可被認為是一個服務器。在SMP系統(tǒng)104中,每個節(jié)點108連接到節(jié)點控制器(NC) 110。NC 110能夠使得每個節(jié)點108連接到擴展互連112。擴展互連112可用于實現SMP系統(tǒng)104的每個NC 110之間的通信。相應地,SMP系統(tǒng)104是基于節(jié)點控制器的,具有共享存儲器。SMP系統(tǒng)是完全一致的,并且包括快速分布式鎖定管理器。然而,SMP系統(tǒng)104是單個故障域。換言之,任何節(jié)點108或節(jié)點控制器110內出現的單個故障將致使整個系統(tǒng)失效、崩潰、或以其他方式不可用。
[0020]在LC系統(tǒng)106中,每個節(jié)點114連接到網絡接口卡(NIC) 116。在某些情況下,NIC 116是能夠進行遠程直接存儲器訪問(RDMA)的以太網設備或另一個I/O控制器,諸如InfiniBand主機總線適配器(IB HBA)。NIC 116能夠使得每個節(jié)點114連接到RDMA互連118。RDMA互連118使得每個NIC 116能夠傳遞消息,以便實現跨LC系統(tǒng)106的存儲器共享。相應地,LC系統(tǒng)106包括獨立故障域。然而,不在LC系統(tǒng)106中共享存儲器。進一步地,難以跨LC系統(tǒng)106均衡負載并且LC系統(tǒng)106具有分布式鎖定管理器擴展性。
[0021]部分一致系統(tǒng)102包括多個節(jié)點120,每個節(jié)點連接到多個增強型節(jié)點控制器(eNC)122之一。每個eNC 122將其對應的節(jié)點120連接到擴展互連124。部分一致系統(tǒng)102跨具有獨立故障域的多節(jié)點系統(tǒng)共享存儲器。通過使用以下描述的軟件輔助,部分一致系統(tǒng)102是部分一致的。附加地,部分一致系統(tǒng)102包括快速分布式鎖定管理器。
[0022]圖2是部分一致系統(tǒng)102的示圖。部分一致系統(tǒng)102包括節(jié)點202和節(jié)點204。節(jié)點202包括結構存儲器控制器(FMC) 206,并且節(jié)點204包括FMC 208。附加地,節(jié)點202包括節(jié)點存儲器214以及本地存儲器218。節(jié)點204包括節(jié)點存儲