雙機熱備基礎知識大講解

      雙機熱備就是使用互爲備份的兩臺服務器共同執行同一服務,爲大家介紹一下什麼是雙機熱備?、什麼情況下需要採用雙機熱備? 雙機熱備方案與集羣的區別?

一、 雙機備份和集羣的原理與比較

什麼是雙機熱備?

        所謂雙機熱備就是使用互爲備份的兩臺服務器共同執行同一服務,其中一臺主機爲工作機(Primary Server),另一臺主機爲備份機(Standby Server)。在系統正常情況下,工作機爲應用系統提供服務,備份機監視工作機的運行情況(工作機同時也在檢測備份機是否正常),當工作機出現異常,不能支持應用系統運營時,備份機主動接管工作機的工作,繼續支持關鍵應用服務,保證系統不間斷的運行。

什麼情況下需要採用雙機熱備?

        用戶可以根據系統的重要性以及終端用戶對服務中斷的容忍程度決定是否使用雙機熱備。比如網絡中的用戶最多能容忍多長時間恢復服務?如果服務不能很快恢復會造成什麼樣的後果等。對於承擔企業關鍵業務應用的服務器需要極高的穩定性和可用性,需要7×24不間斷服務,推薦使用雙機熱備。

 我已經有了RAID,以及磁帶備份,還有必要做雙機嗎?或者,如果我做了雙機備份,還有必要做磁帶備份嗎?

        RAID和數據備份都是很重要的。但RAID技術只能解決硬盤的問題,備份只能解決系統出現問題後的恢復。而一旦服務器本身出現問題,不論是設備的硬件問題還是軟件系統的問題,都會造成服務的中斷。因此,RAID及數據備份技術不能避免服務中斷出現,對於需要持續可靠地提供應用服務的系統,雙機還是非常必要的。 數據備份是保障數據安全性的必不可少的措施。因爲不論RAID還是雙機,都是一種實時的備份。任何軟件錯誤、病毒影響、誤操作等等,都會同步地在多份數據中發生影響。因此,對於關鍵業務即使採用了雙機方案也還是一定要進行數據的備份,以便能在數據損壞、丟失時進行恢復。

如何選擇與實施雙機熱備的配置方案?

        以應用爲主導,以高可用性爲宗旨,分析需求的必要性; 2. 選擇確定具體的設備、軟件的型號等。需要注意的是: 不同的軟件或是硬盤等存儲設備,他們之間存在兼容性的問題,因此在購買之前應諮詢專業人員,避免出現採購了雙機軟件後對相關的存儲設備存在不兼容等現象。 3.在實施完成後,一定要進行測試,以確保工作正常,而且應注意在運行過程中定期的對系統是否能夠正常切換進行測試。

集羣的概念

       集羣是oracle高可用性產品設計的核心,使得oracle在出現問題時可以從一個節點切換到另外一個節點。RAC採用了共享磁盤類型的集羣,允許所有羣集中節點同時訪問數據。任何時刻都有一組數據文件可以供所有節點訪問。RAC的最終目標是提供高度的可管理性,和同單個計算機上運行單個oracle數據庫實例。Oracle能自動在集羣的多個節點之間平衡負載。

雙機熱備方案與集羣的區別?

      答:從概念上來講,雙機熱備屬於集羣中的一種。集羣一般包括兩類:一類是純應用服務器的集羣,即各個應用服務器都訪問統一的數據庫服務器,但彼些 並不需要文件共享存儲等,這種集羣是比較簡單的。另一類是數據庫服務器的雙機熱備,這種雙機熱備實現,一般是兩臺服務器同時使用共享的存儲設備,並且在普 遍的情況下,均採取主、備的方式(也有高端的系統採用並行的方式,即兩臺服務器同時提供服務)。

常見問題與方案選擇

       對於企業重要的應用系統而言,保證系統能持續、可靠地提供服務是非常重要的,因此就出現了對高可用性的需求和高可用性的解決方案。

對於如何選擇高可用性的解決方案,特別是關於雙機熱備的方案選擇,常見的有以下問題:

Q:已經採取了RAID技術和數據備份技術,還有必要做雙機嗎?

A:參見:雙機熱備與數據備份及RAID的關係

Q:高可用性的解決方案有哪些?

A:從廣義講,高可用性包括一切避免系統服務中斷的技術。而一般所說的系統高可用性,往往特指服務器的雙機或多機熱備/容錯。

Q:什麼時候需要雙機熱備?

A:決定是否使用雙機熱備,正確的方法是要分析一下系統的重要性以及對服務中斷的容忍程度,以此決定是否使用雙機熱備。即,你的用戶能容忍多長時間恢復服務,如果服務不能恢復會造成多大的影響。

Q:雙機熱備、雙機互備與雙機雙工三個概念都是什麼意思?有什麼區別?

A:參見:雙機熱備、雙機互備與雙機雙工的區別

Q:雙機熱備方案與集羣的區別?

A:從概念上,雙機熱備是集羣(Cluster)的一種。集羣一般包括兩類,一類是純粹應用服務器的集羣,各個應用服務器都訪問統一的數據庫服務 器,但彼些並不需要共享存儲,這種集羣是比較簡單的,往往採取各個服務器同時提供服務的方式,並且往往同時採用負載均衡技術。有關應用服務的集羣,請參 見:談Web服務器和應用服務器的負載均衡

       另一類是數據庫服務器(或其他需要訪問存儲數據的系統如Exchange、Notes)的集羣。集羣可能包括多臺服務器。集羣軟件除了支持雙機工作外,還可以支持多臺服務器(Multi Node)工作,同時部署多個應用,並在多個服務器間靈活地設置接管策略。請參見:雙機、集羣的配置模式-主從、互備、多點集羣 雙機軟件與集羣軟件的異同

Q:數據庫服務的高可用性有幾種方式?

A:最簡單的,是採用備機的方式。這其實不屬於高可用性的範圍,但可以將出現故障後恢復服務的時間控制在幾十分鐘的量級,而且備機平時還可用作其他 用途。這種方式是一種低成本的簡單方案,對於不是非常重要的應用比較適合。它不適用於重要應用,但是除非你的應用停上幾天都無所謂,否則至少要有這一級別 的保護措施。

        第二種是通過軟件方式實現雙機熱備。即不採用共享的存儲設備,而是數據不再單點存儲,本機數據可以向多臺主機做實時的數據複製。這種方式的優點是節 省了昂貴的存儲設備投資。缺點是或者會產生數據的差異,或者會影響數據庫的速度。比如,如果在服務中斷時切換到備機,則可能有少量已經在主機完成的事務在 備機上尚未實現。而與備份數據的恢復不同,備機啓動後,後續的操作已經進行,因此丟失的事務就很難補上。因此,這種方式適用於對於丟失少量數據不是非常敏感的系統。

        有關這種方式的深入探討,可參見:鏡像與HA-數據庫雙機熱備的兩種方式

        第三種是基於共享存儲設備和雙機軟件實現雙機熱備。這是標準的方法,能夠在無人值守的情況下提供秒級的切換,並且不會丟失數據。當然,投資會比較高。

Q:數據庫雙機熱備時,雙機是同時工作嗎?

A:在一般的中小規模應用中,數據庫的雙機熱備都是主/備方式,主服務器工作時另一臺等待,在主服務器出現故障時藉助雙機軟件自動切換至另一臺服務 器。而有些大規模應用爲充分利用設備,可以採用並行服務的方式,兩臺服務器同時提供服務,如Oracle的RAC(Oracle Real Application Cluster),以及支持SQL Server並行服務的數據庫路由器軟件ICX

Q:如何選擇與實施系統高可用性方案?

A:參見:如何選擇與實施系統高可用性方案?

