擬化IDC的高可用和高可靠性解決方案 |
發布時間: 2012/9/16 1:05:02 |
為保證整個虛擬數據中心系統的安全可靠,本方案針對系統的核心部分,包括VDC運營管理平臺、虛擬計算管理平臺、數據庫系統等設計了高可靠和高可用方案,主要通過高可用集群和負載均衡集群來實現。
一、高可用集群
高可用集群簡稱HA群集,其主要技術特點是加入HA群集中主機處于主備工作模式狀態,通過資源監視器監控資源運行情況,致力于通過主備資源切換來實現主機系統的高可用性。
在HA群集系統中,所有的應用程序、數據文件、磁盤、網絡IP地址等都可被抽象為資源,資源可以組成一個資源組,它是HA群集系統可以進行故障切換的最小單元。資源的存在可以分為五種狀態:
l Offline,資源不能被別的資源或者客戶機使用;
l Offline Pending,資源正處于Offline的過程中;
l Online,資源處于可用的狀態;
l Online Pending,資源正處于Online的過程中;
l Failed,資源出現了無法解決的問題。
HA群集服務用依賴性來定義不同資源彼此之間的關系,根據資源間的相互依賴關系來決定把這些資源變為在線或者是離線的順序。
HA群集服務會啟動一個資源監視器來監視節點中的全部資源,所有的資源都處于資源監視器的監視之下,資源監視器與資源進行通信,偵測對應資源的狀態,監視器再把信息提供給群集服務。資源監視器會發送狀態信息的請求檢查資源是不是可用,一般會有兩種級別的檢查:LooksAlive和IsAlive。LooksAlive級別的檢查相對比較簡單,每隔一段時間(相對比較短的時間,一般是5秒),資源監視器會進行一次LooksAlive級別的檢查,如果資源沒有響應,監視器會向群集服務報告。IsAlive級別的檢查是非常完整的檢查,它會徹底檢查資源是不是工作正常,IsAlive檢查的時間間隔比LooksAlive要長,一般是1分鐘。
故障切換(Failover)是指把出現故障的節點上的資源重新定位到另一個可用的節點上。負責監視資源的資源監視器一旦發現資源出現故障,它就會通知群集服務,群集服務會根據事前定義好的策略觸發對應的事件。雖然發現的是個別資源的故障,但是群集還是會把整個資源組進行故障切換。
故障切換會在三種不同的情況下發生:人工(一般是因為管理員的請求)、自動或者在特定的時間(由群集管理軟件設定)。自動故障切換又包含了三個階段:故障發現、資源重新定位和重新啟動應用程序(一般是故障切換過程中最耗費時間的)。當達到資源組的故障切換閥值時,自動的故障切換才會發生,閥值是可以設定的,一般由管理員來設定。
故障恢復(Failback)是一種故障切換的特例,是指發生故障切換之后,把部分或者全部資源組移回它們首選的節點的過程。首選的節點就是指群集中指定的運行資源組的道選的節點,如果是多個節點的高可用性方案,就會有多個首選的節點。當首選的節點出現故障后,對應的資源組就切換到另外的可用節點上,當出現故障的節點恢復正常后,資源組可以自動的切換回首選節點。如果沒有定義首選節點,資源組就不會自動切換回來。
高可用性實現過程如下:資源監視器根據設定的時間間隔對資源進行LookAlive和IsAlive兩種級別的檢查,一旦發現某一個資源不可用,就會試圖重新啟動該資源。根據閥值的設定,如果在某一時間段內,資源不可用的情況達到了設定的閥值時,就會發生故障切換。經過故障切換的過程,對應的資源組在另外一個節點上重新啟動了,繼續為客戶提供服務,對客戶來說工作沒有影響,這就完成了一次故障切換。當出現故障的節點恢復正常以后,如果事先對該資源組設定了首選節點,就會把該資源組移回該首選節點。
二、負載均衡集群
負載均衡集群簡稱LB群集,其主要技術特點是加入負載均衡集群中的所有節點都處于活動狀態,使用負載均衡的軟件或硬件設備來實現負載的動態調度和合理分攤,致力于通過來多主機節點負載均衡集群架構實現主機系統靈活伸縮性和高可靠性。
Web服務器群集和應用服務器群集推薦主要使用負載均衡集群來提升其服務的可靠性和靈活的動態擴展性。
在負載均衡群集的設計中,系統拓撲一般被設計為對稱結構。在對稱結構中每臺服務器都具備等價的地位,都可以單獨對外提供服務。通過負載算法,分配設備將外部發送來的請求均勻分配到對稱結構中的每臺服務器上,接收到連接請求的服務器都獨立回應客戶的請求。
負載均衡群集系統使應用程序處理負載或網絡流量負載可以在主機群集中盡可能平均地分攤處理,非常適合于運行同一組應用程序的大量用戶。每個節點都可以處理一部分負載,并且可以在節點之間動態分配負載,以實現平衡。對于網絡流量也如此。通常,WEB服務器或者應用服務器接受了太多的入網流量,以致無法迅速處理,這就需要將流量發送給在其它節點上運行的服務器,還可以根據每個節點上不同的可用資源或網絡的特殊環境來進行優化。
負載均衡建立在現有網絡結構之上,它提供了一種廉價有效的方法來擴展服務器帶寬,增加吞吐量,提高數據處理能力,同時又可以避免單點故障。負載均衡的作用就像輪流值日制度,把任務分給大家來完成,以免讓一個人過度勞累。但是與輪流值日制度不同的是,負載均衡是一種動態均衡,它通過一些工具實時地分析數據包,掌握網絡中的數據流量狀況,把任務分配出去。對于不同的應用環境,使用的均衡策略算法是不同的。均衡策略算法有多種多樣的形式,廣義上的負載均衡既可以設置專門的網關、負載均衡器,也可以通過一些專用軟件與協議來實現。在OSI七層協議模型中的第二(數據鏈路層)、第三(網絡層)、第四(傳輸層)、第七層(應用層)都有相應的負載均衡策略(算法),在數據鏈路層上實現負載均衡的原理是根據數據包的目的MAC地址選擇不同的路徑;在網絡層上可利用基于IP地址的分配方式將數據流疏通到多個節點;而傳輸層和應用層的交換(Switch),本身便是一種基于訪問流量的控制方式,能夠實現負載均衡。
負載均衡群集是帶均衡策略算法的主機群集。負載均衡群集在多節點之間按照一定的策略分發網絡或計算處理負載。目前均衡算法主要有三種:輪循(Round-Robin)、最小連接數(Least Connections First)和快速響應優先(Faster Response Precedence)。輪循算法就是將來自網絡的請求依次分配給群集中的服務器進行處理。最小連接數算法就是為群集中的每臺服務器設置一個記數器,記錄每個服務器當前的連接數,負載均衡系統總是選擇當前連接數最少的服務器分配任務。這要比"輪循算法"好很多,因為在有些場合中,簡單的輪循不能判斷哪個服務器的負載更低,也許新的工作又被分配給了一個已經很忙的服務器了。快速響應優先算法是根據群集中的服務器狀態(CPU、內存等主要處理部分)來分配任務。 這一點很難做到,事實上到目前為止,采用這個算法的負載均衡系統還很少。尤其對于硬件負載均衡設備來說,只能在TCP/IP協議方面做工作,幾乎不可能深入到服務器的處理系統中進行監測。但是它是未來發展的方向。
負載均衡群集有如下特點:
l 高性能
一個服務器群集系統由多臺服務器組成,對外部而言,整個群集就如同一臺高性能服務器。以WEB服務器為例,系統只有一個對外的網絡地址(主機名或IP地址),所有的HTTP請求都發到這個地址上。系統中有專門的機制能夠將這些請求按照一定原則分發到群集中的各臺服務器上,讓它們各自分擔一部分工作。
l 可擴展性
它是采用同樣的方法或技術高效率地支持較大規模系統的能力。負載均衡服務器群集系統的組成結構和工作原理決定了它能夠比較容易地達到較好的可擴展性,因為擴大系統規模非常容易,只要在網絡中增加新的服務器計算機即可。
l 高可用性
由于負載均衡服務器群集系統中各臺服務器之間相對獨立,采用一些不太復雜的技術就能使服務器群集系統達到很高的可用性。
三、數據庫集群系統
VDC運營管理平臺需要一年365天、每周7天、每天24小時在線開展業務。如果重要的應用系統、服務器或數據不可用,就有可能導致收入損失、客戶不滿意、罰款以及負面報道將對企業聲譽產生持久的影響。
為確保整個虛擬數據中心業務平臺的正常運行,本方案里面主要從以下兩個方面來保障數據庫系統的高可靠性和高可用性。
首先,在整個系統里面部署兩臺數據庫服務器,每臺數據庫服務器上部署安裝HA軟件,一臺數據庫服務器作為主服務器,另一臺數據庫服務器作為備服務器,數據庫的數據統一存放在共享存儲上。日常運營中,兩臺數據庫服務器同時運行,但是同時只有一臺數據庫服務器對外提供服務。當一臺服務器出現故障時,高可用軟件只需2-3秒即可檢測到故障,并將數據庫服務從失效的節點遷移到備份節點,確保業務系統的正常運營。
其次,數據庫數據的備份主要分為三種類型:冷備份、熱備份和邏輯備份。
Cold Backup(冷備份) 主要指在關閉數據庫的狀態下進行的數據庫完全備份,備份內容包括所有數據文件、控制文件、聯機日志文件、ini文件。
Hot Backup(熱備份) 指在數據庫處于運行狀態下,對數據文件和控制文件進行備份,要使用熱備份必須將數據庫運行在(Archive Log)歸檔方式下。
Export(邏輯備份)這是最簡單的備份方法,可按數據庫中某個表、某個用戶或整個數據庫來導出,并且支持全部、累計、增量三種方式。使用這種方法,數據庫必須處于打開狀態,而且如果數據庫不是在restrict狀態將不能保證導出數據的一致性。
數據備份首先應該制定合理的備份策略方案,本方案數據庫備份采用全備份、部分備份和增量備份。備份周期為每天增量備份、每周以及每月一次的全備份等。備份介質可以是磁帶庫、光盤或者是其他離線存儲。
四、VDC運營管理平臺的高可靠性和高可用性
VDC運營管理平臺負責對外提供虛擬計算業務,管理和調度四個城市的計算和存儲資源,是整個虛擬數據中心項目的核心系統。VDC運營管理平臺主要通過硬件負載均衡來保證高可靠性和高可用性。
正常運營時,同時會有多臺物理服務器運行VDC運營管理平臺,硬件負載均衡設備放置在VDC運營管理平臺服務器前面。負載均衡設備會按照后臺服務器的實際負載情況,將客戶請求均勻分發到不同的運營管理平臺服務器。如果客戶訪問量增加,運營管理平臺負載較大時,可以隨時通過添加新的運營平臺服務器來分擔系統負載。
通過硬件負載均衡設備不僅可以大大提升整個VDC運營管理平臺的可靠性和可用性,同時也讓整個系統具有良好的可擴展性和靈活性。
五、虛擬計算管理平臺的高可靠性和高可用性
虛擬計算管理平臺部署在各個省份公司,負責物理資源的虛擬化管理和調度。虛擬計算管理平臺主要包含了節點控制器、集群控制器和運行虛擬機的物理節點。為保證整個虛擬計算管理平臺的正常運營,本方案針對上述三個部分制定了相應的高可靠性和可用性方案。
虛擬計算管理平臺對內負責每個數據中心集群的管理和調度,對外負責和上層VDC運營管理平臺對接,具有承上啟下的重要作用。每個數據中心采用兩臺云控制節點,應用數據存放在共享存儲。云控制服務通過HA軟件來實現高可用性。當一臺云控制節點出現故障時,HA軟件能在1-2秒內檢測到故障,并切換節點控制器服務到另一個正常物理節點。云控制節點和集群節點的交互是通過異步加密WebService服務來實現的,當云控制節點出現故障切換時,不會影響到集群節點和其它物理節點的正常運行。故障切換完畢后,集群控制節點會將最新的信息反饋到云控制節點。
集群控制節點主要負責對運行虛擬機的物理服務器進行管理和調度,同時反饋相關信息給上層云控制節點,所有信息的交換都是通過異步加密WebService方式來實現。每個集群可以采用兩臺集群控制節點,集群數據存放在共享存儲。集群服務通過HA軟件來實現高可用性。當一臺集群控制節點出現故障時,HA軟件能在1-2秒內檢測到故障,并切換集群服務到另一個正常物理節點。集群控制節點管理的信息主要來自各個物理服務器節點,并通過定期詢查的模式獲取。當集群控制節點出現故障時,上層云控制節點會短暫無法獲取此集群信息,但是當集群服務切換完畢后,集群服務會自動更新最新信息給上層云控制節點,不會影響到上層云控制節點的正常運行。當集群服務出現故障時,會暫時失去和運行虛擬機的物理服務器的聯系,但是不會影響虛擬機和運行虛擬機的服務器,客戶依然可以通過虛擬機的IP地址連接到具體的虛擬機,當集群服務切換完畢后,物理服務器會自動更新最新的信息給集群控制節點。
物理控制節點主要用來運行虛擬機,并反饋每臺物理服務器的信息給上層集群控制節點。如果物理控制節點出現故障,會直接影響到客戶虛擬機的運行。為了避免物理服務器的單點故障,在所有集群內的物理服務器上需要安裝高可用性軟件,所有物理服務器連接到共享存儲,虛擬機的鏡像文件統一存放在共享存儲上。當物理服務器出現故障時,HA軟件可以將故障服務器上的虛擬機切換到在其他物理服務器上,并自動啟動,為所有虛擬機提供高可用性功能。
云控制節點、集群控制節點、物理控制節點和虛擬機鏡像文件都存放在共享存儲上。為了保證這些系統的高可靠性,云控制節點、集群控制節點和物理控制節點的數據需要每周全面備份一次,每天增量備份一次,確保數據的可靠性。虛擬機鏡像文件通常都在10G以上,文件較大,需要每月全面備份一次,每天增量備份一次,確保用戶數據的可靠性。
通過采用高可用性軟件和重要數據的定期備份,可以確保整個虛擬計算管理平臺的高可靠性和高可用性。不管是出現極端硬件損壞情況,或者是軟件故障,整個系統都能以最快的速度恢復,并保證用戶數據的安全性和完整性。
億恩-天使(QQ:530997) 電話 037160135991 服務器租用,托管歡迎咨詢。 本文出自:億恩科技【www.vbseamall.com】 |