21

更新時間: 2013-08-25

廣告

集群,英文名稱為Cluster,通俗地說,集群是這樣一種技術:它將多個系統連接到一起,使多台伺服器能夠像一台機器那樣工作或者看起來好像一台機器。採用集群系統通常是為了提高系統的穩定性和網路中心的數據處理能力及服務能力。

簡介
舉個例子來說,我們架設了一台WWW伺服器,上面構建了一個電子商務網站,然而隨著時間的推移,名聲越來越大,這時點擊率也就越來越高,WWW伺服器的負載也就越來越高。這種情況下,我們就必須提升WWW伺服器的能力,以滿足日益增長的服務請求。這時,我們就面臨兩種選擇:
1)升級WWW伺服器,採用更快的CPU,增加更多的內存,使其具有更強的性能;但日益增長的服務請求又會使伺服器再次過載,需要再次升級,這樣就陷入了升級的怪圈。還有,升級時還得考慮到服務如何接續,能否中止。
集群伺服器

  集群伺服器

2)增加WWW伺服器,讓多台伺服器來完成相同的服務。
第二種方法就是伺服器集群,簡而言之,就是一組相互獨立的伺服器在網路中表現為單一的系統,並以單一系統的模式加以管理。此單一系統為客戶工作站提供高可靠性的服務。一個伺服器集群包含多台擁有共享數據存儲空間的伺服器,各伺服器之間通過內部區域網進行相互通信;當其中一台伺服器發生故障時,它所運行的應用程序將由其他的伺服器自動接管;在大多數情況下,集群中所有的計算機都擁有一個共同的名稱,集群系統內任意一台伺服器都可被所有的網路用戶所使用。在集群系統中運行的伺服器並不一定是高檔產品,但伺服器的集群卻可以提供相當高性能的不停機服務;每一台伺服器都可承擔部分計算任務,並且由於群集了多台伺服器的性能,因此,整體系統的計算能力將有所提高;同時,每台伺服器還能承擔一定的容錯任務,當其中某台伺服器出現故障時,系統可以在專用軟體的支持下將這台伺服器與系統隔離,並通過各伺服器之間的負載轉移機制實現新的負載平衡,同時向系統管理員發出報警信號。
兩種方法
目前,有兩種常用的伺服器集群方法:
一種是將備份伺服器連接在主伺服器上,當主伺服器發生故障時,備份伺服器才投入運行,把主伺服器上所有任務接管過來。
另一種方法是將多台伺服器連接,這些伺服器一起分擔同樣的應用和資料庫計算任務,改善關鍵大型應用的響應時間。同時,每台伺服器還承擔一些容錯任務,一旦某台伺服器出現故障時,系統可以在系統軟體的支持下,將這台伺服器與系統隔離,並通過各伺服器的負載轉嫁機制完成新的負載分配。PC伺服器中較為常見的是兩台伺服器的集群,UNIX系統可支持8台伺服器的集群系統,康柏的專用系統OpenVMS可支持多達96台伺服器的集群系統。
在集群系統中,所有的計算機擁有一個共同的名稱,集群內任一系統上運行的服務可被所有的網路客戶所使用。集群必須可以協調管理各分離組件的錯誤和失敗,並可透明的向集群中加入組件。用戶的公共數據被放置到了共享的磁碟櫃中,應用程序被安裝到了所有的伺服器上,也就是說,在集群上運行的應用需要在所有的伺服器上安裝一遍。當集群系統在正常運轉時,應用只在一台伺服器上運行,並且只有這台伺服器才能操縱該應用在共享磁碟柜上的數據區,其它的伺服器監控這台伺服器,只要這台伺服器上的應用停止運行(無論是硬體損壞、操作系統死機、應用軟體故障,還是人為誤操作造成的應用停止運行),其它的伺服器就會接管這台伺服器所運行的應用,並將共享磁碟柜上的相應數據區接管過來。其接管過程如下所示(以應用A為例):
1.應用A正常工作時;
2.應用A停止工作后,其它的備用伺服器將該應用接管過來。
具體接管過程分三部執行:
a.系統接管。
b.載入應用。
c.客戶端連接。
優勢
集群系統的優勢在於以下幾點:
解決人為失誤造成的應用系統停止工作
例如,當管理員對某台伺服器操作不當導致該伺服器停機,因此運行在這台伺服器上的應用系統也就停止了運行。由於集群是對應用進行監控,因此其它的相關伺服器就會接管這個應用。
不足之處
集群系統的不足之處在於:
集群中的應用只在一台伺服器上運行,如果這個應用出現故障,其它的某台伺服器會重新啟動這個應用,接管位於共享磁碟柜上的數據區,進而使應用重新正常運轉。我們知道整個應用的接管過程大體需要三個步驟:偵測並確認故障、後備伺服器重新啟動該應用、接管共享的數據區。因此在切換的過程中需要花費一定的時間,原則上根據應用的大小不同切換的時間也會不同,越大的應用切換的時間越長。
群技術
集群技術的出現和IA架構伺服器的快速發展為社會的需求提供了新的選擇。它價格低廉,易於使用和維護,而且採用集群技術可以構造超級計算機,其超強的處理能力可以取代價格昂貴的中大型機,為行業的高端應用開闢了新的方向。
集群技術是一種相對較新的技術,通過集群技術,可以在付出較低成本的情況下獲得在性能、可靠性、靈活性方面的相對較高的收益。
目前,在世界各地正在運行的超級計算機中,有許多都是採用集群技術來實現的。
集群是由一些互相連接在一起的計算機構成的一個并行或分散式系統。這些計算機一起工作並運行一系列共同的應用程序,同時,為用戶和應用程序提供單一的系統映射。從外部來看,它們僅僅是一個系統,對外提供統一的服務。集群內的計算機物理上通過電纜連接,程序上則通過集群軟體連接。這些連接允許計算機使用故障應急與負載平衡功能,而故障應急與負載平衡功能在單機上是不可能實現的。
伺服器集群系統通俗地講就是把多台伺服器通過快速通信鏈路連接起來,從外部看來,這些伺服器就像一台伺服器在工作,而對內來說,外面來的負載通過一定的機制動態地分配到這些節點機中去,從而達到超級伺服器才有的高性能、高可用。
集群的優點
高可伸縮性:伺服器集群具有很強的可伸縮性。隨著需求和負荷的增長,可以向集群系統添加更多的伺服器。在這樣的配置中,可以有多台伺服器執行相同的應用和資料庫操作。
高可用性:高可用性是指,在不需要操作者干預的情況下,防止系統發生故障或從故障中自動恢復的能力。通過把故障伺服器上的應用程序轉移到備份伺服器上運行,集群系統能夠把正常運行時間提高到大於99.9%,大大減少伺服器和應用程序的停機時間。
高可管理性:系統管理員可以從遠程管理一個、甚至一組集群,就好象在單機系統中一樣。

廣告

廣告