什么是雙機熱備?
所謂雙機熱備,就是將中心服務器安裝成互為備份的兩臺服務器,并且在同一時間內只有一臺服務器運行。當其中運行著的一臺服務器出現故障無法啟動時,另一臺備份服務器會迅速的自動啟動并運行(一般為2分鐘左右),從而保證整個網絡系統的正常運行!雙機熱備的工作機制實際上是為整個網絡系統的中心服務器提供了一種故障自動恢復能力。
什么時候需要雙機熱備?
這個問題其實比較簡單,一般服務器要長年累月的工作,其備份工作就絕對少不了。所以,決定是否使用雙機熱備,筆者覺得應首先對系統的重要性,以及終端用戶對服務中斷的容忍程度進行考慮,然后再來決定是否使用雙機熱備。比如網絡中的用戶最多能容忍多長時間恢復服務?如果服務不能很快恢復會造成什么樣的后果等等。
什么是集群系統?
現在的計算機社會中,持續的提供不停止的服務已經成為通往成功的關鍵。例如僅由于 1臺機器故障或超負荷而宕機就導致對客戶的服務全面停止。這樣的話,不但會帶來莫大的損失,還會失去客戶的信任。
存儲軟件:一是有超過兩個應用,本身就需要部署三臺或更多的服務器。二是只有兩個應用,但每個應用的負載均較大,不宜采用雙機互備的方式,而是需要由第三臺服務器來作為這兩個應用的備機。
一般地講,集群存儲軟件具有更多的技術含量,具備更高的可靠性。同時,往往價格(平均到每臺服務器)也高于雙機軟件。
在選擇產品時,應根據應用的實際情況來確定。最理想的方式,則是在應用數量少、負載不是很大時先使用雙機軟件,然后在應用數量增多、負載增大時平滑過渡到集群存儲軟件。
雙機備份和集群的原理與比較
雙機熱備原理
雙機熱備用戶可以根據系統的重要性以及終端用戶對服務中斷的容忍程度決定是否使用雙機熱備。比如網絡中的用戶最多能容忍多長時間恢復服務?如果服務不能很快恢復會造成什么樣的后果等。對于承擔企業關鍵業務應用的服務器需要極高的穩定性和可用性,需要7×24不間斷服務,推薦使用雙機熱備。
我已經有了RAID,以及磁帶備份,還有必要做雙機嗎?或者,如果我做了雙機備份,還有必要做磁帶備份嗎?
RAID和數據備份都是很重要的。但RAID技術只能解決硬盤的問題,備份只能解決系統出現問題后的恢復。而一旦服務器本身出現問題,不論是設備的硬件問題還是軟件系統的問題,都會造成服務的中斷。因此,RAID及數據備份技術不能避免服務中斷出現,對于需要持續可靠地提供應用服務的系統,雙機還是非常必要的。數據備份是保障數據安全性的必不可少的措施。因為不論RAID還是雙機,都是一種實時的備份。任何軟件錯誤、病毒影響、誤操作等等,都會同步地在多份數據中發生影響。因此,對于關鍵業務即使采用了雙機方案也還是一定要進行數據的備份,以便能在數據損壞、丟失時進行恢復。 如何選擇與實施雙機熱備的配置方案?
以應用為主導,以高可用性為宗旨,分析需求的必要性; 2. 選擇確定具體的設備、軟件的型號等。需要注意的是: 不同的軟件或是硬盤等存儲設備,他們之間存在兼容性的問題,因此在購買之前應咨詢專業人員,避免出現采購了雙機軟件后對相關的存儲設備存在不兼容等現象。 3.在實施完成后,一定要進行測試,以確保工作正常,而且應注意在運行過程中定期的對系統是否能夠正常切換進行測試。 集群的概念
集群是oracle高可用性產品設計的核心,使得oracle在出現問題時可以從一個節點切換到另外一個節點。RAC采用了共享磁盤類型的集群,允許所有群集中節點同時訪問數據。任何時刻都有一組數據文件可以供所有節點訪問。RAC的最終目標是提供高度的可管理性,和同單個計算機上運行單個oracle數據庫實例。Oracle能自動在集群的多個節點之間平衡負載。
雙機熱備方案與集群的區別?
答:從概念上來講,雙機熱備屬于集群中的一種。集群一般包括兩類:一類是純應用服務器的集群,即各個應用服務器都訪問統一的數據庫服務器,但彼些并不需要文件共享存儲等,這種集群是比較簡單的。另一類是數據庫服務器的雙機熱備,這種雙機熱備實現,一般是兩臺服務器同時使用共享的存儲設備,并且在普遍的情況下,均采取主、備的方式(也有高端的系統采用并行的方式,即兩臺服務器同時提供服務)。 常見問題與方案選擇
對于企業重要的應用系統而言,保證系統能持續、可靠地提供服務是非常重要的,因此就出現了對高可用性的需求和高可用性的解決方案。
雙機熱備與數據備份的關系
一些用戶在規劃雙機熱備或雙機備份時,會有這樣的問題:我已經有了RAID,以及磁帶備份,還有必須做雙機嗎?或者,如果我做了雙機備份,還有必要做磁帶備份嗎?
應該說RAID和數據備份都是很重要的。但是,RAID技術只能解決硬盤的問題,備份只能解決系統出現問題后的恢復。而一旦服務器本身出現問題,不論是設備的硬件問題還是軟件系統的問題,都會造成服務的中斷。因此,RAID及數據備份技術不能解決避免服務中斷的問題。對于需要持續可靠地提供應用服務的系統,雙機還是非常重要的。只要想一想,如果你的服務器壞了,你要用多少時間將其恢復到能正常工作,你的用戶能容忍多長的恢復時間就能理解雙機的重要性了。
從另外一個方面,RAID以及磁帶備份也是非常需要的。對于RAID而言,可以以很低的成本大大提高系統的可靠性,而且其復雜程度遠遠低于雙機。因為畢竟硬盤是系統中機械操作最頻繁、易損率最高的部件,如果采用RAID,就可以使出現故障的系統很容易修復,也減少服務器停機進行切換的次數。
數據備份更是必不可少的措施。因為不論RAID還是雙機,都是一種實時的備份。任何軟件錯誤、病毒影響、誤操作等等,都會同步地在多份數據中發生影響。因此,一定要進行數據的備份(不論采取什么介質,都建議用戶至少要有一份脫機的備份),以便能在數據損壞、丟失時進行恢復。
雙機熱備、雙機互備與雙機雙工的區別
雙機熱備即是目前通常所說的active/standby方式,服務器數據包括數據庫數據同時往兩臺或多臺服務器寫,或者使用一個共享的存儲設備。當 active服務器出現故障的時候,通過軟件診測(一般是通過心跳診斷)將standby機器激活,保證應用在短時間內完全恢復正常使用。 雙機互備,在雙機熱備的基礎上,兩個相對獨立的應用在兩臺機器同時運行,但彼此均設為備機,當某一臺服務器出現故障時,另一臺服務器可以在短時間內將故障服務器的應用接管過來,從而保證了應用的持續性。這種方式實際上是雙機熱備的一種應用。它避免了兩個應用使用四臺服務器分別實現雙機熱備。
雙機雙工,兩臺或多臺服務器均為活動,同時運行相同的應用,保證整體的性能,也實現了負載均衡和互為備份。需要利用磁盤柜存儲技術(最好采用san)。對于數據庫服務而言,它同時需要數據庫軟件的支持,是比較復雜的。而WEB服務器或應用服務器就比較簡單了,可參見:談Web服務器和應用服務器的負載均衡。 雙機軟件與集群軟件的異同
在雙機熱備應用方面,有兩大類軟件產品。一類是雙機軟件(HA),另一類則稱作集群軟件(Cluster)。這兩類軟件的異同在什么地方呢?
它們都是為實現系統的高可用性服務的,都解決了一臺服務器出現故障時,由其他服務器接管應用,從而持續可靠地提供服務的問題。 它們都是通過心跳技術在進行系統檢測
但是,雙機軟件只能支持兩臺服務器以主從方式或互備方式工作。而集群軟件除了支持雙機工作外,還可以支持多臺服務器(Multi Node)工作,同時部署多個應用,并在多個服務器間靈活地設置接管策略。
在兩種情況下需要使用集群軟件:一是有超過兩個應用,本身就需要部署三臺或更多的服務器。二是只有兩個應用,但每個應用的負載均較大,不宜采用雙機互備的方式,而是需要由第三臺服務器來作為這兩個應用的備機。
一般地講,集群軟件具有更多的技術含量,具備更高的可靠性。同時,往往價格(平均到每臺服務器)也高于雙機軟件。
在選擇產品時,應根據應用的實際情況來確定。最理想的方式,則是在應用數量少、負載不是很大時先使用雙機軟件,然后在應用數量增多、負載增大時平滑過渡到集群軟件。
討論關于雙機熱備、集群軟件選擇的基本方法
一、雙機、集群軟件選擇的基本方法
先處理可選項少的情況,再處理可選項多的情況,這樣便于快速對號入座。 1、SCO UNIX:只有LanderCluster支持
2、Windows + SQL Server:需要考慮并行、負載均衡、實時切換等問題:只有ICX支持。 3、無磁盤陣列柜的情況:從性價比、可靠性等方面考慮,LanderCluster具有明顯優勢。 4、已經購買磁盤陣列柜:采取主/備方式(一臺工作另一臺不工作)。 5、Windows/Linux,已經購買了磁盤陣列柜: IBM EXP系列磁盤陣列,
- Windows 目前能可靠支持的是LanderCluster,- Linux目前能可靠支持的是NEC Express Cluster。 6、 Windows/Linux,無磁盤陣列柜(即純軟件方式):Windows + SQL Server:從性價比、可靠性等方面考慮,ICX具有明顯優勢。 7、其他磁盤陣列柜:
1)多臺服務器 可供選擇的包括:LanderCluster, NEC ExpressCluster, LifeKeeper其中LanderCluster和NEC ExpressCluster支持遠程監控,具有良好的本地支持,LanderCluster的性價比有明顯優勢,NEC則因與純軟件方式價格無差別;
2)當前兩臺,以后可能升到多服務器,多數據庫,多平臺集群,SAN及Iscsi環境:LanderCluster具有明顯優勢;
3)僅兩臺服務器:幾乎所有產品均可支持;
4)數據庫小于50G:從無柜純軟方面考慮,NEC ExpressCluster是主要的選擇;
二、數據庫雙機熱備方式
數據庫雙機熱備有兩種典型的方式,一種是比較標準的,兩臺服務器通過一個共享的存儲設備(一般是共享的磁盤陣列或存儲區域網SAN),并且安裝雙機軟件,實現雙機熱備,稱為共享方式。另一種方式是通過純軟件的方式,一般稱為純軟件方式或鏡像方式(Mirror)。
對于共享方式,數據庫放在共享的存儲設備上。當一臺服務器提供服務時,直接在存儲設備上進行讀寫。而當系統切換后,另一臺服務器也同樣讀取該存儲設備上的數據。
對于純軟件的方式,通過鏡像軟件,將數據可以實時復制到另一臺服務器上,這樣同樣的數據就在兩臺服務器上各存在一份,如果一臺服務器出現故障,可以及時切換到另一臺服務器。
三、純軟件方式優點
1、避免了磁盤陣列的單點故障:對于雙機熱備,本身即是防范由于單個設備的故障導致服務中斷,但磁盤陣列恰恰又形成了一個新的單點。(比如,服務器的可靠系數是99.9%, 磁盤陣列的可靠系數是99.95%,則純軟雙機的可靠系數是1-99.9%x99.9%=99.99%,而基于磁盤陣列的雙機熱備系統的可靠系數則會是略低于99.95%
2、節約投資:不需購買昂貴的磁盤陣列。
3、不受距離的限制:兩臺服務器不需受SCSI電纜的長度限制(光纖通道的磁盤陣列也不受距離限制,但投資會大得多)。這樣,可以更靈活地部署服務器,包括通過物理位置的距離來提高安全性。
純軟件方式以前應用得較少,一方面是由于當時市場上比較流行的雙機軟件不支持純軟件方式,另一方面是由于少數支持純軟件方式的產品其可靠性不太令人放心。但隨著NEC,LanderSoft這樣的大牌廠商的產品進入市場,應該說純軟件方式將逐漸成為一種方向。
從方案選擇的角度,建議在進行雙機熱備時,如果投資充裕、數據量大(1T以上),可以采用共享的存儲設備(如磁盤陣列)的方式,但應盡量選擇高可靠性(如著名品牌的)設備,并且考慮選擇雙控制器的方案。否則,則更好的選擇是純軟件方式。當然,這時就一定要選擇成熟的、大廠商的經過考驗的產品。 四、雙機熱備、集群軟件產品選擇
1、明確應用的方式與要求:
是雙機方式還是多點集群?或者是目前使用雙機、以后可能升級到集群? 如果是雙機,是采用共享的存儲設備,還是采用基于鏡像的純軟件方式?
2、了解清楚應用環境: 使用什么操作系統?
運行什么應用(比如,數據庫的版本)? 使用什么服務器? 使用什么存儲設備?
如果考慮純軟件方式,則還有了解清楚。數據量的大小、數據寫入的頻率、應用的關鍵性與重要性(相關內容:純軟件方式的雙機熱備方案深入分析 ) 。
3、在此基礎上,考慮以下因素,選擇相應的軟件產品:
產品是否能支持所要求的應用方式? 產品是否能支持所使用的應用環境?
產品的其他特性:是否支持遠程監控(可以使你不用非要經常跑到機房,才知道是否一臺服務器宕機了)?界面語言(對雙機軟件,中文界面并不是非常重要,但也是一個因素。同時,是否有中文手冊等則可能非常重要)。安裝的難易程度。
4、常見產品:
1)LanderCluster集群軟件:支持多點集群及雙機,遠程監控,支持Unix,支持ISCSI,支持多數據庫;
2)NEC ExpressCluster集群軟件:支持純軟件方式(鏡像),多點集群及雙機,遠程監控;
3)LifeKeeper集群軟件:支持多點集群及雙機;
4)RoseHA雙機軟件:雙機熱備、互備;
五、雙機、集群軟件差別
在雙機熱備應用方面,有兩大類軟件產品。一類是雙機軟件(HA),另一類則稱作集群軟件(Cluster),這兩類軟件是有差異的。
它們都是為實現系統的高可用性服務的,都解決了一臺服務器出現故障時,由其他服務器接管應用,從而持續可靠地提供服務的問題
它們都是通過心跳技術在進行系統檢測。
但是,雙機軟件只能支持兩臺服務器以主從方式或互備方式工作。而集群軟件除了支持雙機工作外,還可以支持多臺服務器(Multi Node)工作,同時部署多個應用,并在多個服務器間靈活地設置接管策略。 在兩種情況下需要使用集群軟件:一是有超過兩個應用,本身就需要部署三臺或更多的服務器。二是只有兩個應用,但每個應用的負載均較大,不宜采用雙機互備的方式,而是需要由第三臺服務器來作為這兩個應用的備機。
一般地講,集群軟件具有更多的技術含量,具備更高的可靠性。同時,往往價格(平均到每臺服務器)也高于雙機軟件。
在選擇產品時,應根據應用的實際情況來確定。最理想的方式,則是在應用數量少、負載不是很大時先使用雙機軟件,然后在應用數量增多、負載增大時平滑過渡到集群軟件。
評論
查看更多