999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

雙機熱備與負載均衡的設計與實現

2015-02-21 06:49:22王古城
電子設計工程 2015年18期
關鍵詞:數據庫故障服務

肖 佳,王古城,楊 旭,晁 勇

(1.華夏經緯信息科技有限公司 北京100022;2.廣東省海外聯絡辦公室 廣東 廣州510080;3.騰訊科技(北京)有限公司 北京100080)

雙機熱備與負載均衡的設計與實現

肖 佳1,王古城2,楊 旭3,晁 勇1

(1.華夏經緯信息科技有限公司 北京100022;2.廣東省海外聯絡辦公室 廣東 廣州510080;3.騰訊科技(北京)有限公司 北京100080)

針對OpenFlow SDN系統中的策略管理模塊提出了一種新型的雙機熱備和負載均衡方案,采用了服務器集群的方式,通過Keepalived和Heartbeat實現了雙機熱備模塊,通過Nginx實現了代理服務器和負載均衡模塊。經工程驗證有效降低了故障概率,系統可用性從97﹪提高至近100﹪。

SDN;策略管理;雙機熱備;負載均衡

隨著計算機技術的發展,一套完備系統對數據安全和服務保障有著極高的要求,數據和服務的重要性已遠遠超過硬件本身。為了提高業務和數據的可用性和可靠性,實際應用中通常采取冗余和容錯技術處理,而雙機熱備就是其中一種有效的解決方案[1]。雙機熱備系統一般包含主備兩個功能單元,正常狀態下主備兩個單元均上電工作,但只有主單元輸出有效。在主單元發生故障的情況下,備單元馬上能夠接替工作,保證系統能夠持續、安全和可靠的運行。

1 可行性分析

系統故障主要原因可分3類,一是硬件自身故障,二是軟件運行故障,三是機房環境和其他設備導致的故障。前兩種故障在主備切換前后不具有關聯性,可通過雙機熱備機制有效規避。而第三種故障則具有前后關聯性,必須通過定量分析證明雙機熱備機制的有效性。運用貝葉斯原理[2],假設合理的故障概率,計算的結果如表1所示。

表1 基于貝葉斯原理計算雙機熱備故障概率Tab.1 The failure probability calculation of dual-server hotstandby based on baysian theory

經計算所得的結果約為9﹪,該值在備用服務器發生故障時會成為新的先驗概率,遠低于初始的先驗概率20﹪,有效降低了故障概率。綜上,無論是哪種故障原因,雙機熱備系統均能有效提高系統的可靠性和安全性,因而廣泛應用于工業各個領域。

隨著業務量的提高,網絡訪問量和數據流量快速增長,各個核心組件的處理能力和計算強度也相應增大,單一的服務器設備根本無法承擔。如果放棄現有設備去做大量的硬件升級將造成資源浪費,而負載均衡技術可以很好的解決業務壓力問題,對硬件的要求和投入也大大降低。如圖1所示,一臺普通服務器的性能較低,數臺服務器組成集群的能力則等同于一臺超級服務器。負載均衡建立在現有網絡結構之上,提供了一種廉價透明的方法擴展網絡設備和服務器的帶寬,增加吞吐量,加強數據處理能力,提高網絡的靈活性和可用性[3]。

圖1 服務器集群Fig.1 Server cluster

SDN誕生于斯坦福大學Clean Slate課題[4],典型代表是OpenFlow項目[5],而策略管理是Open-Flow SDN中的重要組成部分。策略管理模塊具有網絡狀態收集分析、對策略進行管理和數據可視化等功能,在整個OpenFlow SDN架構中隸屬于集中控制點Controller,作用極為重要。為了提高策略管理模塊的可用性和安全性,確保其提供可靠的服務,本文提出了一種新型的雙機熱備和負載均衡的方案。系統通過web服務器方式提供對外訪問,代理服務器和負載均衡模塊采用Nginx實現,雙機熱備模塊采用Keepalived[6]和Heartbeat[7]實現。

2 系統設計

本策略管理系統架構為B/S式,初始設計的架構示意圖如圖2所示。管理員在外部通過代理服務器實現對于服務器集群的訪問,兩臺代理服務器采用雙機熱備技術確保系統的可靠性。主從代理服務器通過心跳機制報告自身狀況,并監聽另一代理服務器的心跳信號以檢測對方是否發生故障。正常狀態下主、從代理服務器均正常工作,但僅主服務器輸出有效。如果檢測到主代理服務器發生故障,則從服務器發出切換信號,切換輸出;如果檢測到從代理服務器發生故障,則將其隔離,避免誤切換。

圖2 策略管理系統初始架構示意圖Fig.2 Initail schematic of the policy management system architecture

負載均衡集群將訪問業務分攤,降低了業務壓力,硬件配置要求也大幅降低。而集群訪問的數據庫服務器也通過熱備份,即工作狀態下實時備份保證了業務數據的安全可靠。

主從代理服務器的負載均衡可使用Nginx作為反向代理服務器來實現,而對外提供虛擬IP的軟件可使用Keepalived或Heartbeat。對于Nginx[8]的服務可以使用一個監控腳本,用來監控提供虛擬IP服務器的Nginx是否處于正常工作狀態。業務服務器上的軟件取決于系統提供的業務,如果是Web服務器可以使用tomcat。數據庫服務器上可以使用Keepalived或Heartbeat提供數據庫公共訪問的接口,數據庫可根據業務服務器的要求決定,如Mysql、SQL server等。

上述構思方案實現了雙機熱備和負載均衡,而且負載均衡集群具有可擴展性。但是,對于硬件設備,諸如服務器和交換機的數量要求較多。鑒于實驗室硬件資源有限,而系統業務壓力并不大,因此將圖2中的方案做以精簡,修改為如圖3中的方案。

圖3 策略管理系統精簡架構示意圖Fig.3 Simplified schematic of the policy management system architecture

修改后的方案如圖2所示,主代理服務器、負載均衡服務器A和數據庫服務器A合并為一個主服務器,從代理服務器、負載均衡服務器B和數據庫服務器B合并為一個從服務器。功能和工作流程上與原方案基本一致,減少了硬件的數量,提高了硬件的使用率。在當前業務壓力下,功能復合對于整個系統穩定性的影響可以忽略。

3 模塊實現

實現過程按照自頂向下的思路,如圖4所示。首先需要實現的是可供外部訪問的虛擬IP功能。而雙機熱備可采用Keepalived和Heartbeat這兩款較為通用的軟件,提高可靠性避免單點故障。具體實現時可用Keepalived來提供Web訪問的虛擬IP1,而Heartbeat提供數據庫訪問的虛擬IP2,也是通過Web訪問。具體模塊關系與結構如下圖所示。

如圖4所示,主從服務器對外提供一個公共的訪問端口,即Keepalived提供的虛擬IP1服務。外部訪問通過Nginx實現對Tomcat服務的訪問,并可實現負載均衡機制,在訪問量較大的情況下可有效提高系統性能。Heartbeat用于提供數據庫訪問的虛擬IP2,而Mysql數據庫自帶的Master/Slave模式可以實現數據在主從服務器上的實時同步,當主數據庫出問題時可以通過Heartbeat服務檢測,將主數據庫服務轉移至從數據庫,從而提高數據庫服務的可靠性。在實際環境搭建時, Keepalived的配置問題短期內沒有解決,因而對方案做了一定的精簡,僅采用了Heartbeat提供外部訪問的虛擬IP,通過運行監控腳本,實現最初規劃。

圖4 系統模塊關系示意圖Fig.4 Schematic of the system module relationship

4 異常情況處理

本系統雙機熱備方案的工作流程分為如下4種不同的情況:1)正常工作狀態;2)主服務器宕機,切換到備用服務器;3)主服務器恢復正常,切換回主服務器;4)正在運行的服務軟件異常。

下面將針對不同情況分別描述。

1)正常工作狀態流程。

如圖5所示,主服務器通過Heartbeat向外提供虛擬IP服務,從服務器的Heartbeat不斷發送心跳信息;Nginx提供Web服務器的公共訪問端口,Nginx將外部訪問任務通過Tomcat的訪問地址,分配給主從服務器上的Tomcat;Tomcat根據本機上的Mysql數據庫內容,對外提供Web服務;同時,兩臺機器上的Mysql數據庫實時互備,實現數據同步;監控腳本不斷檢測各個軟件的工作狀態,通過服務端口判斷是否正常。

圖5 監控腳本工作流程圖Fig.5 Work fow chart of monitor script

2)主服務器宕機時工作流程

從服務器一段時間內沒有探測到主服務器,認為主服務宕機并接管虛擬IP,但同時繼續不斷發送心跳信號探測主服務器;從服務器上的Nginx提供外部訪問端口,并將任務分配給本機的 Tomcat(主服務器已經宕機),Tomcat訪問本機Mysql數據庫并向外提供Web服務。從服務上的腳本不斷監控著各個軟件的工作情況。

3)主服務器恢復正常的工作流程

主服務器開機后,各種軟件相繼啟動,從服務器探測到主服務器,將虛擬IP交還給主服務器,并繼續不斷發送心跳信息;Nginx提供Web服務器的公共訪問端口,Nginx將訪問任務通過Tomcat的訪問地址,分配給主從服務器上的Tomcat;Tomcat根據本機上的Mysql數據庫內容,對外提供Web服務;同時,兩臺機器上的Mysql數據庫實時互備,實現數據同步;監控腳本不斷檢測各個軟件的工作狀態,監控腳本的工作流程如圖5所示。

4)正在運行的服務軟件異常時工作流程

根據監控腳本的工作流程可知,Heartbeat和Tomcat出現異常時,直接重啟服務。若Mysql或Nginx出現異常時,首先關閉依賴其才能提供服務的Heartbeat或Tomcat,然后重啟Mysql或Nginx。若恢復正常,則開啟Heartbeat和Tomcat;若依然存在故障,則不啟動,并將錯誤寫入日志。上述過程中若主服務器上的Heartbeat關閉或異常,則由從服務器接管虛擬IP;若兩臺服務器中出現Tomcat關閉,則正在服務Nginx不會分配給其任務,由另一臺Tomcat提供服務。

5 系統可用性檢測

以平均無故障工作時間(MTTF)和平均修復時間(MTTR)來度量單機系統和雙機熱備系統的可用性,計算公式為,實際測試結果如表2所示。

表2 單機系統和雙機熱備系統的比較Tab.2 Comparison of single system and dual-server hotstandby system

如表2所示,雙機熱備可以非常有效的降低系統故障率,提高系統可用性。

6結論

本策略管理系統通過Heartbeat軟件實現了雙機熱備機制,而Keepalived軟件也可實現此功能。Heartbeat還向外提供了虛擬IP,負載均衡需要通過這個虛擬IP將訪問任務下發到后面的服務器集群。Nginx的作用就是將訪問任務平均分派給后面的服務器,本系統采用2臺Tomcat服務器實現負載均衡。Mysql可以通過簡單的配置來實現雙機數據互備的目標。

本系統的雙機熱備評價指標主要有以下3點:

1)虛擬IP的切換速度:本技術應能在主服務器出現異常時,快速將業務切換到從服務器上,切換的時間應該是在穩定的前提下越短越好。

2)對于服務訪問的中斷時間:雖然說雙機熱備技術可以提供不間斷的服務,但是對于切換時的短時間服務中斷還是難以避免的,所以應將服務中斷時間控制的越短越好。

經實測,以上兩項時間和可控制在200 s以內。

3)系統可用性:雙機熱備技術應能有效提升系統的可靠性,檢測結果顯示,系統可用性由97.342﹪提升至99.996﹪。

[1]覃慶努,魏學業,于蓉蓉,等.基于雙機聯合故障檢測的雙機熱備系統可靠性和安全性研究 [J].系統工程與電子技術,2011(12):2776-2780.QIN Qing-nu,WEI Xue-ye,YU Rong-rong,et al.Reliability and security study of dual computer hot-standby system based on dual computer joint fault detection[J].Systems Engineering and Electronics,2011(12):2776-2780.

[2]Nate Silver.The Signal and the Noise[M].New York:Penguin Press,2012.

[3]百度百科.負載均衡 [EB/OL].[2014-10-20].http://baike.baidu.com/view/51184.htm.

[4]百度百科.SDN[EB/OL].[2014-10-20].http://baike.baidu.com/view/1311159.htm?fr=aladdin.

[5]Nick McKeown.OpenFlow:Enabling Innovation in Campus Networks[J].Sigcomm,2008:69-74.

[6]百度百科.Keepalived[EB/OL].[2014-10-20].http://baike.baidu.com/view/4175422.htm?fr=aladdin.

[7]百度百科.Heartbeat集群配置 [EB/OL].[2014-10-20].http://wenku.baidu.com/linkurl=3ikoxX7G42UjIPjWRjmEBz4H_bts faYvsmBlkoUJjtaVFFJMBXjqa7LA0iwnUlYcYcWSsSXBr3UP ikL3rVEf-SAM2vW-Fm6DEsrqJp6mlLvny.

[8]Nginx官網.Nginx[EB/OL].[2014-10-10].http://wiki.nginx.org/.

Design and implementation of dual-server hot-standby and loading-balancing scheme

XIAO Jia1,WANG Gu-cheng2,YANG Xu3,CHAO Yong1
(1.China Information Technology Coporation,LTD.,Beijing 100022,China;2.Guangdong Province Overseas Liaison Office, Guangzhou 510080,China;3.Tencent Technology Coporation,LTD.,Beijing 100080,China)

Aiming at policy management module belonging to Open-Flow SDN system,this paper presents a new scheme of dual-server hot-standby and loading-balancing.The approach of server cluster is adopted.The dual-server hot-standby module is realized byKeepalived and Heartbeat.The proxy server and load-balancing module is achieved by Nginx.Failure probability is reduced effectively proved by engineering implementation and the feasibility of this systemis improved from 97﹪to nearly 100﹪.

SDN;policy management;dual-server hot-standby;loading-balancing

TN91

:A

:1674-6236(2015)18-0176-04

2014-11-29稿件編號:201411249

肖 佳 (1983—),男,安徽蕪湖人,博士研究生,工程師。研究方向:數據挖據、復雜網絡和信息安全。

猜你喜歡
數據庫故障服務
故障一點通
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
數據庫
財經(2017年2期)2017-03-10 14:35:35
奔馳R320車ABS、ESP故障燈異常點亮
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 精品国产一区91在线| 在线观看欧美精品二区| 午夜精品区| 亚洲日韩精品欧美中文字幕| 国产亚洲精久久久久久无码AV| 欧美伊人色综合久久天天| 9cao视频精品| 一级毛片在线免费看| 久久精品中文字幕免费| 99久久无色码中文字幕| 日韩精品专区免费无码aⅴ| 欧美成人免费午夜全| 日本一区二区不卡视频| 国产精品中文免费福利| 美女啪啪无遮挡| 亚洲一区二区三区香蕉| 国产va视频| 国产99欧美精品久久精品久久| 国产视频 第一页| 欧亚日韩Av| 蜜芽国产尤物av尤物在线看| 国产精品刺激对白在线| 国产欧美又粗又猛又爽老| 色噜噜在线观看| 香蕉久久国产精品免| 欧美一级高清免费a| 不卡午夜视频| 国产网友愉拍精品视频| 激情乱人伦| 精品国产福利在线| 91成人在线观看| 欧美日本中文| 亚洲中文字幕无码爆乳| 欧美日韩免费| 2020国产在线视精品在| 亚洲人成网址| 在线观看国产精品第一区免费 | 日韩精品久久久久久久电影蜜臀| 国产成人高精品免费视频| 日韩天堂视频| AV无码一区二区三区四区| 色久综合在线| 国产三级国产精品国产普男人| 久草中文网| 国产极品美女在线播放| 操美女免费网站| 欧美一区二区精品久久久| 国产欧美自拍视频| 欧美激情伊人| 国产第一页免费浮力影院| 天天色天天综合网| 亚洲AV一二三区无码AV蜜桃| 色悠久久综合| 国产视频资源在线观看| 久久无码av三级| 午夜国产小视频| 97国产一区二区精品久久呦| 久久国产V一级毛多内射| 香蕉国产精品视频| 日韩性网站| 综1合AV在线播放| 美女免费精品高清毛片在线视| 日韩第八页| 无码久看视频| 成年人午夜免费视频| 国产日韩欧美黄色片免费观看| 狠狠色噜噜狠狠狠狠色综合久| 九色在线观看视频| 国产精品免费久久久久影院无码| 97久久精品人人做人人爽| 在线视频97| 久久精品人妻中文系列| 青青青国产在线播放| 国产18在线播放| 亚洲人成影院午夜网站| 国产福利免费视频| 国产女人水多毛片18| 国产精品制服| 亚洲高清中文字幕在线看不卡| 免费欧美一级| 中文字幕调教一区二区视频| 国产欧美在线观看一区|