雙機熱備與數據備份的關係

       一些用戶在規劃雙機熱備或雙機備份時,會有這樣的問題:我已經有了RAID,以及磁帶備份,還有必須做雙機嗎?或者,如果我做了雙機備份,還有必要做磁帶備份嗎?

       應該說RAID和數據備份都是很重要的。但是,RAID技術只能解決硬盤的問題,備份只能解決系統出現問題後的恢復。而一旦服務器本身出現問題, 不論是設備的硬件問題還是軟件系統的問題,都會造成服務的中斷。因此,RAID及數據備份技術不能解決避免服務中斷的問題。對於需要持續可靠地提供應用服 務的系統,雙機還是非常重要的。只要想一想,如果你的服務器壞了,你要用多少時間將其恢復到能正常工作,你的用戶能容忍多長的恢復時間就能理解雙機的重要 性了。

       從另外一個方面,RAID以及磁帶備份也是非常需要的。對於RAID而言,可以以很低的成本大大提高系統的可靠性,而且其複雜程度遠遠低於雙機。 因爲畢竟硬盤是系統中機械操作最頻繁、易損率最高的部件,如果採用RAID,就可以使出現故障的系統很容易修復,也減少服務器停機進行切換的次數。

數據備份更是必不可少的措施。因爲不論RAID還是雙機,都是一種實時的備份。任何軟件錯誤、病毒影響、誤操作等等,都會同步地在多份數據中發生 影響。因此,一定要進行數據的備份(不論採取什麼介質,都建議用戶至少要有一份脫機的備份),以便能在數據損壞、丟失時進行恢復。

雙機熱備、雙機互備與雙機雙工的區別

       雙機熱備即是目前通常所說的active/standby方式,服務器數據包括數據庫數據同時往兩臺或多臺服務器寫,或者使用一個共享的存儲設備。當 active服務器出現故障的時候,通過軟件診測(一般是通過心跳診斷)將standby機器激活,保證應用在短時間內完全恢復正常使用。

       雙機互備,在雙機熱備的基礎上,兩個相對獨立的應用在兩臺機器同時運行,但彼此均設爲備機,當某一臺服務器出現故障時,另一臺服務器可以在短時間內將故 障服務器的應用接管過來,從而保證了應用的持續性。這種方式實際上是雙機熱備的一種應用。它避免了兩個應用使用四臺服務器分別實現雙機熱備。

       雙機雙工,兩臺或多臺服務器均爲活動,同時運行相同的應用,保證整體的性能,也實現了負載均衡和互爲備份。需要利用磁盤櫃存儲技術(最好採用san)。對於數據庫服務而言,它同時需要數據庫軟件的支持,是比較複雜的。而WEB服務器或應用服務器就比較簡單了,可參見:談Web服務器和應用服務器的負載均衡

雙機軟件與集羣軟件的異同

       在雙機熱備應用方面,有兩大類軟件產品。一類是雙機軟件(HA),另一類則稱作集羣軟件(Cluster)。這兩類軟件的異同在什麼地方呢?

       它們都是爲實現系統的高可用性服務的,都解決了一臺服務器出現故障時,由其他服務器接管應用,從而持續可靠地提供服務的問題。

它們都是通過心跳技術在進行系統檢測。

       但是,雙機軟件只能支持兩臺服務器以主從方式或互備方式工作。而集羣軟件除了支持雙機工作外,還可以支持多臺服務器(Multi Node)工作,同時部署多個應用,並在多個服務器間靈活地設置接管策略。

      在兩種情況下需要使用集羣軟件:一是有超過兩個應用,本身就需要部署三臺或更多的服務器。二是隻有兩個應用,但每個應用的負載均較大,不宜採用雙機互備的方式,而是需要由第三臺服務器來作爲這兩個應用的備機。

一般地講,集羣軟件具有更多的技術含量,具備更高的可靠性。同時,往往價格(平均到每臺服務器)也高於雙機軟件。

       在選擇產品時,應根據應用的實際情況來確定。最理想的方式,則是在應用數量少、負載不是很大時先使用雙機軟件,然後在應用數量增多、負載增大時平滑過渡到集羣軟件。

From:http://tech.watchstor.com/backup-and-archiving-120603.htm

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章