CN103501290B - 一种基于动态备份虚拟机的高可靠服务系统构建方法 - Google Patents
一种基于动态备份虚拟机的高可靠服务系统构建方法 Download PDFInfo
- Publication number
- CN103501290B CN103501290B CN201310429872.5A CN201310429872A CN103501290B CN 103501290 B CN103501290 B CN 103501290B CN 201310429872 A CN201310429872 A CN 201310429872A CN 103501290 B CN103501290 B CN 103501290B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- pvm
- standby
- bvm
- host
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明涉及一种基于动态备份虚拟机的高可靠服务系统构建方法,其将客户端的请求数据包同时发送给主虚拟机和后备虚拟机,并比较两个虚拟机产生的响应数据包。只要后备虚拟机产生的响应数据包能和主虚拟机的响应数据包保持一致,那么就认为后备虚拟机是主虚拟机的合法备份,且后备虚拟机能够在主虚拟机发生故障后替代主虚拟机继续向客户端提供服务。当两个虚拟机产生的响应数据包不一致时,将主虚拟机的状态同步到后备虚拟机,以保证后备虚拟机仍然是主虚拟机的合法备份,从而提高了服务的整体可靠性。
Description
技术领域
本发明涉及一种基于动态备份虚拟机的高可靠服务系统构建方法,针对虚拟机环境,可以提供高可靠的服务环境。
背景技术
随着互联网、虚拟化技术的发展,网络服务已经覆盖到了各个领域。由于服务器发生故障会带来一定程度的损失,因此,网络服务器的高可靠性至关重要。虚拟机状态同步(将主虚拟机的状态以一定方式同步到后备虚拟机)是当前普遍认为可以提高网络服务器高可靠性的技术。然而,现存的基于虚拟机状态同步的高可靠方案由于过分地进行状态同步使得性能不理想。
发明内容
本发明要解决的技术问题是提供一种即保证性能又具有高可靠性的网络服务器系统的构建方法。
为了解决上述技术问题,本发明的技术方案是提供了一种基于动态备份虚拟机的高可靠服务系统构建方法,其步骤为:
步骤1、为主服务器至少配备一台后备服务器,在主服务器上运行主虚拟机,在后备服务器上则运行后备虚拟机,所有网络服务运行在主虚拟机上;
步骤2、在系统初始化时,后备虚拟机将主虚拟机的状态完全拷贝过来,其特征在于:
步骤3、当主虚拟机向客户端提供服务后,客户端发送至服务器端的请求数据包首先抵达主虚拟机,该请求数据包将同时转发到后备虚拟机上,主虚拟机与后备虚拟机在收到请求数据包将各自产生响应数据包;
步骤4、由比较模块比较主虚拟机输出的响应数据包与后备虚拟机输出的响应数据包是否相同,若相同,则将两个响应数据包中的任意一个释放给客户端,另外一个则舍弃,若不相同,则比较模块将会通知控制器触发一次状态同步事件,将主虚拟机的状态发送到后备虚拟机,使得后备虚拟机的状态同步成主虚拟机的状态,同步完成后,将主虚拟机输出的响应数据包释放给客户端。
优选地,在步骤4中,后备虚拟机与主虚拟机状态同步过程中,比较模块将停止数据包的比较,同时也不释放任何数据包给客户端,控制器也会阻止网络请求报文输入给主虚拟机,并将这些网络请求报文暂时缓存起来。
优选地,在完成步骤2的系统初始化后,主服务器以固定周期向后备服务器发送心跳数据包,若后备服务器没有接收到心跳数据包,则认为主虚拟机已经宕机,后备服务器将采取故障恢复措施用后备虚拟机代替主虚拟机继续提供服务,在这种情况下,客户端发送过来的请求数据包将直接到达后备虚拟机,后备虚拟机产生响应数据包之后直接释放给客户端。
本发明有选择地进行主虚拟机与后备虚拟机之间的状态同步,在保证了服务器高可靠性的同时,提高了性能。
附图说明
图1为一种基于动态备份虚拟机的高可靠服务系统。
具体实施方式
为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。
结合图1,本发明提供了一种基于动态备份虚拟机的高可靠服务系统构建方法,其步骤为:
步骤1|为主服务器配备一台后备服务器,在主服务器上运行主虚拟机PVM,在后备服务器上则运行后备虚拟机BVM,所有网络服务如如FTP和WEB服务等运行在主虚拟机PVM上。
本领域技术人员可根据需要为主服务器配备多个后备服务器,多个后备服务器的作用完全相同、等价。此时,主服务器可以根据使用简单多数的投票机制,将多数后备服务器返回的相同的数据请求处理结果返回给请求端,少数不相同的结果丢弃,同时,使用多数返回相同结果的后备虚拟机BVM状态更新少数返回不同结果的后备虚拟机BVM状态。
步骤2、在系统初始化时,后备虚拟机BVM将主虚拟机PVM的状态完全拷贝过来。
步骤3、当主虚拟机PVM向客户端提供服务后,客户端发送至服务器端的请求数据包首先抵达主虚拟机PVM,该请求数据包将同时转发到后备虚拟机BVM上,主虚拟机PVM与后备虚拟机BVM在收到请求数据包将各自产生响应数据包,该响应数据包将存入主虚拟机PVM与后备虚拟机BVM各自的输出缓存中;
步骤4、后备虚拟机BVM的响应数据包会被转发回主虚拟机PVM所在的主服务器上,主服务器存在一个比较模块来负责比较主虚拟机PVM和后备虚拟机BVM输出的响应数据包是否相同。比较模块将一个一个依次比较主虚拟机PVM和后备虚拟机BVM输出的响应数据包,若两个数据包相同,那么其中一个会释放给客户端,另外一个数据包将被舍弃。若两个数据包不相同,那么,比较模块将会通知控制器触发一次状态同步事件,将主虚拟机PVM的状态发送到后备虚拟机BVM,使得后备虚拟机BVM的状态同步成主虚拟机PVM的状态。当然,在状态同步期间,比较模块将停止数据包的比较,同时也不释放任何数据包给客户端。控制器也会阻止网络请求报文输入给虚拟机,并将这些报文暂时缓存起来。当同步完成后,比较模块将检查一下主虚拟机PVM的输出缓存,释放其中所有的数据包给客户端,而在后备虚拟机BVM的输出缓存里面的数据包将全部被丢弃。控制器将恢复网络报文的输入。由于主虚拟机PVM和后备虚拟机BVM的状态又变成一致,在输入相同的请求数据包后,他们将会在一段时间内又产生相同的响应数据包。
本发明还引入了心跳机制,该机制用于后备服务器监测主服务器上的主虚拟机PVM是否还继续存活。如果后备服务器没有接收到主服务器发送的心跳数据包,就会认为主虚拟机PVM已经宕机,将采取故障恢复措施以替代主虚拟机PVM继续提供服务。在这种情况下,客户端发送过来的请求数据包将直接到达后备虚拟机BVM,后备虚拟机BVM的服务程序处理产生响应数据包之后,不再发送回主虚拟机PVM,而是直接释放给客户端。客户端根本不会发现服务端进行了一次快速的故障恢复。
Claims (3)
1.一种基于动态备份虚拟机的高可靠服务系统构建方法,其特征在于:其步骤为:
步骤1、为主服务器至少配备一台后备服务器,在主服务器上运行主虚拟机(PVM),在后备服务器上则运行后备虚拟机(BVM),所有网络服务运行在主虚拟机(PVM)上;
步骤2、在系统初始化时,后备虚拟机(BVM)将主虚拟机(PVM)的状态完全拷贝过来;
步骤3、当主虚拟机(PVM)向客户端提供服务后,客户端发送至服务器端的请求数据包首先抵达主虚拟机(PVM),该请求数据包将同时转发到后备虚拟机(BVM)上,主虚拟机(PVM)与后备虚拟机(BVM)在收到请求数据包后将各自产生响应数据包;
步骤4、由比较模块比较主虚拟机(PVM)输出的响应数据包与后备虚拟机(BVM)输出的响应数据包是否相同,若相同,则将两个响应数据包中的任意一个释放给客户端,另外一个则舍弃,若不相同,则比较模块将会通知控制器触发一次状态同步事件,将主虚拟机(PVM)的状态发送到后备虚拟机(BVM),使得后备虚拟机(BVM)的状态同步成主虚拟机(PVM)的状态,同步完成后,将主虚拟机(PVM)输出的响应数据包释放给客户端。
2.如权利要求1所述的一种基于动态备份虚拟机的高可靠服务系统构建方法,其特征在于:在步骤4中,后备虚拟机(BVM)与主虚拟机(PVM)状态同步过程中,比较模块将停止数据包的比较,同时也不释放任何数据包给客户端,控制器也会阻止网络请求报文输入给主虚拟机(PVM),并将这些网络请求报文暂时缓存起来。
3.如权利要求1所述的一种基于动态备份虚拟机的高可靠服务系统构建方法,其特征在于:在完成步骤2的系统初始化后,主服务器以固定周期向后备服务器发送心跳数据包,若后备服务器没有接收到心跳数据包,则认为主虚拟机(PVM) 已经宕机,后备服务器将采取故障恢复措施用后备虚拟机(BVM)代替主虚拟机(PVM) 继续提供服务,在这种情况下,客户端发送过来的请求数据包将直接到达后备虚拟机(BVM),后备虚拟机(BVM)产生响应数据包之后直接释放给客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310429872.5A CN103501290B (zh) | 2013-09-18 | 2013-09-18 | 一种基于动态备份虚拟机的高可靠服务系统构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310429872.5A CN103501290B (zh) | 2013-09-18 | 2013-09-18 | 一种基于动态备份虚拟机的高可靠服务系统构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103501290A CN103501290A (zh) | 2014-01-08 |
CN103501290B true CN103501290B (zh) | 2017-10-24 |
Family
ID=49866462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310429872.5A Active CN103501290B (zh) | 2013-09-18 | 2013-09-18 | 一种基于动态备份虚拟机的高可靠服务系统构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103501290B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761166A (zh) * | 2014-01-22 | 2014-04-30 | 上海交通大学 | 一种虚拟化环境下针对网络服务的双机热备份容灾系统及其方法 |
CN105531678A (zh) * | 2014-08-18 | 2016-04-27 | 华为技术有限公司 | 虚拟机数据的同步方法和装置 |
CN104301140B (zh) * | 2014-10-08 | 2019-07-30 | 广州华多网络科技有限公司 | 业务请求响应方法、装置和系统 |
CN105577711B (zh) * | 2014-10-08 | 2019-05-03 | 华为技术有限公司 | 消息处理方法、装置及消息处理系统 |
CN104618155B (zh) * | 2015-01-23 | 2018-06-05 | 华为技术有限公司 | 一种虚拟机容错的方法、装置及系统 |
EP3501140B1 (de) * | 2016-09-29 | 2020-08-26 | Siemens Aktiengesellschaft | Verfahren zum betrieb eines mehrere kommunikationsgeräten umfassenden kommunikationsnetzes eines industriellen automatisierungssystems und steuerungseinheit |
WO2018103031A1 (zh) * | 2016-12-08 | 2018-06-14 | 深圳前海达闼云端智能科技有限公司 | 虚拟机功能服务的实现方法、装置、电子设备和计算机程序产品 |
CN107092538B (zh) * | 2017-03-14 | 2019-12-24 | 平安科技(深圳)有限公司 | 虚拟机数据备份方法及系统 |
CN106970861A (zh) * | 2017-03-30 | 2017-07-21 | 山东超越数控电子有限公司 | 一种虚拟机容错方法和系统 |
CN110622478B (zh) * | 2018-04-08 | 2020-11-06 | 华为技术有限公司 | 数据同步处理的方法和装置 |
CN112380069B (zh) * | 2020-12-04 | 2022-05-17 | 海光信息技术股份有限公司 | 一种虚拟机容错系统及其容错方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212458A (zh) * | 2006-12-25 | 2008-07-02 | 中兴通讯股份有限公司 | 一种数据库系统备份方法 |
CN102662751A (zh) * | 2012-03-30 | 2012-09-12 | 浪潮电子信息产业股份有限公司 | 一种提高基于热迁移虚拟机系统可用性的方法 |
CN102932409A (zh) * | 2012-09-21 | 2013-02-13 | 中国电信股份有限公司云计算分公司 | 一种虚拟机在线迁移的方法和系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8321377B2 (en) * | 2006-04-17 | 2012-11-27 | Microsoft Corporation | Creating host-level application-consistent backups of virtual machines |
US7587663B2 (en) * | 2006-05-22 | 2009-09-08 | Intel Corporation | Fault detection using redundant virtual machines |
JP5392594B2 (ja) * | 2008-03-05 | 2014-01-22 | 日本電気株式会社 | 仮想計算機冗長化システム、コンピュータシステム、仮想計算機冗長化方法、及びプログラム |
CN101394306B (zh) * | 2008-07-08 | 2010-10-27 | 国电南瑞科技股份有限公司 | 一种双服务器系统的无缝切换方法 |
CN102111215A (zh) * | 2010-12-23 | 2011-06-29 | 中兴通讯股份有限公司 | 一种配置数据同步的方法及装置 |
CN102855314B (zh) * | 2012-08-27 | 2015-04-08 | 济南大学 | 基于fpga的实时数据库备份系统及备份方法 |
CN102868560B (zh) * | 2012-09-28 | 2015-01-14 | 南京恩瑞特实业有限公司 | 一种服务器热备实现系统及方法 |
CN103036722A (zh) * | 2012-12-13 | 2013-04-10 | 方正科技集团股份有限公司 | 无盘系统中实现服务器热备份的方法 |
CN102968595A (zh) * | 2012-12-20 | 2013-03-13 | 曙光云计算技术有限公司 | 虚拟机系统的保护方法和装置 |
-
2013
- 2013-09-18 CN CN201310429872.5A patent/CN103501290B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212458A (zh) * | 2006-12-25 | 2008-07-02 | 中兴通讯股份有限公司 | 一种数据库系统备份方法 |
CN102662751A (zh) * | 2012-03-30 | 2012-09-12 | 浪潮电子信息产业股份有限公司 | 一种提高基于热迁移虚拟机系统可用性的方法 |
CN102932409A (zh) * | 2012-09-21 | 2013-02-13 | 中国电信股份有限公司云计算分公司 | 一种虚拟机在线迁移的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103501290A (zh) | 2014-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103501290B (zh) | 一种基于动态备份虚拟机的高可靠服务系统构建方法 | |
CN102404390B (zh) | 高速实时数据库的智能化动态负载均衡方法 | |
CN110224871B (zh) | 一种Redis集群的高可用方法及装置 | |
US10033667B1 (en) | Enhanced virtual router redundancy protocol | |
CN104158693B (zh) | 数据服务的容灾备份方法和系统 | |
CN105095001B (zh) | 分布式环境下虚拟机异常恢复方法 | |
CN108200124B (zh) | 一种高可用应用程序架构及构建方法 | |
CN108234191A (zh) | 云计算平台的管理方法和装置 | |
EP1768320A2 (en) | Information processing apparatuses, communication method, communication load decentralizing method and communication system | |
CN105554106A (zh) | 一种memcache分布式缓存系统 | |
CN103152419A (zh) | 一种云计算平台的高可用集群管理方法 | |
CN105554074A (zh) | 一种基于rpc通信的nas资源监控系统及监控方法 | |
CN103885857B (zh) | 虚拟机容错方法以及设备 | |
CN113489691B (zh) | 网络访问方法、装置、计算机可读介质及电子设备 | |
CN102487342B (zh) | 虚拟互联网协议地址绑定控制装置及方法 | |
WO2015154525A1 (zh) | 一种使用多板卡保护HQoS的方法和装置 | |
WO2015117389A1 (zh) | 运营商级网络地址转换cgn备份保护方法及装置 | |
CN106850255A (zh) | 一种多机备份的实现方法 | |
CN111142801B (zh) | 分布式存储系统网络亚健康检测方法及装置 | |
CN109412980B (zh) | 一种bras备份方法及装置 | |
CN104410698A (zh) | 一种share nothing集群下的发起节点异常处理方法及装置 | |
US7680034B2 (en) | Redundant control systems and methods | |
CN106464541B (zh) | 基于网络功能虚拟化的故障处理方法及设备 | |
CN117370316A (zh) | 数据库的高可用管理方法和装置、电子设备及存储介质 | |
CN104506353A (zh) | 一种鉴证管理方法、设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |