CN112817686A - 检测虚拟机异常的方法、装置、设备和计算机存储介质 - Google Patents

检测虚拟机异常的方法、装置、设备和计算机存储介质 Download PDF

Info

Publication number
CN112817686A
CN112817686A CN201911118776.2A CN201911118776A CN112817686A CN 112817686 A CN112817686 A CN 112817686A CN 201911118776 A CN201911118776 A CN 201911118776A CN 112817686 A CN112817686 A CN 112817686A
Authority
CN
China
Prior art keywords
virtual machine
state
time threshold
monitored
abnormal
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
Application number
CN201911118776.2A
Other languages
English (en)
Other versions
CN112817686B (zh
Inventor
高帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201911118776.2A priority Critical patent/CN112817686B/zh
Publication of CN112817686A publication Critical patent/CN112817686A/zh
Application granted granted Critical
Publication of CN112817686B publication Critical patent/CN112817686B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开一种检测虚拟机异常的方法、装置、设备和计算机存储介质,涉及云计算技术领域。具体实现方案为:针对虚拟机的待监控状态设置初始的第一时间阈值和第二时间阈值;检测待监控状态的持续时长;若待监控状态的持续时长大于或等于第一时间阈值,则确定处于待监控状态的虚拟机异常并发出告警;若待监控状态的持续时长大于或等于第一时间阈值与第二时间阈值的差值,且小于第一时间阈值,则对处于该待监控状态的虚拟机进行预警,以便人工对被预警的虚拟机进行异常确认,利用人工确认的异常虚拟机中该待监控状态的持续时长更新所述第一时间阈值,转至检测所述待监控状态的持续时长的步骤。本申请能够提高虚拟机异常检测的准确性。

Description

检测虚拟机异常的方法、装置、设备和计算机存储介质
技术领域
本申请涉及计算机技术领域,特别涉及云计算技术领域中的检测虚拟机异常的方法、装置、设备和计算机存储介质。
背景技术
在公有云场景下,同一个虚拟机可能在多个业务模块中状态不一致,这就造成了后端运维人员在检测虚拟机状态异常时存在困难。目前采用的方案主要是针对某一模块的虚拟机状态,由运维人员凭经验针对每种状态设置一个固定的时间阈值,若虚拟机处于某一种状态的持续时间超过设置的时间阈值,则进行告警,认为该虚拟机异常。然而,这种凭经验设置时间阈值的方式往往不能够符合实际的状况,造成虚拟机异常检测不准确。例如,凭经验值设置的时间阈值过长,会导致处于异常的虚拟机不能被及时检测,增加虚拟机的不可用时间。
发明内容
有鉴于此,本申请提供了一种检测虚拟机异常的方法、装置、设备和计算机存储介质,以便于提高虚拟机异常检测的准确性。
第一方面,本申请提供了一种检测虚拟机异常的方法,该方法包括:
针对虚拟机的待监控状态设置初始的第一时间阈值和第二时间阈值;
检测所述待监控状态的持续时长;
若所述待监控状态的持续时长大于或等于第一时间阈值,则确定处于所述待监控状态的虚拟机异常并发出告警;
若所述待监控状态的持续时长大于或等于第一时间阈值与第二时间阈值的差值,且小于第一时间阈值,则对处于所述待监控状态的虚拟机进行预警,以便人工对被预警的虚拟机进行异常确认,利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值,转至所述检测所述待监控状态的持续时长的步骤。
根据本申请一优选实施方式,该方法还包括:
将各业务模块分别维护的虚拟机状态进行组合,得到虚拟机在所有业务模块的组合状态;
将得到的各组合状态分别作为所述待监控状态,用于检测虚拟机异常。
根据本申请一优选实施方式,在所述将得到的各组合状态分别作为所述待监控状态之前,还包括:
过滤掉所述得到的各组合状态中实际不存在的状态和正常状态,所述正常状态没有持续时长的限制。
根据本申请一优选实施方式,该方法还包括:
确定所述得到的各组合状态中的错误状态,一旦检测到出现所述错误状态,则确定处于所述错误状态的虚拟机异常。
根据本申请一优选实施方式,利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值,包括:
将人工确认的异常虚拟机中所述待监控状态的最大持续时长作为更新后的第一时间阈值。
根据本申请一优选实施方式,在所述对处于所述待监控状态的虚拟机进行预警之后,还包括:
若人工确认被预警的虚拟机中不存在异常,则不更新第一时间阈值,转至所述检测所述待监控状态的持续时长的步骤。
根据本申请一优选实施方式,该方法还包括:
所述人工对被预警的虚拟机进行异常确认后,采集确认的异常虚拟机占被预警的虚拟机的比例,依据所述比例调整所述第二时间阈值。
根据本申请一优选实施方式,依据所述比例调整所述第二时间阈值包括:
依据预先确定的比例与第二时间阈值之间的线性关系,确定所述采集到的比例对应的第二时间阈值,所述线性关系保证所述确认的异常虚拟机占被预警的虚拟机的比例在预设范围内;
将确定出的第二时间阈值作为更新后的第二时间阈值。
根据本申请一优选实施方式,该方法还包括:
若满足预设的收敛条件,则停止对第一时间阈值的更新;
其中,所述预设的收敛条件包括:
在预设时长内进行预警的次数小于预设预警次数阈值;或者,
没有预警的连续时长超过预设的时长阈值;或者,
对第一时间阈值的更新次数超过预设更新次数阈值。
第二方面,本申请还提供了一种检测虚拟机异常的装置,该装置包括:
阈值设置单元,用于针对虚拟机的待监控状态设置初始的第一时间阈值和第二时间阈值;
时长检测单元,用于检测所述待监控状态的持续时长;
异常告警单元,用于若所述待监控状态的持续时长大于或等于第一时间阈值,则确定处于所述待监控状态的虚拟机异常并发出告警;
疑似预警单元,用于若所述待监控状态的持续时长大于或等于第一时间阈值与第二时间阈值的差值,且小于第一时间阈值,则对处于所述待监控状态的虚拟机进行预警,以便人工对被预警的虚拟机进行异常确认;
所述阈值设置单元,还用于利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值。
根据本申请一优选实施方式,该装置还包括:
状态获取单元,用于将各业务模块分别维护的虚拟机状态进行组合,得到虚拟机在所有业务模块的组合状态;将得到的各组合状态分别作为所述待监控状态,用于检测虚拟机异常。
根据本申请一优选实施方式,所述状态获取单元在所述将得到的各组合状态分别作为所述待监控状态之前,还用于:过滤掉所述得到的各组合状态中实际不存在的状态和正常状态,所述正常状态没有持续时长的限制。
根据本申请一优选实施方式,所述状态获取单元,还用于确定所述得到的各组合状态中的错误状态;
所述异常告警单元,还用于一旦检测到出现所述错误状态,则确定处于所述错误状态的虚拟机异常。
根据本申请一优选实施方式,所述阈值设置单元在利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值时,具体执行:
将人工确认的异常虚拟机中所述待监控状态的最大持续时长作为更新后的第一时间阈值。
根据本申请一优选实施方式,所述阈值设置单元,还用于若人工确认被预警的虚拟机中不存在异常,则不更新第一时间阈值。
根据本申请一优选实施方式,所述阈值设置单元,还用于在所述人工对被预警的虚拟机进行异常确认后,采集确认的异常虚拟机占被预警的虚拟机的比例,依据所述比例调整所述第二时间阈值。
根据本申请一优选实施方式,所述阈值设置单元,还用于若满足预设的收敛条件,则停止对第一时间阈值的更新;
其中,所述预设的收敛条件包括:
在预设时长内进行预警的次数小于预设预警次数阈值;或者,
没有预警的连续时长超过预设的时长阈值;或者,
对第一时间阈值的更新次数超过预设更新次数阈值。
第三方面,本申请还提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。
第四方面,本申请还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如上任一项所述的方法。
从以上技术方案可以看出,本申请提供的方法、装置、设备和计算机存储介质具备以下优点:
1)本申请针对待监控状态设置初始的第一时间阈值,对于持续时长达到第一时间阈值的,直接认为其对应的虚拟机为异常虚拟机;而对于落入疑似异常的时长区间的状态,则由人工对其对应的虚拟机进行异常确认,并依据人工确认的异常虚拟机中该状态的持续时长对第一时间阈值进行更新,以逐渐对第一时间阈值进行优化调整使其符合实际状况。相比较采用固定经验值作为状态的持续时间阈值来判别异常虚拟机的方式,本申请提高了虚拟机异常检测的准确性。
2)本申请将各业务模块分别维护的虚拟机状态进行组合后,将得到的各组合状态分别作为待监控状态进行虚拟机异常检测,充分考虑了各业务模块对同一虚拟机的状态维护数据,可以适用于公有云等复杂场景。
3)本申请中,将各组合状态中实际不存在的状态和正常状态过滤掉,使其不参与状态监控,从而提高了虚拟机异常检测的效率,并节约了资源、提高了系统性能。
4)本申请中,可以依据人工确认出的异常虚拟机占被预警的虚拟机的比例来调整第二时间阈值,保证异常虚拟机的准确率在一定范围内。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本申请实施例提供的检测虚拟机异常的详细方法流程图;
图2是为本申请实施例提供的检测虚拟机异常的装置结构图;
图3是用来实现本申请实施例的检测虚拟机异常的方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本申请中不再采用固定的时间阈值对虚拟机的状态进行监控,核心思想在于,对于待监控状态的持续时长大于或等于第一时间阈值的情况,直接认为处于待监控状态的虚拟机异常;将小于第一时间阈值但大于或等于第一时间阈值与第二时间阈值之间差值的时长区间作为可疑区间,对于待监控状态的持续时间位于该可以区间的虚拟机由人工进行异常确认,并依据人工确认的结果,对异常检测所采用的第一时间阈值进行调整更新,以使其逐渐准确。下面结合实施例对本申请提供的方法进行详细描述。
图1为本申请实施例提供的检测虚拟机异常的详细方法流程图,执行该方法的装置可以设置于具体的网络设备中,例如在公有云场景下的虚拟机,执行该方法的装置可以设置于云端的服务器中,也可以设置于云端的独立检测设备中。如图1中所示,该方法可以包括以下步骤:
在101中,将各业务模块分别维护的虚拟机状态进行组合,得到虚拟机在所有业务模块的组合状态。
对于被监控的系统而言,需要对多个虚拟机进行异常检测,一个虚拟机可能在不同业务模块中状态不一致。本申请中,可以首先构建被监控的系统的状态矩阵,例如假设存在业务模块A和B都维护同一个虚拟机状态,其中A中维护状态集{active,error},B中维护状态集{snapshot,deleting,active},将两个状态集进行组合,如表1中所示。
表1
Figure BDA0002274833710000061
得到的状态矩阵为:
Figure BDA0002274833710000062
即得到的组合状态包括:(active,snapshot)、(active,deleting)、(active,active)、(error,snapshot)、(error,deleting)和(error,active),
在102中,过滤掉组合状态中实际不存在的状态和正常状态,对错误状态进行额外检测,一旦检测到出现错误状态,则确定处于错误状态的虚拟机异常。
在得到的组合状态中,对于一些组合状态是不可能出现的,例如对于(error,snapshot)的组合状态是不可能出现的,即虚拟机不可能在error状态时又处于快照任务状态,因此不需要对其进行监控,过滤掉该组合状态。
另外,在得到的组合状态中,有一些组合状态本身就是正常的、不受持续时长限制的,例如对于(active,active)的组合状态,这种组合状态也不需要监控,过滤掉该组合状态。
还存在一些组合状态本身就是错误状态,例如(error,deleting)状态,这种状态只要一出现就说明虚拟机异常,因此对于这类状态需要采用额外的机制进行检测,即一旦检测到出现错误状态,则确定处于错误状态的虚拟机异常。
在103中,将得到的各组合状态分别作为待监控状态,执行后续步骤。
接续上例,执行完步骤102后得到的组合状态为:(active,snapshot),(active,deleting),(error,active)。
在104中,针对待监控状态设置初始的第一时间阈值T和第二时间阈值t0
本步骤中,初始的T和t0可以采用经验值,其中,T可以初始设置一个较大的值并在后续过程中进行收敛。
对于待监控状态而言,异常的体现是虚拟机在该状态“卡住了”,长时间处于该状态,那么对于用户而言,虚拟机长时间处于某状态被卡住是不可接受的。因此,除了经验值之外,T也可以依据用户协议中用户可接受的虚拟机未响应的最长时间来选取,例如直接选取该最长时间。除此之外,也可以依据其他策略进行选取,例如依据虚拟机从创建到完成快照所需要的时间来确定,等等,在此不做穷举。
在105中,检测待监控状态的持续时长,若待监控状态的持续时长大于或等于T,则执行106;若待监控状态的持续时长大于或等于T-t0,且小于T,则执行107;若待监控状态的持续时长小于T-t0,则执行109。
虚拟机状态变化时会打上状态变化时刻的时间戳,本申请中对待监控状态的持续时长进行监控时,依据虚拟机状态变化时刻的时间戳就能够获知当前待监控状态的持续时长,即将当前检测时间与状态变化时刻的时间戳之间的差值。
在106中,确定处于该待监控状态的虚拟机异常并发出告警。可以待对异常虚拟机恢复正常后,继续转至105对该待监控状态进行监控。
若待监控状态的持续时长达到T,则可以直接确定处于待监控状态的虚拟机异常,进行告警,暂时结束对该待监控状态的监控。然后可以对异常虚拟机进行修复等处理,待异常虚拟机恢复正常后,可以继续转至105对该待监控状态进行监控。
在107中,对处于该待监控状态的虚拟机进行预警,以便人工对被预警的虚拟机进行异常确认。
若待监控状态的持续时长未达到T,但超过了T-t0,即持续时长处于区间[T-t0,T),则可以认为处于该待监控状态的虚拟机疑似异常。可以进行预警,告知处于该待监控状态的虚拟机疑似异常。然后由人工对被预警的虚拟机进行异常确认。
需要说明的是,本申请实施例中对于告警、预警的方式并不加以限制,可以采用但不限于:发出声音、在屏幕上展示信息、向指定终端发送消息、通过震动装置进行震动等等。
在108中,利用人工确认的异常虚拟机中该待监控状态的持续时长更新T的取值,转至105继续对该待监控状态进行监控。
对于被预警的虚拟机经过人工确认后,可能全部都是异常虚拟机,也可能部分是异常虚拟机,还可能均不是异常虚拟机。那么对于前两种情况,即全部都是异常虚拟机和部分是异常虚拟机的情况,可以将人工确认的异常虚拟机中待监控状态的最大持续时长作为新的T。
将人工确认的异常虚拟机中待监控状态的最大持续时长作为新的T是一种优选的实施方式,除了这种方式之外,也可以将人工确认的异常虚拟机的待监控状态的持续时长的中值、均值等作为新的T。
若人工确认不存在异常虚拟机,则可以保持目前的T不变,继续105。
在109中,确定处于该待监控状态的虚拟机目前正常,转至105继续对该待监控状态进行监控。
另外,在上述流程中,若达到收敛条件,则可以停止对T的更新。其中收敛条件可以包括但不限于以下几种:
1)在预设时长内进行预警的次数小于预设预警次数阈值。这种情况说明疑似异常的虚拟机数量很少了,目前的T能够比较准确地区分出异常虚拟机和正常虚拟机,则可以停止对T的更新。
2)没有预警的连续时长超过预设的时长阈值。这种情况说明很长时间没有疑似异常的虚拟机了,目前的T能够比较准确地区分出异常虚拟机和正常虚拟机,则可以停止对T的更新。
3)对T的更新次数超过预设更新次数阈值。
在本申请实施例中,针对各待监控状态的t0可以采用固定值,也可以在检测过程中依据预警的准确率对t0进行调整。具体地,在步骤107中,人工对被预警的虚拟机进行异常确认后,采集确认的异常虚拟机占被预警的虚拟机的比例S,依据比例S调整t0
其中,可以先确定比例与t0之间的线性关系,该线性关系可以通过预先对多次状态检测采集的比例和t0,利用线性回归分析对S和t0之间的线性关系进行拟合,从而保证S在预设范围内,即保证一定的准确率,例如保证S的取值在99%以上。
其中,线性关系的形式可以是诸如:S=w×t0+e
w为斜率参数,e为误差因子。
以上是对本申请所提供方法进行的详细描述,下面结合实施例对本申请所提供的装置进行详细描述。
图2为本申请实施例提供的检测虚拟机异常的装置结构图,如图2中所示,该装置可以包括:阈值设置单元01、时长检测单元02、异常告警单元03和疑似预警单元04,还可以包括状态获取单元05。其中,各组成单元的主要功能如下:
阈值设置单元01负责针对虚拟机的待监控状态设置初始的第一时间阈值和第二时间阈值。
时长检测单元02负责检测待监控状态的持续时长。
异常告警单元03负责若待监控状态的持续时长大于或等于第一时间阈值,则确定处于待监控状态的虚拟机异常并发出告警。
疑似预警单元04负责若待监控状态的持续时长大于或等于第一时间阈值与第二时间阈值的差值,且小于第一时间阈值,则对处于待监控状态的虚拟机进行预警,以便人工对被预警的虚拟机进行异常确认。
阈值设置单元01利用人工确认的异常虚拟机中待监控状态的持续时长更新第一时间阈值。优选地,阈值设置单元01可以将人工确认的异常虚拟机中待监控状态的最大持续时长作为更新后的第一时间阈值。
若人工确认被预警的虚拟机中不存在异常,则阈值设置单元01不更新第一时间阈值。
状态获取单元05负责将各业务模块分别维护的虚拟机状态集合进行组合,得到虚拟机在所有业务模块的组合状态;将得到的各组合状态分别作为待监控状态,用于检测虚拟机异常。
优选地,状态获取单元05在将得到的各组合状态分别作为待监控状态之前,还可以过滤掉得到的各组合状态中实际不存在的状态和正常状态,正常状态没有持续时长的限制。
状态获取单元05还可以确定得到的各组合状态中的错误状态,异常告警单元03一旦检测到出现错误状态,则直接确定处于错误状态的虚拟机异常。
上述第二时间阈值可以采用固定的取值,也可以由阈值设置单元01在人工对被预警的虚拟机进行异常确认后,采集确认的异常虚拟机占被预警的虚拟机的比例,依据比例调整第二时间阈值。
具体地,阈值设置单元01可以依据预先确定的比例与第二时间阈值之间的线性关系,确定所述采集到的比例对应的第二时间阈值,其中线性关系保证确认的异常虚拟机占被预警的虚拟机的比例在预设范围内;将确定出的第二时间阈值作为更新后的第二时间阈值。
更进一步地,阈值设置单元01还用于若满足预设的收敛条件,则停止对第一时间阈值的更新。
其中,预设的收敛条件可以包括但不限于:
在预设时长内进行预警的次数小于预设预警次数阈值;或者,
没有预警的连续时长超过预设的时长阈值;或者,
对第一时间阈值的更新次数超过预设更新次数阈值。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图3所示,是根据本申请实施例的检测虚拟机异常的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图3所示,该电子设备包括:一个或多个处理器301、存储器302,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图3中以一个处理器301为例。
存储器302即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的检测虚拟机异常的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的检测虚拟机异常的方法。
存储器302作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的检测虚拟机异常的方法对应的程序指令/模块。处理器301通过运行存储在存储器302中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的检测虚拟机异常的方法。
存储器302可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据检测虚拟机异常的电子设备的使用所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器302可选包括相对于处理器301远程设置的存储器,这些远程存储器可以通过网络连接至检测虚拟机异常的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
检测虚拟机异常的方法的电子设备还可以包括:输入装置303和输出装置304。处理器301、存储器302、输入装置303和输出装置304可以通过总线或者其他方式连接,图3中以通过总线连接为例。
输入装置303可接收输入的数字或字符信息,以及产生与检测虚拟机异常的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置304可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
从以上描述可以看出,本申请提供的方法、装置、设备和计算机存储介质具备以下优点:
1)本申请针对待监控状态设置初始的第一时间阈值,对于持续时长达到第一时间阈值的,直接认为其对应的虚拟机为异常虚拟机;而对于落入疑似异常的时长区间的状态,则由人工对其对应的虚拟机进行异常确认,并依据人工确认的异常虚拟机中该状态的持续时长对第一时间阈值进行更新,以逐渐对第一时间阈值进行优化调整使其符合实际状况。相比较采用固定经验值作为状态的持续时间阈值来判别异常虚拟机的方式,本申请提高了虚拟机异常检测的准确性。
2)本申请将各业务模块分别维护的虚拟机状态进行组合后,将得到的各组合状态分别作为待监控状态进行虚拟机异常检测,充分考虑了各业务模块对同一虚拟机的状态维护数据,可以适用于公有云等复杂场景。
3)本申请中,将各组合状态中实际不存在的状态和正常状态过滤掉,使其不参与状态监控,从而提高了虚拟机异常检测的效率,并节约了资源、提高了系统性能。
4)本申请中,可以依据人工确认出的异常虚拟机占被预警的虚拟机的比例来调整第二时间阈值,保证异常虚拟机的准确率在一定范围内。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (19)

1.一种检测虚拟机异常的方法,其特征在于,该方法包括:
针对虚拟机的待监控状态设置初始的第一时间阈值和第二时间阈值;
检测所述待监控状态的持续时长;
若所述待监控状态的持续时长大于或等于第一时间阈值,则确定处于所述待监控状态的虚拟机异常并发出告警;
若所述待监控状态的持续时长大于或等于第一时间阈值与第二时间阈值的差值,且小于第一时间阈值,则对处于所述待监控状态的虚拟机进行预警,以便人工对被预警的虚拟机进行异常确认,利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值,转至所述检测所述待监控状态的持续时长的步骤。
2.根据权利要求1所述的方法,其特征在于,该方法还包括:
将各业务模块分别维护的虚拟机状态进行组合,得到虚拟机在所有业务模块的组合状态;
将得到的各组合状态分别作为所述待监控状态,用于检测虚拟机异常。
3.根据权利要求2中所述的方法,其特征在于,在所述将得到的各组合状态分别作为所述待监控状态之前,还包括:
过滤掉所述得到的各组合状态中实际不存在的状态和正常状态,所述正常状态没有持续时长的限制。
4.根据权利要求2所述的方法,其特征在于,该方法还包括:
确定所述得到的各组合状态中的错误状态,一旦检测到出现所述错误状态,则确定处于所述错误状态的虚拟机异常。
5.根据权利要求1所述的方法,其特征在于,利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值,包括:
将人工确认的异常虚拟机中所述待监控状态的最大持续时长作为更新后的第一时间阈值。
6.根据权利要求1所述的方法,其特征在于,在所述对处于所述待监控状态的虚拟机进行预警之后,还包括:
若人工确认被预警的虚拟机中不存在异常,则不更新第一时间阈值,转至所述检测所述待监控状态的持续时长的步骤。
7.根据权利要求1所述的方法,其特征在于,该方法还包括:
所述人工对被预警的虚拟机进行异常确认后,采集确认的异常虚拟机占被预警的虚拟机的比例,依据所述比例调整所述第二时间阈值。
8.根据权利要求7所述的方法,其特征在于,依据所述比例调整所述第二时间阈值包括:
依据预先确定的比例与第二时间阈值之间的线性关系,确定所述采集到的比例对应的第二时间阈值,所述线性关系保证所述确认的异常虚拟机占被预警的虚拟机的比例在预设范围内;
将确定出的第二时间阈值作为更新后的第二时间阈值。
9.根据权利要求1所述的方法,其特征在于,该方法还包括:
若满足预设的收敛条件,则停止对第一时间阈值的更新;
其中,所述预设的收敛条件包括:
在预设时长内进行预警的次数小于预设预警次数阈值;或者,
没有预警的连续时长超过预设的时长阈值;或者,
对第一时间阈值的更新次数超过预设更新次数阈值。
10.一种检测虚拟机异常的装置,其特征在于,该装置包括:
阈值设置单元,用于针对虚拟机的待监控状态设置初始的第一时间阈值和第二时间阈值;
时长检测单元,用于检测所述待监控状态的持续时长;
异常告警单元,用于若所述待监控状态的持续时长大于或等于第一时间阈值,则确定处于所述待监控状态的虚拟机异常并发出告警;
疑似预警单元,用于若所述待监控状态的持续时长大于或等于第一时间阈值与第二时间阈值的差值,且小于第一时间阈值,则对处于所述待监控状态的虚拟机进行预警,以便人工对被预警的虚拟机进行异常确认;
所述阈值设置单元,还用于利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值。
11.根据权利要求10所述的装置,其特征在于,该装置还包括:
状态获取单元,用于将各业务模块分别维护的虚拟机状态进行组合,得到虚拟机在所有业务模块的组合状态;将得到的各组合状态分别作为所述待监控状态,用于检测虚拟机异常。
12.根据权利要求11所述的装置,其特征在于,所述状态获取单元在所述将得到的各组合状态分别作为所述待监控状态之前,还用于:过滤掉所述得到的各组合状态中实际不存在的状态和正常状态,所述正常状态没有持续时长的限制。
13.根据权利要求11所述的装置,其特征在于,所述状态获取单元,还用于确定所述得到的各组合状态中的错误状态;
所述异常告警单元,还用于一旦检测到出现所述错误状态,则确定处于所述错误状态的虚拟机异常。
14.根据权利要求10所述的装置,其特征在于,所述阈值设置单元在利用人工确认的异常虚拟机中所述待监控状态的持续时长更新所述第一时间阈值时,具体执行:
将人工确认的异常虚拟机中所述待监控状态的最大持续时长作为更新后的第一时间阈值。
15.根据权利要求10所述的装置,其特征在于,所述阈值设置单元,还用于若人工确认被预警的虚拟机中不存在异常,则不更新第一时间阈值。
16.根据权利要求10所述的装置,其特征在于,所述阈值设置单元,还用于在所述人工对被预警的虚拟机进行异常确认后,采集确认的异常虚拟机占被预警的虚拟机的比例,依据所述比例调整所述第二时间阈值。
17.根据权利要求10所述的装置,其特征在于,所述阈值设置单元,还用于若满足预设的收敛条件,则停止对第一时间阈值的更新;
其中,所述预设的收敛条件包括:
在预设时长内进行预警的次数小于预设预警次数阈值;或者,
没有预警的连续时长超过预设的时长阈值;或者,
对第一时间阈值的更新次数超过预设更新次数阈值。
18.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的方法。
19.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-9中任一项所述的方法。
CN201911118776.2A 2019-11-15 2019-11-15 检测虚拟机异常的方法、装置、设备和计算机存储介质 Active CN112817686B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911118776.2A CN112817686B (zh) 2019-11-15 2019-11-15 检测虚拟机异常的方法、装置、设备和计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911118776.2A CN112817686B (zh) 2019-11-15 2019-11-15 检测虚拟机异常的方法、装置、设备和计算机存储介质

Publications (2)

Publication Number Publication Date
CN112817686A true CN112817686A (zh) 2021-05-18
CN112817686B CN112817686B (zh) 2023-07-25

Family

ID=75851604

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911118776.2A Active CN112817686B (zh) 2019-11-15 2019-11-15 检测虚拟机异常的方法、装置、设备和计算机存储介质

Country Status (1)

Country Link
CN (1) CN112817686B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117032881A (zh) * 2023-07-31 2023-11-10 广东保伦电子股份有限公司 一种虚拟机异常检测和恢复的方法、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170116084A1 (en) * 2015-10-26 2017-04-27 Beijing Baidu Netcom Science And Technology, Ltd. Method and System for Monitoring Virtual Machine Cluster
WO2017167021A1 (zh) * 2016-03-28 2017-10-05 阿里巴巴集团控股有限公司 异常监控方法及装置
CN107239383A (zh) * 2017-06-28 2017-10-10 郑州云海信息技术有限公司 一种OpenStack虚拟机的故障监控方法及装置
CN110347474A (zh) * 2019-05-30 2019-10-18 苏州浪潮智能科技有限公司 一种管理虚拟机的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170116084A1 (en) * 2015-10-26 2017-04-27 Beijing Baidu Netcom Science And Technology, Ltd. Method and System for Monitoring Virtual Machine Cluster
WO2017167021A1 (zh) * 2016-03-28 2017-10-05 阿里巴巴集团控股有限公司 异常监控方法及装置
CN107239383A (zh) * 2017-06-28 2017-10-10 郑州云海信息技术有限公司 一种OpenStack虚拟机的故障监控方法及装置
CN110347474A (zh) * 2019-05-30 2019-10-18 苏州浪潮智能科技有限公司 一种管理虚拟机的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴天舒;陈蜀宇;张涵翠;周真;: "基于检测域划分的虚拟机异常检测算法", 计算机应用, no. 04 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117032881A (zh) * 2023-07-31 2023-11-10 广东保伦电子股份有限公司 一种虚拟机异常检测和恢复的方法、装置及存储介质

