專利名稱:集群計算-基于nic的os供應的制作方法
技術領域:
本公開的實施例涉及數據處理領域,具體涉及與供應(provision)用于計算集群的異構服務器的集群計算操作系統關聯的方法、設備以及物品。
背景技術:
·除非本文另外指示,這部分中描述的材料不是本申請中的權利要求書的現有技術,并且不由于被包括在這部分中而被承認是現有技術。隨著集成電路和計算技術的不斷進步,現今向外擴展(scale out)服務器集群正變得越來越龐大。因此,能夠有效向外擴展變得越來越重要。同樣重要的是,使得每個基本輸入/輸出服務(BIOS)廠商能夠支持各種應用編程接口(API)、統一可擴展固件接口、快速啟動等等。不幸的是,大多數計算平臺包括來自不同廠商的組成部分的混合,一般它們彼此工作得不好。因此,根據現今的技術,使得不同廠商的服務器一致地或有結合性地工作以形成計算集群變得越來越困難。
本公開的實施例將作為示范實施例呈現,而不是限制,在附圖中示出這些實施例,其中,類似的參考標記類似的單元,以及其中圖I示出具有網絡接口卡的服務器的計算集群的概觀,網絡接口卡配置成將集群計算操作系統分別供應給服務器;圖2示出適合用于實施圖I的計算集群的服務器方面的示例計算機系統;以及圖3示出適合于圖I的服務器的初始化過程,全部根據本公開的實施例來設置。
具體實施例方式同此公開與集群計算關聯的方法、部件以及系統。在實施例中,網絡接口卡可設有只讀存儲器,其中已經存儲多個編程指令,這些編程指令配置成給網絡接口卡編程來為作為該網絡接口卡宿主(host)的服務器供應集群計算操作系統。編程指令可配置成實現集群計算操作系統的至少微內核。在實施例中,方法可包括在作為網絡接口卡宿主的服務器的初始化期間在最初初始化時間段之后將控制轉移給該網絡接口卡。作為響應,網絡接口卡可將集群計算操作系統的副本加載到宿主服務器的系統存儲器中。此后,運行控制可轉移給集群計算操作系統以完成初始化。一旦完成初始化,可接著進行集群計算。在實施例中,服務器和至少一個其它服務器具有相同或相似集群計算操作系統的相應副本,并且形成計算集群。服務器和至少一個其它服務器可以是異構的,由不同的廠商提供。將使用本領域技術人員常用的術語來描述說明性實施例的各種方面,以向本領域其他技術人員傳達他們工作的實質。但是,對于本領域技術人員將顯然的是,可僅用所描述的方面中的一些來實施替代實施例。為了說明,闡述特定數字、材料以及配置以便提供對說明性實施例的完全理解。但是,對于本領域技術人員將顯然的是,沒有這些特定細節也可實施替代實施例。在其它情況下,省略或簡化眾所周知的特征,以免影響對說明性實施例的理解。另外,將以對理解說明性實施例極有幫助的方式把各種操作依次描述為多個分立操作;但是,描述的順序不應該解釋為暗示著這些操作必定是順序相關的。具體地,這些操作不需要以呈現的順序執行。重復使用短語“在一個實施例中”。該短語一般不是指相同的實施例;但是,它可以指相同的實施例。術語“包括”、“具有”以及“包含”是同義的,除非上下文另外規定。短語“A/B”意味著“A或B”。短語“A和/或B”意味著“㈧、⑶或(A和B) ”。短語“A、B和C中的至少一個”意味著“ (A)、⑶、(C)、(A和B)、(A和C)、(B和C)或(A、B和C) ”。短語“㈧B”意味著“(B)或(A B)”,也就是,A是可選的。
圖I示出根據本公開實施例的具有相應網絡接口卡的服務器的計算集群的概觀,相應網絡接口卡配置成將相應集群計算操作系統供應給服務器。如圖所示,計算集群100可包括多個服務器102a-102d。服務器102a-102d中的每個可包括網絡接口卡104a_104d,網絡接口卡104a-104d具有擴展只讀存儲器(ROM) 106a_106d(也就是非瞬時計算機可讀存儲介質),其中存儲集群計算操作系統108a-108d的至少微內核的相應副本。擴展ROM還可稱為選項ROM。如下面將更詳細描述的,網絡接口卡104a-104d配置成將它們的相應集群計算操作系統(其可以是相同的或相似的)供應給它們的相應宿主服務器。對于本申請(包括權利要求書)來說,當兩個集群計算操作系統能夠一起無縫地工作以使得兩個服務器能夠形成計算機集群來提供集群計算時,這兩個操作系統是相似的。這兩個服務器可以是同構的(由相同的廠商提供),或異構的(由不同的廠商提供)。仍然參考圖1,服務器102a_102d可經由局域網絡105相互耦合以及耦合到網關106。網關106又可與公用網絡120耦合。局域網絡105、網關106以及公用網絡120旨在表示本領域中已知的這些單元/裝置的廣泛范圍。具體地,公用網絡120可包括因特網。相似地,除了本公開的教導以外,服務器102a_102d旨在表示本領域中已知的計算機服務器的廣泛范圍。雖然為了易于理解,圖I中示出四個服務器,但是本公開不限于此。本公開可實施成在計算集群中具有更多或更少的服務器。圖2示出適合用于實施本公開的各種實施例的服務器方面的示例計算機系統。如圖所示,計算系統200可包括多個處理器或處理器核心202、系統存儲器204 (也就是非瞬時計算機可讀存儲介質)、芯片組203以及網絡接口卡104,它們彼此耦合。對于本申請(包括權利要求書)來說,術語“處理器”和“處理器核心”可認為是同義的,除非上下文另外明確要求。如之前所描述的,網絡接口卡104可包括連網電路110以及具有集群計算操作系統108的至少微內核的副本的只讀存儲器106。在各種實施例中,網絡接口卡104可經由高速外設部件互連(PCIe)總線(未示出)與芯片組203耦合。網絡接口卡104可配置有適當的PCIe連接器,用于與PCIe總線耦合。另外,計算系統200可包括橋205、大容量存儲裝置206 (例如磁盤、硬盤驅動器、光盤只讀存儲器(CDROM)或其它非瞬時計算機可讀存儲介質)以及輸入/輸出裝置208 (例如顯示器、鍵盤、光標控制器等等),它們彼此耦合并且與之前列舉的單元耦合。
這些單元中的每個可執行其在本領域中已知的常規功能。具體地,可采用系統存儲器204和大容量存儲裝置206存儲實現各種應用222的編程指令的工作副本和永久副本。可選擇地通過(一個或多個)處理器202支持的匯編指令或諸如能夠編譯成這類指令的高級語言(例如C)來實現集群計算操作系統108和各種應用。在工廠中或在現場,例如可通過諸如光盤(CD)或其它非瞬時計算機可讀存儲介質的分布介質(未示出)或通過(來自分布服務器(未示出)的)NIC 104將應用222的編程指令的永久副本放置到永久存儲裝置206中。也就是,可采用具有應用222的實現的一個或更多分布介質來分布應用222以及給各種服務器200編程。除了為支持和/或實現計算機系統服務器200的初始化過程而提供的電路和/或邏輯(下面將更充分描述)以外,這些單元202-216以及208的構成是已知的,并且因此將不另外進行描述。現在參考圖3,其中,示出根據本公開的各種實施例的適合于圖I的服務器的初始化過程。如圖所示,如果發生通電或復位302,則服務器的BIOS可進行初始化服務器,即,初 始化服務器的各種部件直到選項ROM掃描階段304。為了易于理解,這一時間段可稱為服務器的初始化期間的最初初始化期。當到達選項ROM掃描階段時,BIOS可進行轉移控制給網絡接口卡以繼續初始化306。一旦轉移,網絡接口卡就可進行將集群計算操作系統的副本加載到服務器的系統存儲器中308。在各種實施例中,在集群計算操作系統的整個副本存儲在網絡接口卡的ROM中的情況下,集群計算操作系統被從網絡接口卡的ROM中復制到系統存儲器中。在其它實施例中,在僅集群計算操作系統的微內核存儲在網絡接口卡的ROM中的情況下,集群計算操作系統的其余部分可通過微內核從遠程服務器復制到系統存儲器中。一旦將集群計算操作系統復制到系統存儲器中,網絡接口卡就可轉移控制給系統存儲器中的集群計算操作系統以繼續初始化310。一旦轉移,系統存儲器中的集群計算操作系統就可完成初始化312。此后,可接著進行集群計算314,其中,服務器和相似地供應的至少一個其它服務器形成計算集群。雖然本文已經示出和描述特定實施例,但是本領域技術人員將領會的是,各種各樣的替代和/或等效實現可取代示出和描述的特定實施例,而不脫離本發明實施例的范圍。本申請旨在覆蓋本文所討論實施例的任何修改或變化。因此,明顯旨在僅由權利要求書及其等效來限制本發明實施例。
權利要求
1.一種用于集群計算的方法,包括 由服務器的基本輸入/輸出服務在服務器初始化期間在最初初始化期之后轉移控制給所述服務器的連網接口卡; 由所述連網接口卡將集群計算操作系統加載到所述服務器的系統存儲器中;以及 由所述集群計算操作系統完成所述服務器的初始化; 其中,所述服務器和至少一個其它相似地供應的服務器形成計算集群。
2.如權利要求I所述的方法,其中,加載包括由所述連網接口卡將所述集群計算操作系統從所述連網接口卡的選項只讀存儲器中加載到所述服務器的所述系統存儲器中。
3.如權利要求I所述的方法,其中,加載包括由所述連網接口卡將所述集群計算操作 系統從另一遠程服務器加載到所述服務器的所述系統存儲器中。
4.如權利要求I所述的方法,還包括將所述集群計算操作系統的至少微內核供應給所述網絡接口卡,所述微內核配置成從遠程服務器取回所述集群計算操作系統的其余部分。
5.如權利要求I所述的方法,還包括 由所述至少一個其它服務器的基本輸入/輸出服務在至少一個其它服務器的初始化期間在最初初始化期之后轉移控制給所述至少一個其它服務器的連網接口卡;以及 由所述至少一個其它服務器的所述連網接口卡將所述集群計算操作系統加載到所述至少一個其它服務器的系統存儲器中;以及 由加載到所述至少一個其它服務器的系統存儲器中的所述集群計算操作系統完成所述至少一個其它服務器的初始化。
6.如權利要求I所述的方法,其中,所述服務器和所述至少一個其它相似地供應的服務器是異構的,由不同的廠商提供。
7.一種網絡接口卡,包括 連網電路;以及 只讀存儲器,耦合到所述連網電路,并且,在所述只讀存儲器中已經存儲集群計算操作系統的至少微內核,所述微內核配置成在由作為所述網絡接口卡宿主的服務器的基本輸入/輸出服務在所述服務器的初始化期間在最初初始化期之后將控制給予所述網絡接口卡之后,將所述集群計算操作系統加載到所述服務器的系統存儲器中; 其中,所述服務器和至少一個其它相似地供應的服務器形成計算集群。
8.如權利要求7所述的網絡接口卡,其中,所述只讀存儲器包括所述集群計算操作系統的所述微內核,并且所述微內核配置成從另一遠程服務器取回所述集群計算操作系統的其余部分。
9.如權利要求7所述的網絡接口卡,還包括配置成將所述網絡接口卡耦合到所述服務器的PCIe總線的PCIe連接器。
10.如權利要求6所述的網絡接口卡,其中,所述服務器和所述至少一個其它相似地供應的服務器是異構的,由不同的廠商提供。
11.一種服務器,包括 處理器; 系統存儲器; 基本輸入/輸出服務;以及與所述處理器和所述系統存儲器耦合的網絡接口卡,其中,所述網絡接口卡包括只讀存儲器,所述只讀存儲器中已經存儲集群計算操作系統的至少微內核,所述微內核配置成在由所述基本輸入/輸出服務在所述服務器的初始化期間在最初初始化期之后將控制給予所述網絡接口卡之后,將所述集群計算操作系統加載到所述系統存儲器中。
其中,所述服務器和至少一個其它相似地供應的服務器形成計算集群。
12.如權利要求11所述的服務器,其中,所述只讀存儲器包括所述集群計算操作系統的所述微內核,并且所述微內核配置成從另一遠程服務器取回所述集群計算操作系統的其余部分。
13.如權利要求11所述的服務器,其中,所述只讀存儲器包括整個所述集群計算操作系統。
14.如權利要求11所述的服務器,還包括PCIe總線,其中,所述網絡接口卡還包括配置 成將所述網絡接口卡耦合到所述PCIe總線的PCIe連接器。
15.如權利要求14所述的服務器,還包括耦合到芯片組的橋,并且多個輸入/輸出裝置耦合到所述橋。
16.如權利要求11所述的服務器,其中,所述服務器和所述至少一個其它相似地供應的服務器是異構的,由不同的廠商提供。
17.一種制造物品,包括 非瞬時有形計算機可讀存儲介質;以及 存儲在所述存儲介質中并配置成實現集群計算操作系統的至少微內核的多個編程指令,其中,所述微內核配置成給連網接口卡編程,以使得所述網絡接口卡能夠響應于在作為所述網絡接口卡宿主的服務器的初始化期間在最初初始化期之后被給予控制,而執行包括將所述集群計算操作系統加載到作為所述網絡接口卡宿主的服務器的系統存儲器中的操作; 其中,所述服務器和至少一個其它相似地供應的服務器形成計算集群。
18.如權利要求17所述的物品,其中,加載包括將所述集群計算操作系統從所述連網接口卡的選項只讀存儲器中加載到所述服務器的所述系統存儲器中。
19.如權利要求17所述的物品,其中,加載包括將所述集群計算操作系統從另一遠程服務器加載到所述服務器的所述系統存儲器中。
20.如權利要求17所述的物品,其中,所述服務器和所述至少一個其它相似地供應的服務器是異構的,由不同的廠商提供。
全文摘要
本文公開了帶具有集群計算操作系統的至少微內核的只讀存儲器的網絡接口卡、形成的有這類網絡接口卡的服務器以及形成的有這類服務器的計算集群。在各種實施例中,一旦轉移,在服務器的初始化期間在最初初始化期之后,網絡接口卡就將集群計算操作系統加載到服務器的系統存儲器中,以使得服務器能夠結合其它相似地供應的服務器形成計算集群。還公開并要求保護其它實施例。
文檔編號G06F13/14GK102959505SQ201180002816
公開日2013年3月6日 申請日期2011年9月23日 優先權日2010年9月23日
發明者R·斯萬森, M·A·羅思曼, M·布盧蘇, V·J·齊默, P·薩克蒂庫馬 申請人:英特爾公司