傳統HA系統的終結者
90年代末入行IT的時候正是HA大發展的時候,那時候還是雙機熱備的天下,我也有幸參與了某HA系統的開發工作,這也就是我這里所提到的傳統的HA系統。雖然今天各個主流的HA都成為集群系統,可以支持多個節點,但是雙機熱備仍是最主流的應用模式。隨著云計算時代的來臨,傳統基于操作系統的HA系統正在走向末路,云計算正成為傳統HA的終結者。
傳統HA系統的DNA就存在缺陷。HA系統本來是要解決軟硬件系統故障時應用的可用性問題,如果主節點出現故障,可以通過部署在備用機器上的應用來接管主節點的工作。這個基本邏輯沒有問題,并且看上去也很合理。但是因為傳統HA的構建模式和傳統的容災系統類似,只是容災系統往往距離比較遠,而HA系統就是本地放在一起的兩臺機器而已。因此,HA系統的心跳往往有更多選擇,并且更可靠。但就因為傳統HA的設計和容災類似,所以,管理的復雜性就不言而喻。
· 傳統的HA節點配置同步困難:即使采用常見的雙機配置,我們也要確保兩邊操作系統版本、配置的一致性、補丁一致性、兩邊相關軟件的版本、配置一致性等等,系統運維的復雜性驟升。兩節點的傳統HA系統配置同步都困難,更不用說多節點了。時至今日,多節點的HA(或稱為集群)系統基本都陷入“理論可行、運維人員頭疼、實際沒有幾個客戶采用”的尷尬。無論是微軟的MSCS、Symantec的VCS、IBM的HACMP等,都逃不出這個怪圈,因為這是傳統HA系統的DNA缺陷,根本不是后天可以彌補的。
· HA系統需要演練,傳統HA演練復雜導致幾乎沒有用戶進行演練:因為操作系統、應用配置都會不斷發生變更,這些變更可能會影響到HA系統的正常工作。為了驗證HA系統的工作情況,需要每次進行操作系統、應用等變更時都需要進行HA系統的演練,只有這樣才能確保發生故障時HA系統的正常工作。但是因為系統往往變更頻繁,如果每次變更都需要演練HA的話,運維的壓力會極為巨大,導致系統失去維護性。
· 傳統HA成本昂貴,只能針對“特權”應用來部署:因為維護的原因,幾乎所有的傳統HA都是雙機方式存在,導致傳統HA系統都需要配置完全相同的主備節點硬件資源,并且需要購買主備節點操作系統和應用軟件,導致系統軟硬件成本都同時加倍,而運維的復雜性不僅僅是加倍,甚至是3-4倍。這讓傳統的HA聽上去很美好,但是一般的應用都不能享受這個特權,只有十分關鍵的應用才能配備HA系統,傳統HA的貴族習性也因此被大量廣泛詬病。
云計算像一股旋風席卷了整個IT界,也在顛覆傳統IT的貴族習氣。傳統認為低端的x86服務器也開始支撐高端大氣上檔次的應用,原來只有大型用戶才能享用的數據中心級的可用性、可靠性,今天中小用戶也可以通過公有云租用,大型數據中心神秘的面紗已被揭開。傳統貴族氣十足的HA何去何從呢?
自從虛擬化的x86服務器顛覆了傳統小型機的霸主地位,一系列的革命性創新就無往不利,包括VMotion、DRS、DPM等。當然,傳統的HA也不在話下,通過在Hypervisor層提供HA的功能,讓傳統HA的桎梏瞬間打開。因為傳統的操作系統和應用全部運行在Hypervisor層之上,基于Hypervisor的HA可以完全獨立于操作系統和應用,無論多節點的集群還是簡單的雙機HA都不需要在操作系統層和應用層做復雜的配置,也無須購買多套應用軟件和操作系統,節約的不僅僅是購買操作系統和應用軟件的費用,也包括減少大量硬件資源的購置成本。HA系統從此走下神壇,中小型用戶都可以輕松擁有,并且便捷運維這個系統。傳統HA昂貴的培訓費用再也不需要了,只需要點兩三個按鈕就輕松完成原來需要半天才能完成復雜的HA配置工作,并且原來HA維護的復雜性也變成了系統的自我監控,因為原來需要的配置同步、演練等的流程全部可以取消。因為任何運行在HypervisorHA之上的應用都只有一個副本,根本不存在配置同步等的問題,也就無需演練這樣復雜的操作。另外,基于虛擬環境還可以輕松實現克隆、快照等系統的保護,在HA系統的基礎上進一步增強了系統的可用性。
當然,***代的HypervisorHA仍然是系統級的,不能檢測應用的故障,曾經被很多用戶詬病。為此,有些第三方的公司在Hypervisor上添加了自己的應用級HA模組,比如SymantecApplication HA的。不過可喜的是***版本的vSphere5.5,已經內嵌了應用支持代理,默認就可以支持各種常見的應用了,從而讓HypervisorHA完全具備了傳統HA的能力,而拋棄了傳統HA的貴族習氣。
隨云而生的HypervisorHA正茁壯成長,煥發出勃勃生機,以秋風掃落葉之勢,迅速占領關鍵應用的制高點。傳統HA系統已經完成了自己華麗的使命,可以壽終正寢了,即使你很念舊情,也不能阻擋HypervisorHA的來襲。就讓我們張開雙臂,熱情擁抱云計算時代的新寵HypervisorHA吧。
本文出自 “中國云夢” 博客,請務必保留此出處http://virtualman.blog.51cto.com/200540/1324649