Also Published As

Publication number Publication date
CN112817686B (zh) 2023-07-25

Similar Documents

Publication Publication Date Title
EP3120248B1 (en) Unsupervised anomaly detection for arbitrary time series
CN110705461B (zh) 一种图像处理方法及装置
CN111865682B (zh) 用于处理故障的方法和装置
CN112153343B (zh) 电梯安全监控方法、装置、监控摄像头和存储介质
CN111835592B (zh) 用于确定健壮性的方法、装置、电子设备及可读存储介质
CN111831512A (zh) 用于排查运维异常的方法、装置、电子设备及存储介质
CN114095522A (zh) 车辆监控方法、服务系统、管理终端、车辆及存储介质
CN112052185B (zh) 小程序的异常处理方法、装置、电子设备和存储介质
CN111860644A (zh) 一种异常账号的识别方法、装置、设备和存储介质
CN112486645A (zh) 一种定时任务监控方法、装置、电子设备和介质
CN112016465A (zh) 场景识别方法、装置和系统
CN110659330A (zh) 数据处理方法、装置及存储介质
CN110737560B (zh) 一种服务状态检测方法、装置、电子设备和介质
CN111581049A (zh) 分布式系统运行状态监测方法、装置、设备及存储介质
CN112491858B (zh) 检测异常信息的方法、装置、设备以及存储介质
CN112817686A (zh) 检测虚拟机异常的方法、装置、设备和计算机存储介质
CN111049690A (zh) 设备故障监测处理方法、装置、设备及存储介质
CN112395126B (zh) 故障日志处理方法、装置、电子设备和存储介质
CN111726402B (zh) 用户行为数据处理方法、装置、电子设备及存储介质
CN111885145A (zh) 切换方法、装置、设备及计算机存储介质
CN110477866B (zh) 检测睡眠质量的方法、装置、电子设备和存储介质
US9674060B2 (en) Dynamic and selective management of integration points using performance metrics
JP7153766B2 (ja) Plcの資産の切り替えを検出する方法
CN110887671B (zh) 自动驾驶中定位车辆故障的根本原因的方法和装置
CN111901140A (zh) 异常处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant