一种虚拟机故障检测和恢复的方法

文档序号:9579116阅读:307来源:国知局
一种虚拟机故障检测和恢复的方法
【技术领域】
[0001] 本发明涉及云计算与网络技术领域,特别是一种虚拟机故障检测和恢复的方法。
【背景技术】
[0002] 随着云计算行业日益发展,信息安全早已成为众人关注的焦点。数据的安全和应 用业务运行的稳定性越来越重要,如果物理机发生故障,没有及时将虚拟机进行迀移,会带 来以下问题:
[0003] -是虚拟机上的业务中断,外界无法继续进行访问,业务也无法继续进行,导致给 用户带来的损失不断增加。
[0004] 二是数据丢失,没有了故障恢复机制,虚拟机上的数据不能得以迀移,导致故障前 的数据不能继续使用,业务也无法继续正常进行,人工修复数据工作量大,又消耗时间长。
[0005] 三是用户不能及时得知物理机故障消息,业务中断也有可能无人知晓。
[0006] 四是运维人员恢复虚拟机难度大,步骤复杂繁琐,易出错。
[0007] 为了提升虚拟机的稳定性,增强虚拟机上面应用的稳定性,需要一种通过虚拟机 故障检测和恢复的方法,就算遭遇节点故障,也能在较短时间内执行故障恢复,让虚拟机在 别的节点上启动起来,减少带来的损失。

【发明内容】

[0008] 本发明解决的技术问题在于提供一种虚拟机故障检测和恢复的方法,解决了节点 故障带来的业务中断问题,能在较短时间内自动实现故障恢复,启动虚拟机继续运行业务。
[0009] 本发明解决上述技术问题的技术方案是:
[0010] 所述的方法包括如下步骤:
[0011] 步骤1 :部署一个NFS网络文件系统环境,在NFS服务器上面建立一个挂载点,把 镜像放在NFS服务器的挂载点上,所有节点都挂载共享存储,然后用该镜像创建一台虚拟 机;
[0012] 步骤2 :启动检测节点定时器,检测网络和电源是否处于正常状态,否则需要向调 度器发送故障恢复指令;
[0013] 步骤3 :通过调度器根据预先设定的cpu负载策略等调度规选择可用的节点;
[0014] 步骤4 :根据创建虚拟机的时候生成的配置文件,重新生成一台跟原来一样的虚 拟机;
[0015] 步骤5 :启动创建完的虚拟机;
[0016] 步骤6:结束。
[0017] 定时任务不断检测物理机状态,在满足网络不通和电源状态异常时执行故障恢 复;以有效区分网络阻塞还是物理机故障,防止错误判断导致两边启动相同的虚拟机、同时 读写同一个镜像。
[0018] 所述cpu负载策略是指调度器会寻找cpu较低的物理机节点来分配,可以有效做 到负载均衡;
[0019] 所述配置文件是指创建虚拟机的时候就以xml形式记录下这台虚拟机配置属性;
[0020] 所述创建虚拟机是指libvirt命令里面的virshdefine,根据配置文件,通过NFS 上面的镜像创建出跟原有一样的虚拟机;
[0021] 所述启动虚拟机是指libvirt命令里面的virshstart,可以启动某一台虚拟机;
[0022] 所述ipmi是一个智能平台管理服务器,可以检测物理机健康特征,如温度、电压、 风扇工作状态、电源状态等;
[0023] 所述NFS是一个网络文件系统,允许网络中的计算机之间通过TCP/IP网络共享资 源。
[0024] 通过物理机执行libvirt命令来实现虚拟机的冷迀移,存储数据依赖于NFS网络 文件系统保证数据完整和一致性。
[0025] 所述的调度规则指的是策略可以同时满足多个,也可以有指定的规则限制虚拟 机。
[0026] 所述的重新生成一台跟原来一样的虚拟机,指的是创建虚拟机生成出来的配置文 件跟原来的虚拟机配置一样,并且镜像文件和磁盘文件跟原来一样,因而生成出来的虚拟 机跟故障前的虚拟机一模一样,上面的业务数据也保持故障前的一致。
[0027] 本发明通过定时检测来发送故障恢复指令,让虚拟机在另一个节点服务器上启 动。现在云计算上千个节点的场景好多,节点失去连接也成为常事,为了防止业务中断,我 们需要快速自动将故障节点上面的虚拟机进行迀移,保证业务可以尽快恢复,也能让用户 第一时间知道节点故障。检测机制也能区分开始网络阻塞还是节点故障,更加智能地执行 故障恢复,防止错误迀移虚拟机。让集群上面的虚拟机可以更加稳定地运行,当节点发生故 障的时候,将损失降到最低,保护了用户的数据。
【附图说明】
[0028] 下面结合附图对本发明进一步说明:
[0029] 图1为本发明方法流程图;
[0030] 图2为本发明故障恢复模块结构框图。
【具体实施方式】
[0031] 见图1、2所示,本发明的方法包括如下步骤:
[0032] 步骤1 :部署一个NFS网络文件系统环境,在NFS服务器上面建立一个挂载点,把 镜像放在NFS服务器的挂载点上,所有节点都挂载共享存储,然后用该镜像创建一台虚拟 机;
[0033] 步骤2 :启动检测节点定时器,检测网络和电源是否处于正常状态,否则需要向调 度器发送故障恢复指令;
[0034] 步骤3 :通过调度器根据预先设定的cpu负载策略等调度规选择可用的节点;
[0035] 步骤4 :根据创建虚拟机的时候生成的配置文件,重新生成一台跟原来一样的虚 拟机;
[0036] 步骤5 :启动创建完的虚拟机;
[0037] 步骤6:结束。
[0038] 定时任务不断检测物理机状态,在满足网络不通和电源状态异常时执行故障恢 复;以有效区分网络阻塞还是物理机故障,防止错误判断导致两边启动相同的虚拟机、同时 读写同一个镜像。
[0039] 前述cpu负载策略是指调度器会寻找cpu较低的物理机节点来分配,可以有效做 到负载均衡。配置文件是指创建虚拟机的时候就以xml形式记录下这台虚拟机配置属性。 创建虚拟机是指libvirt命令里面的virshdefine,根据配置文件,通过NFS上面的镜像创 建出跟原有一样的虚拟机。启动虚拟机是指libvirt命令里面的virshstart,可以启动某 一台虚拟机。ipmi是一个智能平台管理服务器,可以检测物理机健康特征,如温度、电压、风
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1