VCS基礎知識與概念

lenx2000發表於2010-10-20

VCS全稱VERITAS Cluster Server,顧名思義,就是起到叢集管理的功能。SymantecVCS整合在SFHA產品中,當然也可以單獨購買VCS,主要是一個HA的角色。

首先作一下廣告,為什麼選擇VCS,呵呵,有什麼好處呢。

(1)       首先當然是秉承VERITAS的產品的優良特性,跨硬體,跨平臺。支援主要廠商的硬體,各種UNIX, windows等,雖然有很多平臺,但是對於管理員來說只需要學會一套命令就可以了,很輕鬆的就可以成為VCS專家了,呵呵。當然也有基於java-GUI的很人性化的介面操作。

(2)       在一個cluster裡面做多可以支援32node,恩,這足夠了

(3)       支援各種主流的第三方儲存硬體環境,例如SCSI,ISCSI,NAS,SAN

(4)       提供了非常靈活的FAILOVER方式,111 對多,多對1,多對多。

(5)       支援動態的FAILOVER方式,就是可以根據cluster的情況動態的選擇目標機。

(6)       支援Service GroupFAILOVER,就是說可以支援很多臺有關聯的機器同時FAILOVER

(7)       透過agent提供了很好的擴充套件性,使用者可以簡單的開發出各種agent

(8)       具有很好的穩定性,高效能

廣告打玩了,下面簡要介紹一下VCS的技術,希望各位能夠對VCS有個技術上的認識,我們都是混這口飯的,由於保密原因,有些就不介紹了。

要搞懂VCS,需要對下列這些基本概念搞清楚:

ClustersResources and resource types Agents Service Groups Resource Dependencies Heartbeat

(1)     Cluser:

就是叢集,一個叢集就是一群機器來共享同一組硬體儲存裝置,VCS監控這所有機器上執行的程式,出現任何問題,就將它在另一臺機器上執行。一個叢集是透過同一個cluster-ID來識別的。這一組機器透過各種心跳線來保持通訊,詳細的內容在此不表,一個Cluster只能包含一種作業系統,原因很簡單,你不能把執行在AIX上的程式在SOLARIS上啟動阿。

(2)     Resources and resource types

資源包括硬體和軟體資源,例如硬碟,網路卡,資料庫,IP地址,程式等等各種概念,這些都可以被VCS控制,狀態基本就是兩種:ONLINEOFFLINEVCS的作用就是監控這些資源。資源的概念是邏輯的,例如,可以將IP地址和網路卡設成一個資源。

(3)     Agents

針對各種資源,可以開發各種AgentVCS就是透過Agent來控制各種資源,例如匯入資料庫,啟動等等各種操作。有個朋友說過一句”Agent的成熟度決定了一個產品的成熟度,呵呵,很有道理啊

(4)     Resource Dependencies

恩,任何東西都有依賴性,何況資源阿,例如啟動一個web服務資源,應該先把網路卡和IP啟動吧,如果網路卡資源有問題,這臺機器上所有的資源產不多都應高FAILOVER了,這就是依賴性。

(5)     Heartbeat

心跳,主流的保持叢集同步的方式,就看大家誰做的好了。VERITAS整個通訊基本都是自己寫的,主要包括LLT(LOW Latency Thansport)GAB (Group Membership and Atomic Broadcast)

 LLT依賴於MAC地址實現穩定的底層協議,GAB基於LLT,實現VCS資源的同步。關於LLTGAB有很多內容,這裡就不敘述了。

(6)     Splitbrian

恩,如果一個叢集由於網路原因被分成了2個和多個部分,資源該在哪些機器上啟動呢,這個問題涉及內容很多,以後再討論

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11134849/viewspace-676409/,如需轉載,請註明出處,否則將追究法律責任。