一种虚拟机的双机热备方法、双机热备管理服务器和系统的制作方法_2

文档序号:8942957阅读:来源:国知局
【附图说明】
[0040]图1为本发明实施例提供的一种虚拟机的双机热备方法的流程图;
[0041]图2为本发明另一实施例提供的一种虚拟机的双机热备方法的流程图;
[0042]图3为本发明实施例提供的两个虚拟机间的双机热备关系的示意图;
[0043]图4为本发明实施例提供的寻找宿主机重新建立双机热备关系的不意图;
[0044]图5为本发明实施例提供的一种双机热备管理服务器的结构示意图;
[0045]图6为本发明另一实施例提供的一种双机热备管理服务器的结构示意图;
[0046]图7为本发明实施例提供的一种双机热备系统的结构示意图。
【具体实施方式】
[0047]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]如图1所示,本发明实施例提供了一种虚拟机的双机热备方法,该方法可以包括如下步骤:
[0049]步骤101:加载并启动两台相同的虚拟机,建立该两台相同的虚拟机间的通信,配置其中第一虚拟机处于主机状态,第二虚拟机处于备机状态;
[0050]步骤102:确定对外提供访问的入口 IP,并将该入口 IP绑定到第一虚拟机;
[0051]步骤103:控制第一虚拟机通过入口 IP接收访问请求和发送访问请求对应的数据;
[0052]步骤104:控制第一虚拟机将所述访问请求以及该访问请求的处理状况实时发送给第二虚拟机;
[0053]步骤105:在第一虚拟机运行过程中,当监测到第一虚拟机和第二虚拟机间的通信中断时,解除入口 IP与第一虚拟机间的绑定,并将该入口 IP绑定到第二虚拟机,并配置第二虚拟机处于主机状态;
[0054]步骤106:控制第二虚拟机通过入口 IP接续第一虚拟机继续接收访问请求和发送访问请求对应的数据。
[0055]在本发明一个实施例中,为了能够成功使相同的虚拟机间进行通信,在步骤101中,在所述加载并启动两台相同的虚拟机之后,在所述建立所述两台相同的虚拟机间的通信之前,进一步包括:为加载并启动的相同的虚拟机间设置内部IP,在此基础之上,在步骤106之后,进一步包括:加载并启动与所述第一虚拟机和所述第二虚拟机相同的第三虚拟机;配置所述第三虚拟机处于备机状态;控制所述第二虚拟机通过所述内部IP查找所述第三虚拟机,并建立所述第二虚拟机与所述第三虚拟机间的通信,则所述第二虚拟机处于所述第一虚拟机的位置,所述第三虚拟机处于所述第二虚拟机的位置。
[0056]在本发明一个实施例中,将虚拟机应用在云计算当中,为了避免一个计算节点出现故障导致两个虚拟机都不能运行的情况发生,步骤101中,所述加载两台相同的虚拟机的【具体实施方式】:在两个云计算节点上,分别加载一台所述虚拟机,其中,第一计算节点上的虚拟机为第一虚拟机,第二计算节点上的虚拟机为第二虚拟机。在步骤106之后,进一步包括:查找空闲的第三计算节点;在所述第三计算节点上,加载并启动与所述第一虚拟机和所述第二虚拟机相同的第三虚拟机;配置所述第三虚拟机处于备机状态,并建立所述第二虚拟机与所述第三虚拟机间的通信,则所述第二虚拟机处于所述第一虚拟机的位置,所述第三虚拟机处于所述第二虚拟机的位置。
[0057]在本发明一个实施例中,为了能够使云计算节点得到有效的利用,在步骤106之后,进一步包括:解除所述第一虚拟机的读写访问权限,并释放所述第一虚拟机占用的存储空间。
[0058]在本发明一个实施例中,为了能够使相同的虚拟机间能够实时进行通信,该方法进一步包括:为启动的相同的虚拟机间设置心跳机制;步骤104的【具体实施方式】:根据心跳机制,控制所述第一虚拟机将所述访问请求以及该访问请求的处理状况以心跳包的形式实时发送给所述第二虚拟机。
[0059]如图2所示,本发明另一实施例提供了一种虚拟机的双机热备方法,该方法可以包括如下步骤:
[0060]步骤201:在两个云计算节点,分别加载并启动一台相同的虚拟机,配置其中第一虚拟机处于主机状态,第二虚拟机处于备机状态;
[0061]云计算系统一般包含有云存储模块、云计算模块和云管理模块,在云存储模块中,存在有多种虚拟机的镜像文件,而这些镜像文件均可被云计算模块中的每一个云计算节点获取,而在云管理模块设置了本发明的双机热备管理服务器以实现虚拟机的双机热备。例如:企业想要用虚拟机I来处理业务,而本发明实施例所用云计算系统中云计算模块包含5个云计算节点,分别为节点1、节点2、节点3、节点4以及节点5,另外,云管理模块发现节点I和节点4存在较大的存储空间,那么,通过云管理模块控制将云存储模块中的虚拟机I对应的镜像文件分别载入到节点I和节点4,并利用该镜像文件,分别在节点I和节点4完成虚拟机I的加载和启动,同时,设置处于节点I中的虚拟机I处于主机状态,记为主虚拟机,即上述第一虚拟机;设置处于节点4中的虚拟机I处于备机状态,记为备虚拟机,即上述第二虚拟机。
[0062]步骤202:为加载并启动的相同的虚拟机间设置内部IP和心跳机制;
[0063]在本步骤中,为节点I中的主虚拟机和节点4中的备虚拟机设置相同的内部IP,通过这IP可以实现节点I中的主虚拟机和节点4中的备虚拟机的通信,在该步骤中设置的心跳机制可以为设置主虚拟机每5s向备虚拟机发送心跳包,该心跳包包含有业务处理的数据和业务处理的状况等等,备虚拟机接收到心跳包后,既可以确定通信正常,当经过30s,也就是说备虚拟机有6次没有接收到心跳包,则确定节点I中的主虚拟机通信故障。
[0064]步骤203:建立两台相同的虚拟机间的通信;
[0065]在本步骤中,由于节点I中的主虚拟机和节点4中的备虚拟机设置相同的内部IP,那么节点I中的主虚拟机可根据内部IP查找到节点4中的备虚拟机,建立起具有心跳机制的心跳链路。
[0066]步骤204:确定对外提供访问的入口 IP,并将该入口 IP绑定到第一虚拟机;
[0067]在本步骤中,为企业所用的客户端分配一个入口 IP,通过将入口 IP绑定到节点I中的主虚拟机,客户端可利用这个入口 IP访问节点I中的主虚拟机。
[0068]通过上述步骤201至步骤204即建立起两个相同的虚拟机间的双机热备关系,如图3所示,节点I为图中的VM1,在其中存在的虚拟机为主虚拟机,节点4为图中的VM2,在其中存在的虚拟机为备虚拟机,通过心跳线路将该主虚拟机和备虚拟机相连,从而实现心跳机制,而通过入口 IP绑定到VMl中的主虚拟机,形成主线路,通过该主线路接收客户端发送的访问请求和发送访问请求对应的数据给客户端,此时,入口 IP与VM2中备虚拟机间的备线路并未被绑定,则备线路此时并不进行数据交互。
[0069]步骤205:控制第一虚拟机通过入口 IP接收访问请求和发送访问请求对应的数据;
[0070]在本步骤中,企业在进行业务处理过程中,节点I中的主虚拟机通过入口 IP接收客户端发来的访问请求,同时,将处理访问请求的结果返回给客户端。
[0071]步骤206:根据心跳机制,控制第一虚拟机将访问请求以及该访问请求的处理状况以心跳包的形式实时发送给第二虚拟机;
[0072]在本步骤中,通过内部IP,节点I上的主虚拟机每5s向节点4上的备虚拟机发送一次心跳包,心跳包中包含访问请求以及该访问请求的处理状况等等。
[0073]步骤207:在第一虚拟机运行过程中,实时监测第一虚拟机和所述第二虚拟机间的通信是否中断,如果是,则执行步骤208 ;否则,执行步骤205 ;
[0074]例如:当节点4中备虚拟机有连续6个心跳包没有接收到,也就是说,节点I中主虚拟机超过30s没有发送心跳包时,就确定节点I中主虚拟机和节点4中备虚拟机间通信中断,此处的通信中断主要是节点I出现自动关机或死机等故障导致的节点I中的主虚拟机无法正常运行引起的。
[0075]步骤208:解除入口 IP与第一虚拟机间的绑定,并将该入口 IP绑定到第二虚拟机,并配置第二虚拟机处于主机状态;
[0076]步骤209:控制第二虚拟机通过入口 IP接续第一虚拟机继续接收访问请求和发送访问请求对应的数据;
[0077]步骤210:解除第一虚拟机的读写访问权限,并释放第一虚拟机占用的存储空间;
[0078]也就是说,
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1