集群(Cluster)是由兩臺或多臺節點機(服務器)構成的一種松散耦合的計算節點集合,為用戶提供網絡服務或應用程序(包括數據庫、Web服務和文件服務等)的單一客戶視圖,同時提供接近容錯機的故障恢復能力。集群系統一般通過兩臺或多臺節點服務器系統通過相應的硬件及軟件互連,每個群集節點都是運行其自己進程的獨立服務器。這些進程可以彼此通信,對網絡客戶機來說就像是形成了一個單一系統,協同起來向用戶提供應用程序、系統資源和數據。除了作為單一系統提供服務,集群系統還具有恢復服務器級故障的能力。集群系統還可通過在集群中繼續增加服務器的方式,從內部增加服務器的處理能力,并通過系統級的冗余提供固有的可靠性和可用性。
二、集群的分類:
1、高性能計算科學集群:
以解決復雜的科學計算問題為目的的IA集群系統。是并行計算的基礎,它可以不使用專門的由十至上萬個獨立處理器組成的并行超級計算機,而是采用通過高速連接來鏈接的一組1/2/4 CPU的IA服務器,并且在公共消息傳遞層上進行通信以運行并行應用程序。這樣的計算集群,其處理能力與真正超級并行
機相等,并且具有優良的性價比。
2、負載均衡集群:
負載均衡集群為企業需求提供更實用的系統。該系統使各節點的負載流量可以在服務器集群中盡可能平均合理地分攤處理。該負載需要均衡計算的應用程序處理端口負載或網絡流量負載。這樣的系統非常適合于運行同一組應用程序的大量用戶。每個節點都可以處理一部分負載,并且可以在節點之間動態分配負載,以實現平衡。對于網絡流量也如此。通常,網絡服務器應用程序接受了大量入網流量,無法迅速處理,這就需要將流量發送給在其它節點。負載均衡算法還可以根據每個節點不同的可用資源或網絡的特殊環境來進行優化。
3、高可用性集群:
為保證集群整體服務的高可用,考慮計算硬件和軟件的容錯性。如果高可用性群集中的某個節點發生了故障,那么將由另外的節點代替它。整個系統環境對于用戶是一致的。實際應用的集群系統中,這三種基本類型經常會發生混合與交雜。
三、典型集群:
科學計算集群:
1、Beowulf
當談到 Linux 集群時,許多人的第一反映是 Beowulf。那是最著名的 Linux科學軟件集群系統。實際上,它是一組適用于在 Linux 內核上運行的公共軟件包的通稱。其中包括流行的軟件消息傳遞 API,如"消息傳送接口"(MPI) 或"并行虛擬機"(PVM),對 Linux 內核的修改,以允許結合幾個以太網接口、高性能網絡驅動器,對虛擬內存管理器的更改,以及分布式進程間通信 (DIPC) 服務。公共全局進程標識空間允許使用 DIPC 機制從任何節點訪問任何進程。
2、MOSIX
Beowulf類似于給系統安裝的一個支持集群的外掛軟件,提供了應用級的集群能力。而MOSIX是徹底修改Linux的內核,從系統級提供了集群能力,它對應用而言是完全透明的,原有的應用程序,可以不經改動,就能正常運行在MOSIX系統之上。集群中的任何節點都可以自由地加入和移除,來接替其它節點的工作,或是擴充系統。MOSIX 使用自適應進程負載均衡和內存引導算法使整體性能最大化。應用程序進程可以在節點之間實現遷移,以利用最好的資源,這類似于對稱多處理器系統可以在各個處理器之間切換應用程序。由于MOSIX通過修改內核來實現集群功能,所以存在兼容性問題,部分系統級應用程序將無法正常運行。
負載均衡/高可用性集群
3、LVS(Linux Virtual Server)
它是一個負載均衡/高可用性集群,主要針對大業務量的網絡應用(如新聞服務、網上銀行、電子商務等)。
LVS是建立在一個主控服務器(通常為雙機)(director)及若干真實服務器(real-server)所組成的集群之上。real-server負責實際提供服務,主控服務器根據指定的調度算法對real-server進行控制。而集群的結構對于用戶來說是透明的,客戶端只與單個的IP(集群系統的虛擬IP)進行通信,也就是說從客戶端的視角來看,這里只存在單個服務器。
Real-server可以提供眾多服務,如ftp, http, dns, telnet, nntp, smtp 等。主控服務器負責對Real-Server進行控制??蛻舳嗽谙騆VS發出服務請求時,Director會通過特定的調度算法來指定由某個Real-Server來應答請求,而客戶端只與Load Balancer的IP(即虛擬IP,VIP)進行通信。
其他集群:現在集群系統可謂五花八門,絕大部分的OS開發商,服務器開發商都提供了系統級的集群產品,最典型的是各類雙機系統,還有各類科研院校提供的集群系統。以及各類軟件開發商提供的應用級別的集群系統,如數據庫集群,Application Server 集群,Web Server集群,郵件集群等等。
四 優缺點描述
1、 出現任何故障,如:硬盤、內存、CPU、主板、I/O板以及電源故障,運行在這臺服務器上的應用就會切換到其它的服務器上。
2、集群系統可解決軟件系統問題,我們知道,在計算機系統中,用戶所使用的是應用程序和數據,而應用系統運行在操作系統之上,操作系統又運行在服務器上。這樣,只要應用系統、操作系統、服務器三者中的任何一個出現故障,系統實際上就停止了向客戶端提供服務,比如我們常見的軟件死機,就是這種情況之一,盡管服務器硬件完好,但服務器仍舊不能向客戶端提供服務。而集群的最大優勢在于對故障服務器的監控是基于應用的,也就是說,只要服務器的應用停止運行,其它的相關服務器就會接管這個應用,而不必理會應用停止運行的原因是什么。
3、集群系統可以解決人為失誤造成的應用系統停止工作的情況,例如,當管理員對某臺服務器操作不當導致該服務器停機,因此運行在這臺服務器上的應用系統也就停止了運行。由于集群是對應用進行監控,因此其它的相關服務器就會接管這個應用。
集群系統的不足之處在于:
我們知道集群中的應用只在一臺服務器上運行,如果這個應用出現故障,其它的某臺服務器會重新啟動這個應用,接管位于共享磁盤柜上的數據區,進而使應用重新正常運轉。我們知道整個應用的接管過程大體需要三個步驟:偵測并確認故障、后備服務器重新啟動該應用、接管共享的數據區。因此在切換的過程中需要花費一定的時間,原則上根據應用的大小不同切換的時間也會不同,越大的應用切換的時間越長。
網頁題目:什么服務器集群?集群服務器有什么優缺點?
標題URL:http://vcdvsql.cn/hangye/fwqzy/n8380.html
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