Cluster

Cluster

文件存取單位
簇(cluster),我們知道磁盤是由一個一個扇區組成的,若幹個扇區合為一個簇,文件存取是以簇為單位的,哪怕這個文件隻有1個字節。每個簇在文件分配表中都有對應的表項,簇号即為表項号,每個表項占1.5個字節(磁盤空間在10MB以下)或2個字節(磁盤空間在10MB以上)。
  • 中文名:簇
  • 外文名:cluster
  • 用途:

Cluster集群

一個計算機集群是指一組連接起來的電腦,它們共同工作對外界來說就像一個電腦一樣。集群一般由局域網連接,但也有例外。集群一般用于單個電腦無法完成的高性能計算,擁有較高的性價比。

baidu和google的後台服務器就是一個cluster

Cluster技術發展多年了,但其實并沒有一個非常準确的定義和分類,不同的人有不同的理解。

其實,叫什麼無所謂,隻要能夠對用戶有益就可以了。)

就個人理解而言,cluster有以下幾種,當然前面說過,不同的人有不同的理解,大家可以充分讨論。我的這些分類更偏重于工程而不是技術性。

HA集群

實現高可用性,但對單個應用性能沒有提高,市場上大部分産品都是屬于這類,技術上也較簡單。

IP負載均衡集群

利用IP技術實現對通用IP應用的支持。這種技術并不是很新,最早是在硬件上面采用的,Linux出現後才有了很多純軟件的模式,這也是open source帶來的好處吧

并行計算集群

包括了一些象PVM,beowulf這樣的信息傳遞機制和API庫,也有任務調度産品,當然技術上最難的是并行編譯/并行系統等更智能化的産品

應用負載均衡集群

雖然cluster的最高目的是實現真正的與應用程序無關的動态負載均衡,但由于技術上的限制,現在都隻能在特殊的應用中實現,需要修改應用程序,所以并沒有通用産品,大多是廠商有自己的并行版本。例如oracle paraller server.

以上基本是按照工程或者說産品的角度劃分的,和技術上劃分應該有一定區别。

媒體宣傳稿

随着Internet/Intranet應用的日益廣泛,計算機系統的重要性也日益上升。低故障率和高性能向來是人們追求的主要目标,但對于單台服務器來講,這兩個問題是無法解決的。l 可用性——很多服務器都宣稱已經達到了99%的可用性。這個數字意味着什麼呢?也就是說每年會有1%的非預計停機時間,讓我們來具體算一下。365(天 / 年)× 24(小時 / 天) × 1% = 87.6 (小時 / 年)。這每年87.6小時的停機時間對于要求24×7連續服務的企業來說簡直就是災難。

l 高性能——假設一般的桌面機每秒能夠處理幾千個請求,而IA服務器每秒能夠處理幾萬個請求。那麼對于需要每秒處理幾十萬個請求的企業來說,如果不采用集群技術,唯一的選擇就是購買更加高檔的中、小型計算機。如果這樣做,雖然系統性能隻提高了十倍,但其購買價格和維護費用就将會上升幾十倍甚至更多。

集群技術的出現和發展則很好的解決了這兩個問題。

集群

集群就是由一些互相連接在一起的計算機構成的一個并行或分布式系統,從外部來看,它們僅僅是一個系統,對外提供統一的服務。

集群技術本身有很多種分類,市場上的産品也很多,都沒有很标準的定義。一般可以分為以下幾種:

基于冗馀的集群

嚴格來講,這種冗馀系統并不能叫做真正的集群,因為它隻能夠提高系統的可用性,卻無法提高系統的整體性能。

有以下幾種類型。

A. 容錯機

特點是在一台機器内部對其所有的硬件部件都進行冗馀(包括硬盤、控制卡、總線、電源等等)。

能夠基本做到與軟件系統無關,而且可實現無縫切換,但價格極其昂貴。

典型市場産品:Compaq NonStop(Tandem)、Micron(NetFrame)、Straus

B. 基于系統鏡像的雙機系統

特點是利用雙機,将系統的數據和運行狀态(包括内存中的數據)進行鏡像,從而實現熱備份的目的。

能夠做到無縫切換,但因為采用軟件控制,占用系統資源較大,而且由于兩台機器需要完全一樣的配置,所以性能價格比太低。

典型市場産品:Novell SFT III、Marathon Endurance 4000 for NT

C. 基于系統切換的雙機系統

特點是利用雙機,将系統的數據(僅指硬盤數據)進行鏡像,在主機失效的情況下從機将進行系統一級的切換。

性能價格比适中,但無法實現無縫切換。

特點是當集群中的某個節點故障時,其它節點可以進行應用程序一級的切換,所以所有節點在正常狀态下都可以對外提供自己的服務,也被成為靜态的負載均衡方式。

性能價格比高,但也無法實現無縫切換,而且對單個應用程序本身無法做到負載均衡。

基于并行計算的集群

主要應用于科學計算、大任務量的計算等環境。有并行編譯、進程通訊、任務分發等多種實現方法。

典型市場産品:TurboLinux enFuzion,Beowulf,Supercomputer Architectures,Platform

基于動态負載均衡的集群

所有節點對外提供相同的服務,這樣可以實現對單個應用程序的負載均衡,而且同時提供了高可用性。

性能價格比極高,但目前無法支持數據庫。

典型市場産品:TurboCluster Server,Linux Virtual Server,F5 BigIP,Microsoft Windows NT Load Balance Service

負載均衡

負載均衡是提高系統性能的一種前沿技術。還是沿用前面的例子,一台IA服務器的處理能力是每秒幾萬個,顯然無法在一秒鐘内處理幾十萬個請求,但如果我們能夠有10台這樣的服務器組成一個系統,如果有辦法将所有的請求平均分配到所有的服務器,那麼這個系統就擁有了每秒處理幾十萬個請求的能力。這就是負載均衡的基本思想。

實際上,目前市場上有多家廠商的負載均衡産品。由于其應用的主要技術的不同,也就有着不同的特點和不同的性能。

輪詢DNS

輪詢DNS方案可以說是技術上最簡單也最直觀的一種方案。當然,這種方案隻能夠實現負載均衡的功能,卻無法實現對高可用性的保證。

它的原理是在DNS服務器中設定對同一個Internet主機名的多個IP地址的映射。這樣,在DNS收到查詢主機名的請求時,會循環的将所有對應的IP地址逐個返回。這樣,就能夠将不同的客戶端連接定位到不同的IP主機上,也就能夠實現比較簡單的負載均衡功能。但是,這種方案有兩個比較緻命的缺點:

隻能夠實現對基于Internet主機名請求的負載均衡,如果是直接基于IP地址的請求則無能為力。

在集群内有節點發生故障的情況下,DNS服務器仍會将這個節點的IP地址返回給查詢方,也就仍會不斷的有客戶請求試圖與已故障的節點建立連接。這種情況下,即使你手工修改DNS服務器的對應設置,将故障的IP地址删除,由于Internet上所有的DNS服務器都有緩存機制,仍會有成千上萬的客戶端連接不到集群,除非等到所有的DNS緩存都超時。

硬件解決方案

有些廠商提供對負載均衡的硬件解決方案,制造出帶有NAT(網絡地址轉換)功能的高檔路由器或交換機來實現負載均衡功能。NAT本身的原理就是實現多個私有IP地址對單個公共IP地址的轉換。代表産品是Cicso公司和Alteon公司的某些高檔硬件交換機系列。這種方案有如下缺點:

由于采用了特殊的硬件,使得整個系統中存在非工業标準部件,極大的影響系統的擴充和維護、升級工作。

價格極其昂貴,和軟件的解決方案根本是數量級上的差别。

一般隻能實現對節點系統一級的狀态檢查,無法細化到服務一級的檢查。

由于采用NAT機制,集群管理節點本身要完成的工作量很大,很容易成為整個系統的瓶頸。

此特殊硬件本身就是單一故障點。

實現異地節點的集群非常困難。

協商式處理(并行過濾)

這種方案的原理是客戶請求會同時被所有的節點所接收,然後所有節點按照一定的規則協商決定由哪個節點處理這個請求。此種方案中比較顯着的特點就是整個集群中沒有顯着的管理節點,所有決定由全體工作節點共同協商作出。代表産品是Microsoft公司的Microsoft Load Balancing Service這種方案的特點是:

l 由于各節點間要進行的通訊量太大,加重了網絡的負擔,一般需要增加節點通訊的專用網絡,也就加大了安裝和維護的難度和費用。

l 由于每個節點都要接收所有的客戶請求并進行分析,極大的加大了網絡驅動層的負擔,也就減低了節點本身的工作效率,同時也時網絡驅動層很容易成為節點系統的瓶頸。

l 由于要更改網絡驅動層的程序,所以并不是一個通用的方案,隻能夠實現對特殊平台的支持。

l 在小量節點的情況下協商的效率還可以接受,一旦節點數量增加,通訊和協商将變得異常複雜和低效,整個系統的性能會有非線性的大幅度下降。所以此類方案,一般在理論上也隻允許最多十幾個的節點。

l 無法實現異地節點的集群。

l 由于集群内沒有統一的管理者,所以可能出現混亂的異常現象。

流量分發

流量分發的原理是所有的用戶請求首先到達集群的管理節點,管理節點可以根據所有服務節點的處理能力和現狀來決定将這個請求分發給某個服務節點。當某個服務節點由于硬件或軟件原因故障時,管理節點能夠自動檢測到并停止向這個服務節點分發流量。這樣,既通過将流量分擔而增加了整個系統的性能和處理能力,又可以很好的提高系統的可用性。

通過将管理節點本身做一個子集群可以消除由于管理節點自身的單一性帶來的單一故障點。有些傳統技術人員認為,因為所有的客戶流量都将通過管理節點,所以管理節點很容易成為整個系統的瓶頸。但TurboCluster Server通過先進的直接路由或IP隧道轉發機制巧妙的解決了問題。使得所有對客戶響應的流量都由服務節點直接返回給客戶端,而并不需要再次通過管理節點。衆所周知,對于服務提供商而言,進入的流量要遠遠小于流出的流量,所以管理節點本身将不再是瓶頸。

流量分發的具體實現方法有直接路由、IP隧道和網絡地址轉換三種方法。TurboCluster Server目前支持效率最高的前兩種。由于這種先進的結構和技術,使得TurboCluster Server集群内的服務節點數并沒有上限,而且對大量節點的協同工作的效率也能夠非常好的保證。

市場前景

集群技術已經發展了多年,其中的分支也非常多。目前集群技術正逐漸走向分層結構,以後也肯定會有專門用戶前端、後端的集群産品出現。

随着計算機應用地位的逐漸提升,系統安全和重要性的日益增加,集群技術必将會有着極為廣闊的應用前景。

上一篇:CSS樣式

下一篇:Scanner

相關詞條

相關搜索

其它詞條