The invention discloses a fault detection recovery method and system for a virtual machine, and relates to the field of virtual machines. The method includes the following steps: virtual watchdog when virtual machine is started; high-precision timer is created after virtual machine is started, and high-precision timer is started; kernel monitoring thread and user monitoring thread are created; kernel monitoring thread is used to detect kernel failure heartbeat based on netlink, and user monitoring thread is used to detect user failure heartbeat. When the monitoring thread detects abnormal heartbeat, it closes the watchdog and records the information log of the kernel failure. Then it opens the watchdog. If the abnormal feeding time of the user mode exceeds the preset abnormal feeding time, it records the information log of the user mode failure, and the watchdog triggers the reset of the system failure. The invention can detect the kernel and user state faults of the virtual machine, and realize the collection of the fault log of the kernel and user state and the automatic recovery of the faults.
【技术实现步骤摘要】
虚拟机的故障检测恢复方法及系统
本专利技术涉及虚拟机领域,具体是涉及一种虚拟机的故障检测恢复方法及系统。
技术介绍
NFVI(网络功能虚拟化基础设施解决方案)是用来托管和连接虚拟功能的一组资源。具体来说,NFVI是一种包含服务器、虚拟化管理程序(hypervisor)、操作系统、虚机、虚拟交换机和网络资源的云数据中心。在NFVI领域,虚拟机是承载和运行业务的实体,对虚拟机的可靠运行和故障检测提出了较高的要求,需要检测是内核态故障,还是用户态故障,并记录故障log(日志)。QEMU是一套由法布里斯·贝拉编写的以GPL许可证分发源码的模拟处理器,在GNU/Linux平台上使用广泛。目前,QEMU启动的虚拟机任务进程作为hostlinux的一个用户进程,一般只能检测QEMU进程是否异常退出或处于僵尸进程状态,无法判断虚拟机内核状态是否异常,而且不能及时记录异常日志,重启恢复系统,这样就会造成业务中断,带来致命的电信设备宕机故障。
技术实现思路
本专利技术的目的是为了克服上述
技术介绍
的不足,提供一种虚拟机的故障检测恢复方法及系统,能够可靠地检测虚拟机的内核和用户态故障,实现虚拟机的内核和用户态故障日志收集及故障自动恢复。本专利技术提供一种虚拟机的故障检测恢复方法,包括以下步骤:启动虚拟机时,虚拟看门狗;虚拟机启动后,创建高精度定时器,并启动高精度定时器;创建内核监控线程和用户态监控线程,内核监控线程进行基于netlink的内核故障心跳检测,用户态监控线程进行用户态喂狗检测;内核监控线程检测到心跳异常时,用户态监控线程关闭看门狗,记录内核故障信息日志;用户态监控线程再打 ...
【技术保护点】
1.一种虚拟机的故障检测恢复方法,其特征在于,包括以下步骤:启动虚拟机时,虚拟看门狗;虚拟机启动后,创建高精度定时器,并启动高精度定时器;创建内核监控线程和用户态监控线程,内核监控线程进行基于netlink的内核故障心跳检测,用户态监控线程进行用户态喂狗检测;内核监控线程检测到心跳异常时,用户态监控线程关闭看门狗,记录内核故障信息日志;用户态监控线程再打开看门狗,如果用户态喂狗异常超过预设的喂狗异常时间,则记录用户态故障信息日志,看门狗触发系统故障复位重启。
【技术特征摘要】
1.一种虚拟机的故障检测恢复方法,其特征在于,包括以下步骤:启动虚拟机时,虚拟看门狗;虚拟机启动后,创建高精度定时器,并启动高精度定时器;创建内核监控线程和用户态监控线程,内核监控线程进行基于netlink的内核故障心跳检测,用户态监控线程进行用户态喂狗检测;内核监控线程检测到心跳异常时,用户态监控线程关闭看门狗,记录内核故障信息日志;用户态监控线程再打开看门狗,如果用户态喂狗异常超过预设的喂狗异常时间,则记录用户态故障信息日志,看门狗触发系统故障复位重启。2.如权利要求1所述的虚拟机的故障检测恢复方法,其特征在于:所述创建内核监控线程和用户态监控线程以后,还包括以下步骤:创建Linux文件系统的内核状态交互查询接口文件,作为虚拟机用户态和内核态的交互查询文件。3.如权利要求1所述的虚拟机的故障检测恢复方法,其特征在于:所述内核监控线程按照高精度定时器配置的周期进行基于netlink的内核故障心跳检测,用户态监控线程按照高精度定时器配置的周期进行用户态喂狗检测。4.如权利要求3所述的虚拟机的故障检测恢复方法,其特征在于:所述高精度定时器配置内核故障心跳检测的周期为20ms。5.如权利要求1所述的虚拟机的故障检测恢复方法,其特征在于:所述内核监控线程检测到心跳异常时,用户态监控线程关闭看门狗两个喂狗周期,提前收集内核故障信息日志。6.一种虚拟机的故障检测恢复系统,其特征在于,包括看门狗虚拟单元、高精度定时器创建单元、监控线程创建单元、故障日志收集...
【专利技术属性】
技术研发人员:邓艳山,
申请(专利权)人:烽火通信科技股份有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。