CN103607296A - 一种虚拟机故障处理方法和设备 - Google Patents
一种虚拟机故障处理方法和设备 Download PDFInfo
- Publication number
- CN103607296A CN103607296A CN201310535873.8A CN201310535873A CN103607296A CN 103607296 A CN103607296 A CN 103607296A CN 201310535873 A CN201310535873 A CN 201310535873A CN 103607296 A CN103607296 A CN 103607296A
- Authority
- CN
- China
- Prior art keywords
- physical host
- fault
- virtual router
- fault type
- address information
- 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.)
- Granted
Links
Images
Abstract
本发明公开了一种虚拟机故障处理方法和设备,该方法包括:虚拟路由器利用NQA功能探测VM是否发生故障;在所述VM发生故障时,所述虚拟路由器确定所述VM的故障类型;所述虚拟路由器向物理主机发送故障通知消息;所述物理主机在确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。本发明实施例中,VM不需要安装HA工具,能够快速恢复网络连通,并可以避免业务应用中断。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种虚拟机故障处理方法和设备。
背景技术
虚拟化技术是指计算机元件在虚拟基础上运行,而不是在真实基础上运行,虚拟化技术可以扩大硬件容量,简化软件的重新配置过程。在虚拟化技术中,通常使用虚拟平台的HA(High Availability,高可用性)技术来提高业务应用的可靠性。如图1所示,为虚拟平台的HA技术的组网示意图。该网络中包括多个物理主机,各物理主机上运行多个VM(Virtual Machine,虚拟机),且相关业务应用将安装在VM上,以通过VM为用户提供各种应用服务。
虚拟平台的HA技术的网络分为控制网络和业务网络,虚拟平台的物理主机的控制接口连接到控制网络中,且各物理主机之间通过控制网络进行通信;虚拟平台的物理主机的业务接口连接到业务网络中,且物理主机上的VM将通过业务接口连接到业务网络中,以对外提供业务服务。此外,控制网络和业务网络之间是相互隔离的,即控制网络和业务网络之间不能进行通信。
现有技术中,在基于虚拟平台的HA技术来保证业务应用的高可靠性时,采用如下方式来保证业务的可用性。1、物理主机备份功能:虚拟平台的多台物理主机之间建立HA集群,每台物理主机配有一个HA代理,各物理主机的HA代理在控制网络中周期性发送心跳报文,并检测HA集群内其它物理主机的心跳报文。如果在某一周期内没有检测到其它物理主机的心跳报文,则认为该物理主机故障,并将该其它物理主机上运行的所有VM迁移到HA集群的其它物理主机上,从而保证物理主机故障情况下的业务可用性。2、VM检测/备份功能:各VM中安装HA工具,各VM的HA工具周期性向物理主机发送心跳报文,如果在一定时间段内物理主机没有收到HA工具的心跳报文,则判断该HA工具对应的VM异常,对VM进行重启或者重新配置,以防止VM故障。
在上述实现方式中,各VM均需要安装HA工具,如果VM由于使用非标准操作系统导致无法安装HA工具,则无法实现VM检测/备份功能。HA工具能够发送心跳报文时,并不能保证VM可以提供正常业务应用,因此物理主机无法准确及时对VM进行重启或者重新配置,从而导致业务应用中断。此外,各物理主机的HA代理只能在控制网络中发送心跳报文,无法在业务网络中发送心跳报文,因此当业务网络出现异常时不能通过物理主机备份功能进行解决。
发明内容
本发明实施例提供一种虚拟机故障处理方法和设备,以避免在VM上安装HA工具,避免业务应用中断,且在业务网络异常时对VM进行故障处理。
为了达到上述目的,本发明实施例提供一种虚拟机故障处理方法,该方法应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且所述多个物理主机中的一个物理主机上运行有虚拟路由器,所述方法包括以下步骤:
所述虚拟路由器利用网络质量分析NQA功能探测VM是否发生故障;
在所述VM发生故障时,所述虚拟路由器确定所述VM的故障类型;
所述虚拟路由器向物理主机发送故障通知消息,所述故障通知消息中携带所述VM的地址信息以及所述VM的故障类型;
由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
所述虚拟路由器探测VM是否发生故障,以及确定所述VM的故障类型的过程,具体包括:
当所述VM上的业务应用为NQA功能支持的业务应用时,所述虚拟路由器向所述VM发送业务探测报文;如果未收到业务探测响应报文,则确定所述VM发生故障;所述虚拟路由器向所述VM发送网络探测报文;如果未收到网络探测响应报文,则确定所述VM的故障类型为网络连接故障;如果收到网络探测响应报文,则确定所述VM的故障类型为VM业务异常;
当所述VM上的业务应用为NQA功能不支持的业务应用时,所述虚拟路由器向所述VM发送网络探测报文;如果未收到网络探测响应报文,则确定所述VM发生故障,并确定所述VM的故障类型为网络连接故障。
所述虚拟路由器向物理主机发送故障通知消息的过程,具体包括:
当在所述虚拟路由器上配置HA工具时,所述虚拟路由器通过所述HA工具向本虚拟路由器所在的物理主机发送故障通知消息;由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,
当在所述虚拟路由器上配置HA代理时,所述虚拟路由器通过所述HA代理向所有物理主机发送故障通知消息;由各物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
所述物理主机利用所述VM的故障类型对所述VM进行故障处理的过程,具体包括:在所述VM的故障类型为VM业务异常时,所述物理主机重启所述VM或者重新配置所述VM;或者,在所述VM的故障类型为网络连接故障时,所述物理主机将所述VM迁移到所述HA网络中的其它物理主机上。
本发明实施例提供一种虚拟路由器,应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且所述多个物理主机中的一个物理主机上运行有虚拟路由器,所述虚拟路由器具体包括:
探测模块,用于利用网络质量分析NQA功能探测VM是否发生故障;
确定模块,用于在所述VM发生故障时,确定所述VM的故障类型;
发送模块,用于向物理主机发送故障通知消息,所述故障通知消息中携带所述VM的地址信息以及所述VM的故障类型;
由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
所述探测模块,具体用于当所述VM上的业务应用为NQA功能支持的业务应用时,向所述VM发送业务探测报文;如果未收到业务探测响应报文,则向所述VM发送网络探测报文;或者,当所述VM上的业务应用为NQA功能不支持的业务应用时,向所述VM发送网络探测报文;
所述确定模块,具体用于当所述VM上的业务应用为NQA功能支持的业务应用时,如果未收到业务探测响应报文,则确定所述VM发生故障;在向所述VM发送网络探测报文之后,如果未收到网络探测响应报文,则确定所述VM的故障类型为网络连接故障;如果收到网络探测响应报文,则确定所述VM的故障类型为VM业务异常;或者,当所述VM上的业务应用为NQA功能不支持的业务应用时,如果未收到网络探测响应报文,则确定所述VM发生故障,并确定所述VM的故障类型为网络连接故障。
所述发送模块,具体用于当在所述虚拟路由器上配置HA工具时,通过所述HA工具向本虚拟路由器所在的物理主机发送故障通知消息;由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,
当在所述虚拟路由器上配置HA代理时,通过所述HA代理向所有物理主机发送故障通知消息;由各物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
本发明实施例提供一种物理主机,应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且本物理主机上运行有虚拟路由器,所述物理主机具体包括:
接收模块,用于接收来自虚拟路由器的故障通知消息,所述故障通知消息中携带VM的地址信息以及VM的故障类型;其中,所述故障通知消息是所述虚拟路由器利用网络质量分析NQA功能探测到VM发生故障后发送的;
处理模块,用于在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
所述接收模块,具体用于当在所述虚拟路由器上配置HA工具时,接收所述虚拟路由器通过所述HA工具向本物理主机发送的故障通知消息;或者,
当在所述虚拟路由器上配置HA代理时,接收所述虚拟路由器通过所述HA代理向本物理主机发送的故障通知消息;
所述处理模块,具体用于当收到虚拟路由器通过HA工具发送的故障通知消息时,在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,
当收到虚拟路由器通过HA代理发送的故障通知消息时,在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
所述处理模块,具体用于在所述VM的故障类型为VM业务异常时,重启所述VM或者重新配置所述VM;或者,在所述VM的故障类型为网络连接故障时,将所述VM迁移到所述HA网络中的其它物理主机上。
与现有技术相比,本发明实施例至少具有以下优点:本发明实施例中,虚拟路由器通过使用NQA(Network Quality Analyzer,网络质量分析)功能探测VM是否发生故障,并在VM发生故障时,向物理主机发送携带VM的地址信息和故障类型的故障通知消息,由物理主机在利用VM的地址信息确定VM为运行在本物理主机的VM时,利用VM的故障类型对VM进行故障处理。在上述实现方式中,VM不需要安装HA工具就可以实现VM检测/备份功能,从而避免在各VM上安装HA工具。虚拟路由器作为业务网络的接入设备,能够使用NQA功能探测VM与业务网络的连通性,并在业务网络出现异常时将VM迁移到其它物理主机上运行,快速恢复网络连通。VM不需要使用HA工具发送心跳报文,使得物理主机能准确及时的对VM进行重启或重新配置,从而避免业务应用中断,实现不同状况下业务应用的快速恢复。
附图说明
图1是现有技术中虚拟平台的HA技术的组网示意图;
图2是本发明实施例提供的一种虚拟机故障处理方法流程示意图;
图3是本发明实施例提出的在虚拟路由器上配置HA工具的网络示意图;
图4是本发明实施例提出的在虚拟路由器上配置HA代理的网络示意图
图5是本发明实施例提供的一种虚拟路由器的结构示意图;
图6是本发明实施例提供的一种物理主机的结构示意图。
具体实施方式
针对现有技术中存在的问题,本发明实施例一提供一种虚拟机故障处理方法,该方法应用于包括多个物理主机的HA网络(即基于虚拟平台的HA技术)中,各物理主机上运行有VM(可以运行多个VM),且多个物理主机加入到同一个HA集群。进一步的,在这多个物理主机中,有一个物理主机上运行有虚拟路由器(vRouter),且该虚拟路由器上配置了NQA功能。
在上述应用场景下,如图2所示,该方法包括以下步骤:
步骤201,虚拟路由器利用NQA功能探测VM是否发生故障;在VM发生故障时,虚拟路由器确定VM的故障类型,并执行步骤202;在VM未发生故障时,结束流程,或循环探测。VM的故障类型为VM业务异常或者网络连接故障。
本发明实施例中,虚拟路由器探测VM是否发生故障,并在VM发生故障时,确定VM的故障类型的过程,具体包括但不限于如下情况:
情况一、当VM上的业务应用为NQA功能支持的业务应用时,虚拟路由器向VM发送业务探测报文;如果未收到业务探测响应报文,则确定VM发生故障;如果收到业务探测响应报文,则确定VM未发生故障。进一步的,在未收到业务探测响应报文时,虚拟路由器向VM发送网络探测报文;如果未收到网络探测响应报文,则确定VM的故障类型为网络连接故障;如果收到网络探测响应报文,则确定VM的故障类型为VM业务异常。
情况二、当VM上的业务应用为NQA功能不支持的业务应用时,虚拟路由器向VM发送网络探测报文;如果未收到网络探测响应报文,则虚拟路由器确定VM发生故障,并确定VM的故障类型为网络连接故障;如果收到网络探测响应报文,则虚拟路由器确定VM未发生故障。
进一步的,虚拟路由器上配置的NQA功能支持的业务应用具体包括但不限于:ICMP(Internet Control Message Protocol,Internet控制报文协议)业务应用、DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)业务应用、DNS(Domain Name System,域名系统)业务应用、FTP(File TransferProtocol,文件传输协议)业务应用、HTTP(Hyper Text Transfer Protocol,超文本传输协议)业务应用、UDP(User Datagram Protocol,用户数据包协议)业务应用、SNMP(Simple Network Management Protocol,简单网络管理协议)业务应用、TCP(Transmission Control Protocol,传输控制协议)业务应用、Voice(语音)业务应用、Path-jitter(路径抖动)业务应用和DLSw(Data LinkSwitching,数据链路交换)业务应用,因此虚拟路由器可基于相应探测技术对VM的上述业务应用进行探测,以获知VM当前是否支持上述业务应用。
因此,对于NQA功能支持的业务应用,虚拟路由器可以向VM发送业务探测报文,以获知VM当前是否支持业务应用,继而在未收到业务探测响应报文时,确定故障类型为VM业务异常,如果后续过程中也未收到网络探测响应报文,则进一步确定故障类型为网络连接故障,其业务应用必然也出现VM业务异常。此外,对于NQA功能不支持的业务应用,则虚拟路由器不需要向VM发送业务探测报文,而是直接探测网络连接故障的情况。
以VM上的业务应用为HTTP业务应用,虚拟路由器上的NQA功能支持HTTP业务应用为例进行说明。管理员首先在虚拟路由器上配置VM的HTTP业务应用的地址信息,并在虚拟路由器上配置HTTP探测功能,以通过HTTP探测功能探测VM当前是否支持HTTP业务应用。基于HTTP探测功能,虚拟路由器向VM发送HTTP业务探测报文,以对HTTP业务应用情况进行探测。如果未收到HTTP业务探测响应报文,则虚拟路由器确定VM当前不支持HTTP业务应用,VM发生故障。如果收到HTTP业务探测响应报文,则虚拟路由器确定VM当前支持HTTP业务应用,VM未发生故障。
进一步的,管理员还需要在虚拟路由器上配置ICMP探测功能,以通过ICMP探测功能探测VM的网络连接状态。基于此,虚拟路由器在未收到HTTP业务探测响应报文时,基于ICMP探测功能,虚拟路由器向VM发送ICMP网络探测报文,以对VM的网络连接状态进行探测。如果未收到ICMP网络探测响应报文,则虚拟路由器确定VM当前的网络连接出现异常,且此时VM的故障类型为网络连接故障。如果收到ICMP网络探测响应报文,则虚拟路由器确定VM当前的网络连接正常,且此时VM的故障类型为VM业务异常。
步骤202,虚拟路由器向物理主机发送故障通知消息,该故障通知消息中携带VM的地址信息和故障类型;物理主机在利用VM的地址信息确定VM为运行在本物理主机的VM时,利用VM的故障类型对VM进行故障处理。
本发明实施例中,物理主机利用VM的故障类型对VM进行故障处理的过程,具体包括但不限于如下方式:在VM的故障类型为VM业务异常时,物理主机重启VM或者重新配置VM;或者,在VM的故障类型为网络连接故障时,物理主机将VM迁移到HA网络中的其它物理主机上。
本发明实施例中,虚拟路由器向物理主机发送故障通知消息,并由物理主机利用故障通知消息进行相应处理的过程,具体包括但不限于如下情况:
情况一、当在虚拟路由器上配置HA工具时,虚拟路由器通过HA工具向本虚拟路由器所在的物理主机发送故障通知消息;物理主机在利用VM的地址信息确定VM为运行在本物理主机的VM时,利用VM的故障类型对VM进行故障处理;在利用VM的地址信息确定VM不是运行在本物理主机的VM时,通过心跳消息将VM的地址信息和VM的故障类型通知给其它物理主机;其它物理主机在利用VM的地址信息确定VM为运行在本其它物理主机的VM时,利用VM的故障类型对VM进行故障处理;在利用VM的地址信息确定VM不是运行在本其它物理主机的VM时,丢弃收到的心跳消息。
如图3所示,为在虚拟路由器上配置HA工具的网络示意图,虚拟路由器上配置的HA工具与物理主机的HA代理之间存在HA工具控制通道,基于该HA工具控制通道,虚拟路由器可以通过该HA工具向本虚拟路由器所在的物理主机发送故障通知消息(心跳消息的一种新的消息类型),且该故障通知消息中至少携带了VM的地址信息(如IP地址)和故障类型。
物理主机在收到虚拟路由器发送的故障通知消息后,如果利用VM的地址信息确定VM为运行在本物理主机的VM,则利用VM的故障类型对VM进行故障处理,以完成故障恢复。如果利用VM的地址信息确定VM不是运行在本物理主机的VM,则通过心跳消息将VM的地址信息和VM的故障类型通知给其它物理主机。其中,通过对各物理主机之间交互的心跳消息进行扩展,以使扩展后的心跳消息能够承载VM的地址信息和VM的故障类型;基于此,物理主机在确定VM不是运行在本物理主机的VM时,可以通过扩展后的心跳消息将VM的地址信息和VM的故障类型通知给其它物理主机。
其它物理主机在收到心跳消息之后,如果利用VM的地址信息确定VM为运行在本其它物理主机的VM,则利用VM的故障类型对VM进行故障处理,以完成故障恢复。如果利用VM的地址信息确定VM不是运行在本其它物理主机的VM,则丢弃收到的心跳消息,不进行任何操作。
其中,扩展后的心跳消息的扩展字段包括两部分,一部分用于承载VM的地址信息,另一部分用于承载VM的故障类型;扩展后的心跳消息中可以包括多个扩展字段,每个扩展字段承载一个VM的地址信息和故障类型。
其中,故障类型可以基于故障级别体现。例如,心跳消息中携带的故障级别为第一级别时,表示VM的故障类型为VM业务异常,此时物理主机利用VM的故障类型对VM进行故障处理具体为:物理主机重启VM或者重新配置VM。又例如,心跳消息中携带的故障级别为第二级别时,表示VM的故障类型为网络连接故障,此时物理主机利用VM的故障类型对VM进行故障处理具体为:物理主机将VM迁移到HA网络中的其它物理主机上。
情况二、当在虚拟路由器上配置HA代理时,虚拟路由器通过HA代理向所有物理主机发送故障通知消息;由各物理主机在利用VM的地址信息确定VM为运行在本物理主机的VM时,则利用VM的故障类型对VM进行故障处理;在利用VM的地址信息确定VM不是运行在本物理主机的VM时,则丢弃本物理主机收到的故障通知消息,此时不进行任何操作。
如图4所示,为在虚拟路由器上配置HA代理的网络示意图,该虚拟路由器上的HA代理能够周期性的向其它所有物理主机的HA代理发送心跳消息。为了实现此功能,虚拟平台在创建HA集群时,需要支持添加虚拟路由器类型的设备(和原有物理主机类型的设备相区分),即在创建HA集群时,可以在虚拟路由器上配置HA代理,且该HA代理的类型为虚拟路由器类型。进一步的,对于HA集群中的虚拟路由器,其HA代理能够周期性的向其它所有物理主机的HA代理发送心跳消息;进一步的,各物理主机可以接收虚拟路由器发送的心跳消息,而不会向虚拟路由器发送心跳消息。
基于上述特征,虚拟路由器在探测到VM发生故障后,虚拟路由器可以通过该HA代理向所有物理主机发送故障通知消息(心跳消息的一种新的消息类型),且该故障通知消息中至少携带了VM的地址信息(如IP地址)和故障类型。其中,通过对虚拟路由器与各物理主机之间交互的心跳消息进行扩展,以使扩展后的心跳消息能够承载VM的地址信息和VM的故障类型。扩展后的心跳消息的扩展字段包括两部分,一部分用于承载VM的地址信息,另一部分用于承载VM的故障类型;进一步的,扩展后的心跳消息中可以包括多个扩展字段,每个扩展字段承载一个VM的地址信息和故障类型。
各物理主机在收到虚拟路由器发送的故障通知消息后,如果利用VM的地址信息确定VM为运行在本物理主机的VM,则利用VM的故障类型对VM进行故障处理;如果利用VM的地址信息确定VM不是运行在本物理主机的VM,则丢弃本物理主机收到的故障通知消息,此时不进行任何操作。
其中,故障类型可以基于故障级别体现。例如,故障通知消息中携带的故障级别为第一级别时,表示VM的故障类型为VM业务异常,此时物理主机利用VM的故障类型对VM进行故障处理具体为:物理主机重启VM或者重新配置VM。又例如,故障通知消息中携带的故障级别为第二级别时,表示VM的故障类型为网络连接故障,此时物理主机利用VM的故障类型对VM进行故障处理具体为:物理主机将VM迁移到HA网络中的其它物理主机上。
此外,当HA集群内的物理主机在预设时间内均没有收到虚拟路由器发送的心跳报文时,则确定虚拟路由器发生故障,此时需要由虚拟路由器所在的物理主机对虚拟路由器进行重启处理或重新配置处理,或者将虚拟路由器迁移到其它物理主机上,基于此实施方式,可以提升虚拟路由器本身的可靠性,保证不会由于虚拟路由器自身的故障导致无法对VM进行故障探测。
综上所述,本发明实施例中,虚拟路由器通过使用NQA功能探测VM是否发生故障,并在VM发生故障时,向物理主机发送携带VM的地址信息和故障类型的故障通知消息,由物理主机在利用VM的地址信息确定VM为运行在本物理主机的VM时,利用VM的故障类型对VM进行故障处理。在上述实现方式中,VM不需要安装HA工具就可以实现VM检测/备份功能,从而避免在各VM上安装HA工具。虚拟路由器作为业务网络的接入设备,能够使用NQA功能探测VM与业务网络的连通性,并在业务网络出现异常时将VM迁移到其它物理主机上运行,快速恢复网络连通。VM不需要使用HA工具发送心跳报文,使得物理主机能准确及时的对VM进行重启或重新配置,从而避免业务应用中断,实现不同状况下业务应用的快速恢复。
基于与上述方法同样的发明构思,本发明实施例中还提供了一种虚拟路由器,应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且所述多个物理主机中的一个物理主机上运行有虚拟路由器,如图5所示,所述虚拟路由器具体包括:
探测模块11,用于利用网络质量分析NQA功能探测VM是否发生故障;
确定模块12,用于在所述VM发生故障时,确定所述VM的故障类型;
发送模块13,用于向物理主机发送故障通知消息,所述故障通知消息中携带所述VM的地址信息以及所述VM的故障类型;
由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
所述探测模块11,具体用于当所述VM上的业务应用为NQA功能支持的业务应用时,向所述VM发送业务探测报文;如果未收到业务探测响应报文,则向所述VM发送网络探测报文;或者,当所述VM上的业务应用为NQA功能不支持的业务应用时,向所述VM发送网络探测报文;
所述确定模块12,具体用于当所述VM上的业务应用为NQA功能支持的业务应用时,如果未收到业务探测响应报文,则确定所述VM发生故障;在向所述VM发送网络探测报文之后,如果未收到网络探测响应报文,则确定所述VM的故障类型为网络连接故障;如果收到网络探测响应报文,则确定所述VM的故障类型为VM业务异常;或者,当所述VM上的业务应用为NQA功能不支持的业务应用时,如果未收到网络探测响应报文,则确定所述VM发生故障,并确定所述VM的故障类型为网络连接故障。
所述发送模块13,具体用于当在所述虚拟路由器上配置HA工具时,通过所述HA工具向本虚拟路由器所在的物理主机发送故障通知消息;由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,
当在所述虚拟路由器上配置HA代理时,通过所述HA代理向所有物理主机发送故障通知消息;由各物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
基于与上述方法同样的发明构思,本发明实施例中还提供了一种物理主机,应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且本物理主机上运行有虚拟路由器,如图6所示,所述物理主机具体包括:
接收模块21,用于接收来自虚拟路由器的故障通知消息,所述故障通知消息中携带VM的地址信息以及VM的故障类型;其中,所述故障通知消息是虚拟路由器利用网络质量分析NQA功能探测到VM发生故障后发送的;
处理模块22,用于在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
所述接收模块21,具体用于当在所述虚拟路由器上配置HA工具时,接收所述虚拟路由器通过所述HA工具向本物理主机发送的故障通知消息;或者,当在所述虚拟路由器上配置HA代理时,接收所述虚拟路由器通过所述HA代理向本物理主机发送的故障通知消息;
所述处理模块22,具体用于当收到虚拟路由器通过HA工具发送的故障通知消息时,在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,当收到虚拟路由器通过HA代理发送的故障通知消息时,在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
所述处理模块22,具体用于在所述VM的故障类型为VM业务异常时,重启所述VM或者重新配置所述VM;或者,在所述VM的故障类型为网络连接故障时,将所述VM迁移到所述HA网络中的其它物理主机上。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种虚拟机故障处理方法,该方法应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且所述多个物理主机中的一个物理主机上运行有虚拟路由器,其特征在于,所述方法包括以下步骤:
所述虚拟路由器利用网络质量分析NQA功能探测VM是否发生故障;
在所述VM发生故障时,所述虚拟路由器确定所述VM的故障类型;
所述虚拟路由器向物理主机发送故障通知消息,所述故障通知消息中携带所述VM的地址信息以及所述VM的故障类型;
由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
2.如权利要求1所述的方法,其特征在于,所述虚拟路由器探测VM是否发生故障,以及确定所述VM的故障类型的过程,具体包括:
当所述VM上的业务应用为NQA功能支持的业务应用时,所述虚拟路由器向所述VM发送业务探测报文;如果未收到业务探测响应报文,则确定所述VM发生故障;所述虚拟路由器向所述VM发送网络探测报文;如果未收到网络探测响应报文,则确定所述VM的故障类型为网络连接故障;如果收到网络探测响应报文,则确定所述VM的故障类型为VM业务异常;
当所述VM上的业务应用为NQA功能不支持的业务应用时,所述虚拟路由器向所述VM发送网络探测报文;如果未收到网络探测响应报文,则确定所述VM发生故障,并确定所述VM的故障类型为网络连接故障。
3.如权利要求1所述的方法,其特征在于,所述虚拟路由器向物理主机发送故障通知消息的过程,具体包括:
当在所述虚拟路由器上配置HA工具时,所述虚拟路由器通过所述HA工具向本虚拟路由器所在的物理主机发送故障通知消息;由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,
当在所述虚拟路由器上配置HA代理时,所述虚拟路由器通过所述HA代理向所有物理主机发送故障通知消息;由各物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
4.如权利要求1或3所述的方法,其特征在于,所述物理主机利用所述VM的故障类型对所述VM进行故障处理的过程,具体包括:
在所述VM的故障类型为VM业务异常时,所述物理主机重启所述VM或者重新配置所述VM;或者,在所述VM的故障类型为网络连接故障时,所述物理主机将所述VM迁移到所述HA网络中的其它物理主机上。
5.一种虚拟路由器,应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且所述多个物理主机中的一个物理主机上运行有虚拟路由器,其特征在于,所述虚拟路由器具体包括:
探测模块,用于利用网络质量分析NQA功能探测VM是否发生故障;
确定模块,用于在所述VM发生故障时,确定所述VM的故障类型;
发送模块,用于向物理主机发送故障通知消息,所述故障通知消息中携带所述VM的地址信息以及所述VM的故障类型;
由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
6.如权利要求5所述的虚拟路由器,其特征在于,
所述探测模块,具体用于当所述VM上的业务应用为NQA功能支持的业务应用时,向所述VM发送业务探测报文;如果未收到业务探测响应报文,则向所述VM发送网络探测报文;或者,当所述VM上的业务应用为NQA功能不支持的业务应用时,向所述VM发送网络探测报文;
所述确定模块,具体用于当所述VM上的业务应用为NQA功能支持的业务应用时,如果未收到业务探测响应报文,则确定所述VM发生故障;在向所述VM发送网络探测报文之后,如果未收到网络探测响应报文,则确定所述VM的故障类型为网络连接故障;如果收到网络探测响应报文,则确定所述VM的故障类型为VM业务异常;或者,当所述VM上的业务应用为NQA功能不支持的业务应用时,如果未收到网络探测响应报文,则确定所述VM发生故障,并确定所述VM的故障类型为网络连接故障。
7.如权利要求5所述的虚拟路由器,其特征在于,
所述发送模块,具体用于当在所述虚拟路由器上配置HA工具时,通过所述HA工具向本虚拟路由器所在的物理主机发送故障通知消息;由所述物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,
当在所述虚拟路由器上配置HA代理时,通过所述HA代理向所有物理主机发送故障通知消息;由各物理主机在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
8.一种物理主机,应用于包括多个物理主机的高可用性HA网络中,各物理主机上运行有虚拟机VM,且本物理主机上运行有虚拟路由器,其特征在于,所述物理主机具体包括:
接收模块,用于接收来自虚拟路由器的故障通知消息,所述故障通知消息中携带VM的地址信息以及VM的故障类型;其中,所述故障通知消息是所述虚拟路由器利用网络质量分析NQA功能探测到VM发生故障后发送的;
处理模块,用于在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理。
9.如权利要求8所述的物理主机,其特征在于,
所述接收模块,具体用于当在所述虚拟路由器上配置HA工具时,接收所述虚拟路由器通过所述HA工具向本物理主机发送的故障通知消息;或者,
当在所述虚拟路由器上配置HA代理时,接收所述虚拟路由器通过所述HA代理向本物理主机发送的故障通知消息;
所述处理模块,具体用于当收到虚拟路由器通过HA工具发送的故障通知消息时,在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,通过心跳消息将所述VM的地址信息以及所述VM的故障类型通知给其它物理主机;或者,
当收到虚拟路由器通过HA代理发送的故障通知消息时,在利用所述VM的地址信息确定所述VM为运行在本物理主机的VM时,利用所述VM的故障类型对所述VM进行故障处理;在利用所述VM的地址信息确定所述VM不是运行在本物理主机的VM时,丢弃本物理主机收到的故障通知消息。
10.如权利要求8或9所述的物理主机,其特征在于,
所述处理模块,具体用于在所述VM的故障类型为VM业务异常时,重启所述VM或者重新配置所述VM;或者,在所述VM的故障类型为网络连接故障时,将所述VM迁移到所述HA网络中的其它物理主机上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310535873.8A CN103607296B (zh) | 2013-11-01 | 2013-11-01 | 一种虚拟机故障处理方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310535873.8A CN103607296B (zh) | 2013-11-01 | 2013-11-01 | 一种虚拟机故障处理方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103607296A true CN103607296A (zh) | 2014-02-26 |
CN103607296B CN103607296B (zh) | 2017-08-22 |
Family
ID=50125497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310535873.8A Active CN103607296B (zh) | 2013-11-01 | 2013-11-01 | 一种虚拟机故障处理方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103607296B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104170323A (zh) * | 2014-04-09 | 2014-11-26 | 华为技术有限公司 | 基于网络功能虚拟化的故障处理方法及装置、系统 |
CN105357038A (zh) * | 2015-10-26 | 2016-02-24 | 北京百度网讯科技有限公司 | 监控虚拟机集群的方法和系统 |
WO2016101486A1 (zh) * | 2014-12-22 | 2016-06-30 | 中兴通讯股份有限公司 | 一种故障修复方法、装置及计算机存储介质 |
CN106293874A (zh) * | 2016-07-29 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种对高可用集群进行监控的方法及装置 |
CN106685695A (zh) * | 2016-11-28 | 2017-05-17 | 上海华为技术有限公司 | 一种故障检测方法及其设备 |
CN106911522A (zh) * | 2017-04-20 | 2017-06-30 | 广东浪潮大数据研究有限公司 | 一种基于云环境的故障处理方法及系统 |
CN107179957A (zh) * | 2016-03-10 | 2017-09-19 | 阿里巴巴集团控股有限公司 | 物理机故障分类处理方法、装置和虚拟机恢复方法、系统 |
CN107491344A (zh) * | 2017-09-26 | 2017-12-19 | 北京思特奇信息技术股份有限公司 | 一种实现虚拟机高可用性的方法及装置 |
CN107885576A (zh) * | 2017-10-16 | 2018-04-06 | 北京易讯通信息技术股份有限公司 | 一种基于OpenStack的私有云中虚拟机HA的方法 |
CN109005051A (zh) * | 2018-06-27 | 2018-12-14 | 中国铁路信息科技有限责任公司 | 基于OpenStack的路由高可用方法和系统 |
CN109445925A (zh) * | 2018-11-09 | 2019-03-08 | 郑州云海信息技术有限公司 | 一种应用程序接管方法、装置及系统 |
WO2020244067A1 (zh) * | 2019-06-04 | 2020-12-10 | 平安科技(深圳)有限公司 | 故障检测方法及相关设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137167A (zh) * | 2011-04-29 | 2011-07-27 | 中国人民解放军国防科学技术大学 | 不间断运行的虚拟机迁移方法及装置 |
CN102355369A (zh) * | 2011-09-27 | 2012-02-15 | 华为技术有限公司 | 虚拟化集群系统及其处理方法和设备 |
CN102819465A (zh) * | 2012-06-29 | 2012-12-12 | 华中科技大学 | 一种虚拟化环境中故障恢复的方法 |
CN103179192A (zh) * | 2013-02-07 | 2013-06-26 | 杭州华三通信技术有限公司 | 虚拟服务器迁移的报文转发方法、系统及nat服务设备 |
-
2013
- 2013-11-01 CN CN201310535873.8A patent/CN103607296B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137167A (zh) * | 2011-04-29 | 2011-07-27 | 中国人民解放军国防科学技术大学 | 不间断运行的虚拟机迁移方法及装置 |
CN102355369A (zh) * | 2011-09-27 | 2012-02-15 | 华为技术有限公司 | 虚拟化集群系统及其处理方法和设备 |
CN102819465A (zh) * | 2012-06-29 | 2012-12-12 | 华中科技大学 | 一种虚拟化环境中故障恢复的方法 |
CN103179192A (zh) * | 2013-02-07 | 2013-06-26 | 杭州华三通信技术有限公司 | 虚拟服务器迁移的报文转发方法、系统及nat服务设备 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2640724C1 (ru) * | 2014-04-09 | 2018-01-11 | Хуавей Текнолоджиз Ко., Лтд. | Способ устранения неисправностей, устройство и система, основанные на виртуализации сетевых функций |
WO2015154246A1 (zh) * | 2014-04-09 | 2015-10-15 | 华为技术有限公司 | 基于网络功能虚拟化的故障处理方法及装置、系统 |
CN104170323A (zh) * | 2014-04-09 | 2014-11-26 | 华为技术有限公司 | 基于网络功能虚拟化的故障处理方法及装置、系统 |
CN105790980B (zh) * | 2014-12-22 | 2020-01-31 | 中兴通讯股份有限公司 | 一种故障修复方法及装置 |
WO2016101486A1 (zh) * | 2014-12-22 | 2016-06-30 | 中兴通讯股份有限公司 | 一种故障修复方法、装置及计算机存储介质 |
CN105790980A (zh) * | 2014-12-22 | 2016-07-20 | 中兴通讯股份有限公司 | 一种故障修复方法及装置 |
CN105357038A (zh) * | 2015-10-26 | 2016-02-24 | 北京百度网讯科技有限公司 | 监控虚拟机集群的方法和系统 |
CN105357038B (zh) * | 2015-10-26 | 2019-05-07 | 北京百度网讯科技有限公司 | 监控虚拟机集群的方法和系统 |
CN107179957B (zh) * | 2016-03-10 | 2020-08-25 | 阿里巴巴集团控股有限公司 | 物理机故障分类处理方法、装置和虚拟机恢复方法、系统 |
CN107179957A (zh) * | 2016-03-10 | 2017-09-19 | 阿里巴巴集团控股有限公司 | 物理机故障分类处理方法、装置和虚拟机恢复方法、系统 |
CN106293874A (zh) * | 2016-07-29 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种对高可用集群进行监控的方法及装置 |
CN106685695A (zh) * | 2016-11-28 | 2017-05-17 | 上海华为技术有限公司 | 一种故障检测方法及其设备 |
CN106911522A (zh) * | 2017-04-20 | 2017-06-30 | 广东浪潮大数据研究有限公司 | 一种基于云环境的故障处理方法及系统 |
CN107491344A (zh) * | 2017-09-26 | 2017-12-19 | 北京思特奇信息技术股份有限公司 | 一种实现虚拟机高可用性的方法及装置 |
CN107491344B (zh) * | 2017-09-26 | 2020-09-01 | 北京思特奇信息技术股份有限公司 | 一种实现虚拟机高可用性的方法及装置 |
CN107885576A (zh) * | 2017-10-16 | 2018-04-06 | 北京易讯通信息技术股份有限公司 | 一种基于OpenStack的私有云中虚拟机HA的方法 |
CN109005051A (zh) * | 2018-06-27 | 2018-12-14 | 中国铁路信息科技有限责任公司 | 基于OpenStack的路由高可用方法和系统 |
CN109445925A (zh) * | 2018-11-09 | 2019-03-08 | 郑州云海信息技术有限公司 | 一种应用程序接管方法、装置及系统 |
CN109445925B (zh) * | 2018-11-09 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种应用程序接管方法、装置及系统 |
WO2020244067A1 (zh) * | 2019-06-04 | 2020-12-10 | 平安科技(深圳)有限公司 | 故障检测方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103607296B (zh) | 2017-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103607296A (zh) | 一种虚拟机故障处理方法和设备 | |
US11070431B2 (en) | System and method for network validation architecture for clustered and federated storage systems | |
US10917308B2 (en) | Virtualized network service management and diagnostics | |
EP3706390B1 (en) | Interactive hierarchical network chord diagram for application dependency mapping | |
US8370466B2 (en) | Method and system for providing operator guidance in network and systems management | |
CN102231681B (zh) | 一种高可用集群计算机系统及其故障处理方法 | |
RU2641706C1 (ru) | Способ обработки отказа сетевой службы, система управления службами и модуль управления системой | |
JP6608979B2 (ja) | 電圧レギュレータセルフバーンインテストのための方法、システム、及び記憶媒体 | |
US20130124712A1 (en) | Elastic cloud networking | |
US10318335B1 (en) | Self-managed virtual networks and services | |
US11003516B2 (en) | Geographical redundancy and dynamic scaling for virtual network functions | |
CN113656147B (zh) | 一种集群部署方法、装置、设备及存储介质 | |
JP6354901B2 (ja) | 仮想マシンの故障検知および回復用管理システム | |
EP3335374B1 (en) | Automatic symptom data collection in cloud deployment | |
CN113037560A (zh) | 业务流量切换方法及装置、存储介质、电子设备 | |
CN109639488B (zh) | 一种多外网分流加速方法及系统 | |
US11502895B1 (en) | Internet failover connectivity and monitoring | |
CN111865688A (zh) | 网关监测方法、装置、电子设备及存储介质 | |
EP2975524B1 (en) | Information processing device | |
Kumar et al. | Design and implementation of fault tolerance technique for internet of things (iot) | |
JP2018025968A (ja) | 復旧制御システム及び方法 | |
Gautam et al. | A novel approach of fault management and restoration of network services in IoT cluster to ensure disaster readiness | |
JP2018026709A (ja) | 障害復旧システム及び方法 | |
Lee et al. | Fault localization in NFV framework | |
CN111193636A (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 | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |