国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Linux 集群大全
哪種群集適合您?

Rawn Shah
LinuxWorld 專欄作家
2000 年 5 月

Rawn Shah 作為專家,在 Linux 現(xiàn)有的開放源碼和封閉源碼集群解決方案方面為您指點迷津。

計算 Linux 中集群項目的數(shù)量就象計算硅谷中創(chuàng)業(yè)公司的數(shù)量一樣。不象 Windows NT 已經(jīng)受其自身的封閉環(huán)境阻礙,Linux 有大量的集群系統(tǒng)可供選擇,適合于不同的用途和需要。但確定應(yīng)該使用哪一個集群的工作卻沒有因此變得簡單。

問題的部分原因在于術(shù)語集群用于不同場合。IT 經(jīng)理可能關(guān)心如何使服務(wù)器運行時間更長,或使應(yīng)用程序運行得更快,而數(shù)學(xué)家可能更關(guān)心在服務(wù)器上進行大規(guī)模數(shù)值計算。兩者都需要群集,但是各自需要不同特性的群集。

本文調(diào)查了不同形式的集群以及許多實現(xiàn)中的一部分,這些實現(xiàn)可以買到,也可以免費軟件形式獲得。盡管列出的所有解決方案并不都是開放源碼,但是大多數(shù)軟件都遵循分發(fā) Linux 源碼的公共慣例,特別是由于那些實現(xiàn)集群的人還常常希望調(diào)整系統(tǒng)性能,以滿足需要。

硬件
集群總是涉及到機器之間的硬件連接。在現(xiàn)今大多數(shù)情況下,這只是指“快速以太網(wǎng)”網(wǎng)卡和集線器。但在尖端科學(xué)領(lǐng)域中,有許多專為集群設(shè)計的網(wǎng)絡(luò)接口卡。

它們包括 Myricom 的 Myrinet、Giganet 的 cLAN 和 IEEE 1596 標準可伸縮一致接口 (SCI)。那些卡的功能不但在群集的節(jié)點之間提供高帶寬,而且還減少延遲(發(fā)送消息所用的時間)。對于在節(jié)點間交換狀態(tài)信息以使其操作保持同步情況,那些延遲是至關(guān)重要的。

Myricom
Myricom 提供網(wǎng)卡和交換機,其單向互連速度最高可達到 1.28 Gbps。網(wǎng)卡有兩種形式,銅線型和光纖型。銅線型 LAN 可以在 10 英尺距離內(nèi)以全速進行通信,而在長達 60 英尺距離內(nèi)以半速進行操作。光纖型 Myrinet 可以在 6.25 英里長的單模光纖或者 340 英尺長的多模光纖上全速運行。Myrinet 只提供直接點到點、基于集線器或基于交換機的網(wǎng)絡(luò)配置,但在可以連接到一起的交換光纖數(shù)量方面沒有限制。添加交換光纖只會增加節(jié)點間的延遲。兩個直接連接的節(jié)點之間的平均延遲是 5 到 18 微秒,比以太網(wǎng)快得多。

集群類型
最常見的三種群集類型包括高性能科學(xué)群集、負載均衡群集和高可用性群集。

科學(xué)群集
通常,第一種涉及為群集開發(fā)并行編程應(yīng)用程序,以解決復(fù)雜的科學(xué)問題。這是并行計算的基礎(chǔ),盡管它不使用專門的并行超級計算機,這種超級計算機內(nèi)部由十至上萬個獨立處理器組成。但它卻使用商業(yè)系統(tǒng),如通過高速連接來鏈接的一組單處理器或雙處理器 PC,并且在公共消息傳遞層上進行通信以運行并行應(yīng)用程序。因此,您會常常聽說又有一種便宜的 Linux 超級計算機問世了。但它實際是一個計算機群集,其處理能力與真的超級計算機相等,通常一套象樣的群集配置開銷要超過 $100,000。這對一般人來說似乎是太貴了,但與價值上百萬美元的專用超級計算機相比還算是便宜的。

負載均衡群集
負載均衡群集為企業(yè)需求提供了更實用的系統(tǒng)。如名稱所暗示的,該系統(tǒng)使負載可以在計算機群集中盡可能平均地分攤處理。該負載可能是需要均衡的應(yīng)用程序處理負載或網(wǎng)絡(luò)流量負載。這樣的系統(tǒng)非常適合于運行同一組應(yīng)用程序的大量用戶。每個節(jié)點都可以處理一部分負載,并且可以在節(jié)點之間動態(tài)分配負載,以實現(xiàn)平衡。對于網(wǎng)絡(luò)流量也是如此。通常,網(wǎng)絡(luò)服務(wù)器應(yīng)用程序接受了太多入網(wǎng)流量,以致無法迅速處理,這就需要將流量發(fā)送給在其它節(jié)點上運行的網(wǎng)絡(luò)服務(wù)器應(yīng)用。還可以根據(jù)每個節(jié)點上不同的可用資源或網(wǎng)絡(luò)的特殊環(huán)境來進行優(yōu)化。

高可用性群集
高可用性群集的出現(xiàn)是為了使群集的整體服務(wù)盡可能可用,以便考慮計算硬件和軟件的易錯性。如果高可用性群集中的主節(jié)點發(fā)生了故障,那么這段時間內(nèi)將由次節(jié)點代替它。次節(jié)點通常是主節(jié)點的鏡像,所以當它代替主節(jié)點時,它可以完全接管其身份,并且因此使系統(tǒng)環(huán)境對于用戶是一致的。

在群集的這三種基本類型之間,經(jīng)常會發(fā)生混合與交雜。于是,可以發(fā)現(xiàn)高可用性群集也可以在其節(jié)點之間均衡用戶負載,同時仍試圖維持高可用性程度。同樣,可以從要編入應(yīng)用程序的群集中找到一個并行群集,它可以在節(jié)點之間執(zhí)行負載均衡。盡管集群系統(tǒng)本身獨立于它在使用的軟件或硬件,但要有效運行系統(tǒng)時,硬件連接將起關(guān)鍵作用。

Giganet
Giganet 是用于 Linux 平臺的虛擬接口 (VI) 體系結(jié)構(gòu)卡的第一家供應(yīng)商,提供 cLAN 卡和交換機。VI 體系結(jié)構(gòu)是獨立于平臺的軟件和硬件系統(tǒng),它由 Intel 開發(fā),用于創(chuàng)建群集。它使用自己的網(wǎng)絡(luò)通信協(xié)議在服務(wù)器之間直接交換數(shù)據(jù),而不是使用 IP,并且它并不打算成為 WAN 可路由的系統(tǒng)。現(xiàn)在,VI 的未來取決于正在進行的“系統(tǒng) I/O 組”的工作,這個小組本是 Intel 領(lǐng)導(dǎo)的“下一代 I/O”小組與 IBM 和 Compaq 領(lǐng)導(dǎo)的“未來 I/O 小組”的合并。Giganet 產(chǎn)品當前可以在節(jié)點之間提供 1 Gbps 單向通信,最小延遲為 7 微秒。

IEEE SCI
IEEE 標準 SCI 的延遲更少(低于 2.5 微秒),并且其單向速度可達到 400 MB/秒 (3.2 Gbps)。SCI 是基于環(huán)拓撲的網(wǎng)絡(luò)系統(tǒng),不像以太網(wǎng)是星形拓撲。這將使在較大規(guī)模的節(jié)點之間通信速度更快。更有用的是環(huán)面拓撲網(wǎng)絡(luò),它在節(jié)點之間有許多環(huán)形結(jié)構(gòu)。兩維環(huán)面可以用 n 乘 m 的網(wǎng)格表示,其中在每一行和每一列都有一個環(huán)形網(wǎng)絡(luò)。三維環(huán)面也類似,可以用三維立體節(jié)點網(wǎng)格表示,每一層上有一個環(huán)形網(wǎng)絡(luò)。密集超級計算并行系統(tǒng)使用環(huán)面拓撲網(wǎng)絡(luò),為成百上千個節(jié)點之間的通信提供相對最快的路徑。

大多數(shù)操作系統(tǒng)的限制因素不是操作系統(tǒng)或網(wǎng)絡(luò)接口,而是服務(wù)器的內(nèi)部 PCI 總線系統(tǒng)。幾乎所有臺式 PC 通常有基本 32-位,33-MHz PCI,并且大多數(shù)低端服務(wù)器只提供 133 MB/秒 (1 Gbps),這限制了那些網(wǎng)卡的能力。一些昂貴的高端服務(wù)器,如 Compaq Proliant 6500 和 IBM Netfinity 7000 系列,都有 64-位, 66-MHz 網(wǎng)卡,它們能夠以四倍速度運行。不幸地是,矛盾是更多公司使用低端的系統(tǒng),因此大多數(shù)供應(yīng)商最終生產(chǎn)和銷售更多低端 PCI 網(wǎng)卡。也有專門的 64-位,66-MHz PCI 網(wǎng)卡,但價格要貴許多。例如,Intel 提供了這種類型的“快速以太網(wǎng)”網(wǎng)卡,價格約 $400 到 $500,幾乎是普通 PCI 版本價格的 5 倍。

科學(xué)群集
某些并行群集系統(tǒng)可以達到如此高的帶寬和低延遲,其原因是它們通常繞過使用網(wǎng)絡(luò)協(xié)議,如 TCP/IP。雖然網(wǎng)際協(xié)議對于廣域網(wǎng)很重要,但它包含了太多的開銷,而這些開銷在節(jié)點相互已知的封閉網(wǎng)絡(luò)群集中是不必要的。其實,那些系統(tǒng)中有一部分可以在節(jié)點之間使用直接內(nèi)存訪問 (DMA),它類似于圖形卡和其它外圍設(shè)備在一臺機器中的工作方式。因此橫跨群集,可以通過任何節(jié)點上的任何處理器直接訪問一種形式的分布式共享內(nèi)存。它們也可以使用低開銷的消息傳遞系統(tǒng),在節(jié)點之間進行通信。

消息傳遞接口 (MPI) 是并行群集系統(tǒng)間消息傳遞層的最常見實現(xiàn)。MPI 存在幾種衍生版本,但在所有情況下,它為開發(fā)者訪問并行應(yīng)用程序提供了一個公共 API,這樣開發(fā)者就不必手工解決如何在群集的節(jié)點之間分發(fā)代碼段。其中一個,Beowulf 系統(tǒng)首先將 MPI 用作公共編程接口。

很難決定使用哪種高性能集群包。許多都提供類似服務(wù),但計算的具體要求才是決定性因素。很多情況下,在那些系統(tǒng)中的研究工作只是解決需求的一半,而且使用那些軟件需要集群包開發(fā)者的特殊幫助和合作。

Beowulf
當談到 Linux 集群時,許多人的第一反映是 Beowulf。那是最著名的 Linux 科學(xué)軟件集群系統(tǒng)。沒有一個包叫做 Beowulf。實際上,它是一個術(shù)語,適用于在 Linux 內(nèi)核上運行的一組公共軟件工具。其中包括流行的軟件消息傳遞 API,如“消息傳送接口”(MPI) 或“并行虛擬機”(PVM),對 Linux 內(nèi)核的修改,以允許結(jié)合幾個以太網(wǎng)接口、高性能網(wǎng)絡(luò)驅(qū)動器,對虛擬內(nèi)存管理器的更改,以及分布式進程間通信 (DIPC) 服務(wù)。公共全局進程標識空間允許使用 DIPC 機制從任何節(jié)點訪問任何進程。Beowulf 還在節(jié)點間支持一系列硬件連通性選件。

Beowulf 可能是考慮 Linux 時注意到的第一個高性能集群系統(tǒng),這只是因為它的廣泛使用和支持。關(guān)于這個主題,有許多文檔和書籍。Beowulf 與以下一些科學(xué)集群系統(tǒng)之間的差異可以是實際的,或者只是在產(chǎn)品名稱中有差異。例如,盡管名稱不同,Alta Technologies 的 AltaCluster 就是一個 Beowulf 系統(tǒng)。某些供應(yīng)商,如 ParTec AG,一家德國公司,提供了 Beowulf 模型的衍生版本,以包括其它管理接口和通信協(xié)議。

Giganet cLAN
Giganet 提供了一種定制的基于硬件的解決方案,它使用非 IP 協(xié)議在一個科學(xué)群集的節(jié)點間進行通信。如前所述,“虛擬接口”協(xié)議通過除去不少協(xié)議的開銷,如 IP,以支持服務(wù)器間更快的通信。另外,硬件系統(tǒng)可按千兆比特速度運行,并且延遲很短,使它非常適合構(gòu)建最多達 256 個節(jié)點的科學(xué)群集。該供應(yīng)商支持 MPI,這樣許多并行應(yīng)用程序就可以在類似的系統(tǒng)(如 Beowulf)上運行。

它也有 Beowulf 的缺點,即不能用作網(wǎng)絡(luò)負載共享系統(tǒng),除非想要編寫應(yīng)用程序來監(jiān)控和分發(fā)在服務(wù)器間傳送的網(wǎng)絡(luò)包。

Legion
Legion 試圖構(gòu)建一個真正的多計算機系統(tǒng)。這是一個群集,其中每個節(jié)點都是一個獨立系統(tǒng),但在用戶看來,整個系統(tǒng)只是一臺計算機。Legion 設(shè)計成支持一臺世界范圍的計算機,由上百萬個主機以及數(shù)以萬億計的軟件對象組成。在 Legion 中,用戶可以創(chuàng)立他們自己的合作小組。

Legion 提供了高性能并行、負載均衡、分布式數(shù)據(jù)管理和容錯性。

Legion 提供了高性能并行、負載均衡、分布式數(shù)據(jù)管理和容錯性。它通過其容錯管理和成員節(jié)點間的動態(tài)重新配置來支持高可用性。它還有一個可擴充核心,該核心可以在出現(xiàn)新的改進和進展時動態(tài)替換或升級。系統(tǒng)并不是只接受單一控制,而是可以由任意數(shù)量的組織管理,而每個組織都支持整體的自治部分。Legion API 通過其內(nèi)置的并行性提供了高性能計算。

Legion 需要使用特別編寫的軟件,以使它可以使用其 API 庫。它位于用戶計算機操作系統(tǒng)之上,協(xié)調(diào)本地資源和分布式資源。它自動處理資源調(diào)度和安全性,還管理上下文空間以描述和訪問整個系統(tǒng)中上億種可能之外的對象。然而,在每個節(jié)點上運行時,不需要使用系統(tǒng)管理員特權(quán),并且可以使用無特權(quán)的用戶賬號進行工作。這將增加加入 Legion 的節(jié)點和用戶的靈活性。

Cplant
Sandia National Lab 中的 Computational Plant 是一個大規(guī)模整體并行群集,用于實現(xiàn) TeraFLOP(萬億次浮點運算)計算并構(gòu)建在商業(yè)組件上。整個系統(tǒng)由“可伸縮單元”組成,這些“可伸縮單元”可以劃分成適合不同目的(計算、磁盤 I/O、網(wǎng)絡(luò) I/O、服務(wù)管理)。群集中的每個節(jié)點都是一個 Linux 系統(tǒng),帶有專門開發(fā)的、提供分區(qū)服務(wù)的內(nèi)核級模塊。每個分區(qū)的功能可以通過裝入和卸載內(nèi)核級模塊來修改。

項目分三個階段完成,開始階段是原型,有 128 個基于 433-MHz DEC Alpha 21164 的系統(tǒng),其中每個都有 192 MB RAM 和 2 GB 驅(qū)動器,相互之間用 Myrinet 網(wǎng)卡和 8-端口的 SAN 交換機連接。第 1 階段將它擴充為 400 個基于 21164 的工作站,這些工作站的運行速度為 500 MHz,有 192 MB RAM,沒有存儲器,用 16-端口的 SAN 交換機以超立方體結(jié)構(gòu)連接起來,并且運行 Red Hat 5.1。當前的第 2 階段有 592 臺基于 DEC 21264 的機器,它們的運行速度為 500 MHz,有 256 MB RAM,沒有驅(qū)動器。每個節(jié)點都使用 64-位,33-MHz PCI Myrinet 網(wǎng)卡,并且仍使用 16-端口交換機以超立方體結(jié)構(gòu)連接。

在 Cplant 上運行的應(yīng)用程序包括解決稀疏線性系統(tǒng)、流體力學(xué)和結(jié)構(gòu)力學(xué)中計算系統(tǒng)的優(yōu)化、分子力學(xué)的模擬、線性結(jié)構(gòu)力學(xué)的有限元分析,以及并行應(yīng)用程序的動態(tài)負載均衡庫。

JESSICA 2
香港大學(xué)的系統(tǒng)研究小組有一個基于 Java 的群集,叫做支持 Java 的單系統(tǒng)映像計算體系結(jié)構(gòu) (JESSICA),它作為一個中間件層以完成單系統(tǒng)映像的幻想。該層是每個使用分布式共享內(nèi)存 (DSM) 系統(tǒng)進行通信的節(jié)點上運行的所有線程的一個全局線程空間。該項目使用 ThreadMark DSM,但最終將用他們自己創(chuàng)建的 JiaJia Using Migrating-home Protocol (JUMP)。他們使用定制的基于 Java 的 ClusterProbe 軟件來管理群集的 50 個節(jié)點。

PARIS
法國的 IRISA 研究所的“大規(guī)模數(shù)字模擬應(yīng)用程序的編程并行和分布式系統(tǒng)”(PARIS) 項目提供了幾種用于創(chuàng)建 Linux 服務(wù)器群集的工具。該項目由三部分組成:群集的資源管理軟件、并行編程語言的運行時環(huán)境,以及分布式數(shù)字模擬的軟件工具。

資源管理軟件包括用于共享內(nèi)存、磁盤和處理器資源的 Globelins 分布式系統(tǒng),及其 Dupleix 和 Mome 分布式共享內(nèi)存系統(tǒng)。

負載均衡群集
負載均衡群集在多節(jié)點之間分發(fā)網(wǎng)絡(luò)或計算處理負載。在這種情況下,區(qū)別在于缺少跨節(jié)點運行的單并行程序。大多數(shù)情況下,那種群集中的每個節(jié)點都是運行單獨軟件的獨立系統(tǒng)。但是,不管是在節(jié)點之間進行直接通信,還是通過中央負載均衡服務(wù)器來控制每個節(jié)點的負載,在節(jié)點之間都有一種公共關(guān)系。通常,使用特定的算法來分發(fā)該負載。

網(wǎng)絡(luò)流量負載均衡是一個過程,它檢查到某個群集的入網(wǎng)流量,然后將流量分發(fā)到各個節(jié)點以進行適當處理。它最適合大型網(wǎng)絡(luò)應(yīng)用程序,如 Web 或 FTP 服務(wù)器。負載均衡網(wǎng)絡(luò)應(yīng)用服務(wù)要求群集軟件檢查每個節(jié)點的當前負載,并確定哪些節(jié)點可以接受新的作業(yè)。這最適合運行如數(shù)據(jù)分析等串行和批處理作業(yè)。那些系統(tǒng)還可以配置成關(guān)注某特定節(jié)點的硬件或操作系統(tǒng)功能:這樣,群集中的節(jié)點就沒有必要是一致的。

Linux 虛擬服務(wù)器
“Linux 虛擬服務(wù)器”項目已經(jīng)實現(xiàn)了許多內(nèi)核補丁,它們?yōu)槿刖W(wǎng) TCP/IP 流量創(chuàng)建了負載均衡系統(tǒng)。LVS 軟件檢查入網(wǎng)流量,然后根據(jù)負載均衡算法,將流量重定向到一組充當群集的服務(wù)器。這允許網(wǎng)絡(luò)應(yīng)用程序,如 Web 服務(wù)器,在節(jié)點群集上運行以支持大量用戶。

LVS 支持作為負載均衡服務(wù)器直接連接到同一個 LAN 的群集節(jié)點,但它還能夠以通道傳送 IP 包的方式連接到遠程服務(wù)器。后一種方法包括壓縮 IP 包中的均衡請求,這些 IP 信息包從負載均衡服務(wù)器直接發(fā)送到遠程群集節(jié)點。盡管 LVS 可以遠程支持網(wǎng)站的負載均衡,但它使用的負載均衡算法現(xiàn)在對于虛擬群集中的廣域 Web 服務(wù)器仍無效。因此,如果 Web 服務(wù)器都在同一個 LAN 中,LVS 最好當作負載均衡服務(wù)器使用。

負載均衡系統(tǒng)的幾種硬件實現(xiàn)比在通用操作系統(tǒng),如 Linux,上運行得更快。它們包括來自 Alteon 和 Foundry 的硬件,其硬件邏輯和最少操作系統(tǒng)可以在硬件中執(zhí)行流量管理,并且速度比純軟件快。它們的價格也很高,通常都在 $10,000 以上。如果需要簡單和便宜的解決方案,一個有很多內(nèi)存 (256 MB) 的中等 Linux 系統(tǒng)將會是一個好的負載均衡系統(tǒng)。

TurboLinux TurboCluster 和 enFuzion
TurboLinux 有一個產(chǎn)品叫 TurboCluster,它最初以“Linux 虛擬服務(wù)器”項目開發(fā)的內(nèi)核補丁為基礎(chǔ)。因此,它可以得到大部分優(yōu)點,但它的缺點也與原來的項目一樣。TurboLinux 為此還開發(fā)了一些工具,用于監(jiān)控增加產(chǎn)品實用性的群集行為。一家主要供應(yīng)商的商業(yè)支持也使它對于大型網(wǎng)站更具吸引力。

EnFuzion 支持在節(jié)點之間實現(xiàn)自動負載均衡和資源共享,而且可以自動重新安排失敗的作業(yè)。

EnFuzion 是 TurboLinux 即將推出的科學(xué)群集產(chǎn)品,它并不基于 Beowulf。但是,它可以支持上百個節(jié)點以及許多不同的非 Linux 平臺,包括 Solaris、Windows NT、HP-UX、IBM AIX、SGI Irix 和 Tru64。EnFuzion 非常有趣,因為它運行所有現(xiàn)有軟件,并且不需要為環(huán)境編寫定制的并行應(yīng)用程序。它支持在節(jié)點間實現(xiàn)自動負載均衡和資源共享,而且可以自動重新安排失敗的作業(yè)。

Platform Computing 的 LSF 批處理
Platform Computing 是群集計算領(lǐng)域的老手,現(xiàn)在提供了 Linux 平臺上的“負載均衡設(shè)施 (LSF) 批處理”軟件。LSF 批處理允許中央控制器安排作業(yè)在群集中任意數(shù)量的節(jié)點上運行。在概念上,它類似于 TurboLinux enFuzion 軟件,并且支持在節(jié)點上運行任何類型的應(yīng)用程序。

這種方法對于群集大小是非常靈活的,因為可以明確選擇節(jié)點的數(shù)量,甚至是運行應(yīng)用程序的節(jié)點。于是,可以將 64 個節(jié)點的群集分成更小的邏輯群集,每個邏輯群集都運行自己的批處理應(yīng)用程序。而且,如果應(yīng)用程序或節(jié)點失敗,它可以在其它服務(wù)器上重新安排作業(yè)。

Platform 的產(chǎn)品在主要 Unix 系統(tǒng)和 Windows NT 上運行。目前,只有它們的 LSF 批處理產(chǎn)品已經(jīng)移植到 Linux 上。最終,LSF Suite 組件的其余部分也將緊隨其后移植到 Linux 上。

Resonate Dispatch 系列
Resonate 有一種基于軟件的負載均衡方法,類似于 Linux 虛擬服務(wù)器。但是,它支持更多特性,以及一些更好的負載均衡算法。例如,使用 Resonate,可以在每個群集節(jié)點裝入一個代理,以確定該節(jié)點當前的系統(tǒng)負載。然后,負載均衡服務(wù)器檢查每個節(jié)點的代理,以確定哪個節(jié)點的負載最少,并且將新的流量發(fā)送給它。另外,Resonate 還可以使用它的 Global Dispatch 產(chǎn)品更有效地支持地區(qū)性分布式服務(wù)器。

Resonate 已經(jīng)在 Red Hat Linux 上徹底測試了該軟件,相信它也可以在其它發(fā)行版上運行。Resonate 的軟件還可以在其它各種平臺上運行,包括 Solaris、AIX、Windows NT,并且它還可以在混合環(huán)境中進行負載均衡。

MOSIX
MOSIX 使用 Linux 內(nèi)核新版本來實現(xiàn)進程負載均衡集群系統(tǒng)。該群集中,任何服務(wù)器或工作站可以按指定加入或離開,即添加到群集的總處理能力,或從中除去。根據(jù)其文檔,MOSIX 使用自適應(yīng)進程負載均衡和內(nèi)存引導(dǎo)算法使整體性能最大化。應(yīng)用程序進程可以在節(jié)點之間搶先遷移,以利用最好的資源,這類似于對稱多處理器系統(tǒng)可以在各個處理器之間切換應(yīng)用程序。

MOSIX 在應(yīng)用層是完全透明的,并且不需要重新編譯或者重新鏈接到新的庫,因為所有一切都發(fā)生在內(nèi)核級上??梢杂袔追N方法將它配置成多用戶共享環(huán)境群集。所有服務(wù)器可以共享一個池,系統(tǒng)可以是群集的一部分,或者群集可以動態(tài)地分成幾個子群集,每種方法都有不同的用途。Linux 工作站還可以是群集的一部分,可以是固定的,也可以是臨時的,或者只是作為批處理作業(yè)提交者。作為臨時群集節(jié)點,工作站可以在其空閑時用于增加群集處理能力。也允許只以批處理方式使用群集,在這種方式中,群集被配置成通過隊列接受批處理作業(yè)。然后,守護程序取走作業(yè)并將它們發(fā)送到群集節(jié)點進行處理。

MOSIX 的不利之處是它更改 Linux 內(nèi)核行為的一些核心部分,于是系統(tǒng)級應(yīng)用程序?qū)⒉粫雌谕\行。

除了高性能科學(xué)計算,MOSIX 提供了一個有趣的選項,用于以共同設(shè)置創(chuàng)建集群環(huán)境。通過使用服務(wù)器和工作站上的閑置資源,它可以更快更有效地創(chuàng)建和運行應(yīng)用程序。由于訪問了多臺服務(wù)器,并且可以動態(tài)調(diào)整群集大小和更改負載均衡規(guī)則,它還可以提供高度的服務(wù)器可用性。MOSIX 的不利之處是它更改 Linux 內(nèi)核行為的一些核心部分,于是系統(tǒng)級應(yīng)用程序?qū)⒉粫雌谕\行。要使用網(wǎng)絡(luò)應(yīng)用程序時,而該程序使用基于單個服務(wù)器地址的套接字連接,MOSIX 通常也會受到限制。這意味著網(wǎng)絡(luò)應(yīng)用程序在一個服務(wù)器節(jié)點上開始運行時,如果 IP 地址與套接字綁定,那么它必須繼續(xù)在該節(jié)點上運行。顯然,MOSIX 還正在開始遷移套接字,因此這很快就變成了爭論的焦點。

高可用性群集
高可用性 (HA) 群集致力于使服務(wù)器系統(tǒng)的運行速度和響應(yīng)速度盡可能快。它們經(jīng)常使用在多臺機器上運行的冗余節(jié)點和服務(wù),用來相互跟蹤。如果某個節(jié)點失敗,它的替補將在幾秒鐘或更短時間內(nèi)接管它的職責。因此,對于用戶而言,群集永遠不會停機。

某些 HA 群集也可以維護節(jié)點間冗余應(yīng)用程序。因此,用戶的應(yīng)用程序?qū)⒗^續(xù)運行,即使他或她使用的節(jié)點出了故障。正在運行的應(yīng)用程序會在幾秒之內(nèi)遷移到另一個節(jié)點,而所有用戶只會察覺到響應(yīng)稍微慢了一點。但是,這種應(yīng)用程序級冗余要求將軟件設(shè)計成具有群集意識的,并且知道節(jié)點失敗時應(yīng)該做什么。但對于 Linux,大多數(shù)現(xiàn)在還做不到。因為 Linux 系統(tǒng)沒有 HA 集群標準,并且也沒有公共 API 可供應(yīng)用程序開發(fā)者構(gòu)建有群集意識的軟件。

HA 群集可以執(zhí)行負載均衡,但通常主服務(wù)器運行作業(yè),而系統(tǒng)使輔助服務(wù)器保持閑置。輔助服務(wù)器通常是主服務(wù)器操作系統(tǒng)設(shè)置的鏡像,盡管硬件本身稍有不同。輔助節(jié)點對主服務(wù)器進行活動監(jiān)控或心跳觀察,以查看它是否仍在運行。如果心跳計時器沒有接收到主服務(wù)器的響應(yīng),則輔助節(jié)點將接管網(wǎng)絡(luò)和系統(tǒng)身份(如果是 Linux 系統(tǒng),則是 IP 主機名和地址)。

但是,Linux 在這一領(lǐng)域仍有一點忽略。好消息是有一家著名的供應(yīng)商正在努力盡快研制高可用性群集,因為它是企業(yè)級服務(wù)器都必需的功能。

Linux-HA 項目
高可用性 Linux 項目,根據(jù)其目標聲明,旨在為 Linux 提供高可用性解決方案,以通過社區(qū)開發(fā)成果提高可靠性、可用性和服務(wù)能力。Linux 達到高可用性集群時,這是一種試圖給予 Linux 與先進的 Unix 系統(tǒng),如 Solaris、AIX 和 HP/UX,一樣具有競爭力的特性。因此,項目的目標是在 2001 年之前達到 Unix 集群比較報告 ( http://www.sun.com/clusters/dh.brown.pdf) 中分析專家組 D. H. Brown 特定功能性級別。

項目中有可以維護節(jié)點間心跳并接管失敗節(jié)點的 IP 地址的軟件。如果一個節(jié)點失敗,它使用“偽造冗余 IP”軟件包將失敗節(jié)點的地址添加到工作節(jié)點以承擔它的職責。于是,可以在幾毫秒時間內(nèi)自動替換失敗的節(jié)點。實際使用中,心跳通常在幾秒范圍內(nèi),除非在節(jié)點之間有專用網(wǎng)絡(luò)鏈接。因此,失敗系統(tǒng)中的用戶應(yīng)用程序仍需要在新的節(jié)點上重新啟動。

無處不在的集群
對于 Linux,有許多集群系統(tǒng)可供選用。同時,那些項目中有幾個是非商業(yè)性的,甚至是實驗性質(zhì)的。雖然對學(xué)術(shù)界和某些組織這也沒有形成問題,但大公司通常首選著名供應(yīng)商的商業(yè)支持平臺。供應(yīng)商,如 IBM、SGI、HP 和 Sun,提供了用于在 Linux 中構(gòu)建科學(xué)群集的產(chǎn)品和服務(wù),因為群集很流行,并且可以銷售大量的服務(wù)器設(shè)備。一旦商業(yè)機構(gòu)認為其它形式的集群是可靠的,那些相同的服務(wù)器供應(yīng)商或許會圍繞著開放源碼集群解決方案創(chuàng)建自己的產(chǎn)品。

Linux 作為服務(wù)器平臺的重要性依賴于支持大型服務(wù)器和服務(wù)器群集的能力。這就使它可以與 Sun、HP、IBM 和其它公司的 UNIX 服務(wù)器在更高層面上競爭。雖然 Windows NT 和 2000 不支持 Linux 能夠支持的集群范圍,但是 HA 集群正規(guī)方法的可用性以及用于構(gòu)建有群集意識的 API 也使它能夠參與競爭。

如果正在考慮構(gòu)建一個群集,那么您應(yīng)當仔細檢查那些可能性,并將它們與您的需求做比較。您也許會發(fā)現(xiàn)想要實現(xiàn)的目標還不能成為一個完整的解決方案,或許會發(fā)現(xiàn)已經(jīng)有了現(xiàn)成的解決方案。不管是哪種情況,請相信許多現(xiàn)有公司將他們的應(yīng)用程序托付給進行深度計算并提供大量網(wǎng)頁的 Linux 系統(tǒng)群集。集群是一種企業(yè)系統(tǒng)服務(wù),已經(jīng)在 Linux 下成功測試過。盡管新的集群將出現(xiàn),但選擇的多樣性正是 Linux 超過其它系統(tǒng),如 Windows NT,的優(yōu)勢。

經(jīng)由 LinuxWorld 雜志授權(quán)重印。Copyright Web Publishing Inc., IDG 通信公司的子公司。 請注冊以加入編者的郵件列表。
關(guān)于作者
Rawn Shah 是居住在亞利桑那州圖森市的一位獨立顧問。他多年來與多平臺問題打交道并撰寫相關(guān)文章,但常常令他不解的是很少有人知道有用的系統(tǒng)工具。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
集群(Cluster)
使用Docker、CoreOS、Mesos部署可擴展的Web應(yīng)用
性能測試知多少---系統(tǒng)架構(gòu)分析
論文:Linux集群系統(tǒng)研究
Linux下的HA方案
主流數(shù)據(jù)庫集群技術(shù)探討
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服