CN110515701B - 一种虚拟机的热迁移方法及装置 - Google Patents

一种虚拟机的热迁移方法及装置 Download PDF

Info

Publication number
CN110515701B
CN110515701B CN201910803879.6A CN201910803879A CN110515701B CN 110515701 B CN110515701 B CN 110515701B CN 201910803879 A CN201910803879 A CN 201910803879A CN 110515701 B CN110515701 B CN 110515701B
Authority
CN
China
Prior art keywords
monitoring
state information
virtual machine
resource
host
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.)
Active
Application number
CN201910803879.6A
Other languages
English (en)
Other versions
CN110515701A (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.)
Hangzhou Dt Dream Technology Co Ltd
Original Assignee
Hangzhou Dt Dream 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 Hangzhou Dt Dream Technology Co Ltd filed Critical Hangzhou Dt Dream Technology Co Ltd
Priority to CN201910803879.6A priority Critical patent/CN110515701B/zh
Publication of CN110515701A publication Critical patent/CN110515701A/zh
Application granted granted Critical
Publication of CN110515701B publication Critical patent/CN110515701B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

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

Abstract

本申请提供一种虚拟机的迁移方法和装置,所述方法包括:接收与宿主机中的资源对象相关的用户定制监控策略;解析用户定制监控策略,确定出监控对象和针对监控对象的监控方案;按照监控方案对监控对象指代的资源对象实施监控操作,以获得监控对象的状态信息;将状态信息发送至控制设备,以由控制设备对虚拟机进行热迁移管理。通过本申请的技术方案可以满足不同场景中的用户的监控需求。

Description

一种虚拟机的热迁移方法及装置
技术领域
本申请涉及网络技术领域,具体涉及一种虚拟机的热迁移方法及装置。
背景技术
基础设施即服务(Infrastructure as a Service,简称IaaS)是云计算的一种典型应用模式,通过将硬件资源虚拟化后得到的虚拟机(Virtual Machines,简称VM)是该应用模式下的典型的资源表现形式,即将基础设备组为一种底层资源,从而基于该底层资源为上层提供服务,使得通过一组宿主机的硬件资源便可为多个用户提供虚拟化服务。
在为多用户提供虚拟化服务的过程中,需结合底层资源的使用情况进行分配,然而相关技术中通过配置项所获得的资源状态信息不仅内容单一,而且获取方式固定,对于通过控制设备实现对虚拟机对应的资源对象进行动态调整的重要环节——底层资源的监控过程而言,相关技术无法满足日益复杂的监控需求,从而导致对硬件资源的协调效率低下,进而造成底层资源浪费,甚至导致硬件设备宕机。
发明内容
有鉴于此,本申请提供一种虚拟机的热迁移方法及装置,以解决相关技术中通过配置项获取监控信息的内容单一、获取方式固定而导致的底层资源的监控效率低下的技术问题。
为实现上述目的,本申请提供技术方案如下:
根据本申请的第一方面,提出了一种虚拟机的热迁移方法,应用于宿主机,所述方法包括:
接收与所述宿主机中的资源对象相关的用户定制监控策略;
解析所述用户定制监控策略,确定出监控对象和针对所述监控对象的监控方案;
按照所述监控方案对所述监控对象指代的资源对象实施监控操作,以获得所述监控对象的状态信息;
将所述状态信息发送至控制设备,以由所述控制设备对所述虚拟机进行热迁移管理。
根据本申请的第二方面,提出了一种虚拟机的热迁移方法,应用于控制设备,所述方法包括:
获取宿主机中的资源对象的状态信息,所述状态信息由所述宿主机基于所接收到的用户定制监控策略对所述资源对象实施监控操作而得到;
根据所述状态信息,对所述宿主机上运行的虚拟机进行热迁移管理。
根据本申请的第三方面,提出了一种虚拟机的热迁移装置,应用于宿主机,所述装置包括:
接收单元,接收与所述宿主机中的资源对象相关的用户定制监控策略;
解析单元,解析所述用户定制监控策略,确定出监控对象和针对所述监控对象的监控方案;
监控单元,按照所述监控方案对所述监控对象指代的资源对象实施监控操作,以获得所述监控对象的状态信息;
发送单元,将所述状态信息发送至控制设备,以由所述控制设备对所述虚拟机进行热迁移管理。
根据本申请的第四方面,提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为可执行指令以实现如上述第一方面中任一项所述的方法。
根据本申请的第五方面,提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如上述第一方面中任一所述方法的步骤。
根据本申请的第六方面,提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为可执行指令以实现如上述第二方面中任一所述的方法。
根据本申请的第七方面,提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如上述第二方面中任一所述方法的步骤。
由以上技术方案可见,宿主机上的监控代理服务可以基于用户需求而定制的监控策略实施监控操作,使得通过监控操作而获得的状态信息满足用户的定制需求,解决相关技术中通过配置项获取监控信息的内容单一、获取方式固定而导致的底层资源的监控效率低下的技术问题,满足了不同场景中的用户的监控需求。
附图说明
图1是根据本申请一示例性实施例中的虚拟机的热迁移方法的应用场景图;
图2是根据本申请一示例性实施例提供的一种虚拟机的热迁移方法的流程图;
图3是根据本申请一示例性实施例提供的另一种虚拟机的热迁移方法的流程图;
图4是根据本申请一示例性实施例中的一种虚拟机的热迁移方法的交互图;
图5是根据本申请一示例性实施例中的一种基于宿主机的电子设备的示意结构图;
图6是根据本申请一示例性实施例中的一种虚拟机的热迁移装置的框图;
图7是根据本申请一示例性实施例中的一种基于控制设备的电子设备的示意结构图;
图8是根据本申请一示例性实施例的一种基于控制设备的虚拟机的热迁移装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在云计算的基础设施即服务的应用模式中,为保证系统的平稳运行,则需根据系统中的底层资源的使用情况对系统中不同宿主机上的虚拟机对应的数据信息进行协调配置,即当底层资源的使用负载达到一定阈值的情况下,会将该宿主机上的虚拟机对应的数据信息迁移到其他负载不高的宿主机,即实现对处于异常状态的宿主机上的虚拟机进行热迁移。
热迁移(Live Migration),又叫动态迁移、实时迁移,即虚拟机保存/恢复,通常是将整个虚拟机的运行状态完整保存下来,同时可以快速的恢复到原有硬件平台甚至是不同硬件平台上,通过热迁移的操作,可以使宿主机中原本处于异常状态的资源对象的状态情况恢复至正常状态。
然而相关技术中通过配置项所获得的资源状态信息不仅内容单一,而且获取方式固定,对于通过控制设备实现对虚拟机对应的资源对象进行动态调整的重要环节——底层资源的监控过程而言,相关技术无法满足日益复杂的监控需求,从而导致对硬件资源的协调效率低下,进而造成底层资源浪费,甚至导致硬件设备宕机。
有鉴于此,本申请提供一种虚拟机的热迁移方法及装置,以解决相关技术中通过配置项获取监控信息的内容单一、获取方式固定而导致的底层资源的监控效率低下的技术问题。
请参考图1,图1是根据本申请一示例性实施例中的虚拟机的热迁移方法的应用场景图,如图1所示,该应用场景中可以包括源宿主机101、目的宿主机102和控制设备103,控制设备103为基于DRS服务104和Openstack控制器105抽象出的具备对宿主机及其上的虚拟机的状态进行判断,并实施热迁移操作的热迁移管理设备,在云计算系统中可以包括多个宿主机,每个宿主机上可以包括支持服务运行所必须的资源对象,诸如处理器、内存、磁盘、网卡以及其他资源,每个宿主机上可以设置监控代理服务,以由通过监控代理服务获取该监控代理服务所在的宿主机上的资源对象的状态信息,以及各个虚拟机对应的资源对象的状态信息。
在各个宿主机上可以运行数量相等或不等的虚拟机,如源宿主机101中运行VM1、VM2……VMn共计n个虚拟机,而对于图1所示的目的宿主机102中运行VM1、VM2……VMm共计m个虚拟机,本申请中对n与m的具体值以及关联关系不做限制。
控制设备中的DRS服务可以通过监控代理服务获取该监控代理服务所在的宿主机中的资源对象的状态信息,DRS(Dynamic Resource Scheduler)动态资源调度程序,通过该动态资源调度程序能够基于监控代理服务反馈的状态信息,确定为各个宿主机上的底层资源的负载均衡的虚拟机迁移调度信息,进而通过DRS服务将进行迁移的调动信息发送至Openstack控制器,使得Openstack控制器实现系统的各个宿主机上的底层资源的负载均衡调动。
例如图1中所示,控制设备103中的DRS服务104可以根据源宿主机101中的监控代理服务所上报的关于源宿主机101的状态信息,确定状态信息对应的资源对象是否处于异常状态,当处于异常状态时,DRS服务104可以基于其他宿主机中的监控代理服务所上报的状态信息确定目的宿主机102,进一步的,DRS服务可以通过监控代理服务获取宿主机上的虚拟机对应的资源对象的状态信息,并确定源宿主机中待进行迁移的虚拟机,进而将进行迁移的调度信息,例如至少包含目的宿主机102、源宿主机101及其上的虚拟机VM信息发送至Openstack控制器,以由Openstack控制器将源宿主机101上的虚拟机对应的数据信息动态迁移至目的宿主机102中,使得热迁移后的源宿主机上的资源对象的状态信息恢复至正常状态。
为对本申请进行进一步说明,请参考下列实施例:
图2是根据本申请一示例性实施例提供的一种虚拟机的热迁移方法的流程图,应用于宿主机中,如图2所示,该方法可以包括以下步骤:
步骤201,接收与所述宿主机中的资源对象相关的用户定制监控策略。
在一实施例中,用户定制监控策略为基于用户需求而定制的监控策略,可以制定具有业务针对性的监控策略,进而将所定制的监控策略发送至监控代理服务,以由监控代理服务通过监控操作而得到的资源对象的状态信息满足用户预设的监控需求。
在另一实施例中,可以基于用户发送的选择指令,确定该选择指令对应的预存储的用户定制策略模板,进而将所确定的策略模板作为用户定制监控策略,提高了用户定制监控策略的定制效率。
步骤202,解析所述用户定制监控策略,确定出监控对象和针对所述监控对象的监控方案。
在一实施例中,可以由用户定制监控策略的解析结果得到监控对象和针对监控对象的监控方案。或者,由用户定制监控策略的解析结果得到监控对象,并根据监控对象确定出对应的预定义监控方案。
步骤203,按照所述监控方案对所述监控对象指代的资源对象实施监控操作,以获得所述监控对象的状态信息。
在一实施例中,当所述用户定制监控策略涉及多个资源对象时,判断所述资源对象之间是否满足预设的逻辑关联关系,若满足,则仅获得所述逻辑关联关系中优先发生变化的资源对象的状态信息,并在所述状态信息中设置所述逻辑关联关系的标识。通过本实施例,当用户定制监控策略中涉及到对于逻辑关联关系的多个资源对象时,无需对每一个监控对象均进行监控,而仅需对其中优先发生变化的资源对象进行监控,从而提高了监控代理服务的监控效率。
步骤204,将所述状态信息发送至控制设备,以由所述控制设备对所述虚拟机进行热迁移管理。
在一实施例中,可以提取用户定制监控策略中包含的状态定制方案,根据该状态定制方案确定状态信息中包含的监测项和该监测项的信息输出格式。通过状态定制方案确保输出的状态信息中包括输出对象所需要的监测项,以及监测项的输出格式满足预设的定制要求,从而无需对所输出的状态信息的格式做额外的数据处理过程,提高了状态信息的接收方对状态信息的对接效率。
在一实施例中,可以接收控制设备在异常发生时刻发送的虚拟机信息获取请求,异常发生时刻由所述控制设备基于所述状态信息预测得到。
在关于异常发生时刻的确定过程中,当控制设备判断该状态信息为异常状态时,则将当前时间确定为异常发生时刻;当控制设备确定接收到的状态信息为正常状态时,可以根据状态信息对应的状态值和状态信息评估阈值之间的差值,确定异常发生时刻。
进一步的,宿主机上的监控代理服务可以响应于该虚拟机信息获取请求,并将该宿主机上运行的虚拟机对应的资源对象的状态信息发送至该控制设备,以由控制设备对宿主机上运行的虚拟机进行热迁移。
通过上述实施例,宿主机上的监控代理服务可以基于用户需求而定制的监控策略实施监控操作,使得通过监控操作而获得的状态信息满足用户的定制需求,基于此,用户可根据实际的需求设置监控对象和对该监控对象的监控方式,从而对于任意所设置的监控对象,均可由控制设备基于该监控对象的异常状态信息实施对虚拟机的热迁移操作,满足了不同场景中的用户的监控需求。
图3是根据本申请一示例性实施例提供的另一种虚拟机的热迁移方法的流程图,应用于控制设备中,如图3所示,该方法可以包括以下步骤:
步骤301,获取宿主机中的资源对象的状态信息,该状态信息由宿主机基于所接收到的用户定制监控策略对所述资源对象实施监控操作而得到。
在一实施例中,控制设备可以对所接收到的状态信息中是否含有逻辑关联关系标识进行判断,若确定接收到的状态信息中存在逻辑关联关系的标识,则当状态信息处于异常状态时,确定除了该状态信息对应的资源对象之外,该标识对应的逻辑关联关系中涉及到的其他资源对象的状态信息均处于异常状态。在本实施例中,控制设备仅需接收优先发生变化的资源对象的状态信息,并基于该状态信息中的逻辑关联关系标识,确定除了接收到的资源对象之外,该逻辑关联关系标识涉及的其他资源对象均处于异常状态,从而减少了状态信息交互过程中涉及到的资源对象的数量,提高了对资源对象的监控效率。
步骤302,根据所述状态信息,对所述宿主机上运行的虚拟机进行热迁移管理。
在一实施例中,当状态信息处于异常状态时,控制设备可以向所述宿主机上的各个虚拟机发送虚拟机信息获取请求,所述虚拟机信息获取请求用于请求虚拟机对应的资源对象的状态信息;根据所接收的资源对象的状态信息,对所述宿主机上的虚拟机进行热迁移管理。
在另一实施例中,当状态信息处于正常状态时,根据状态信息评估阈值和所述状态信息对应的状态值之间的差值,确定异常发生时刻;在所述异常发生时刻,向所述宿主机发送针对所述宿主机上的各个虚拟机的虚拟机信息获取请求,所述虚拟机信息获取请求用于请求所述虚拟机对应的资源对象的状态信息;进而根据所接收的资源对象的状态信息,对所述宿主机上的虚拟机进行热迁移。
通过上述实施例,控制设备可以获取宿主机基于接收到的用户定制监控策略而确定的状态信息,所确定的状态信息能够符合用户多方面、多维度的监控需求,监控设备能够对用户预定制的资源对象的状态信息进行判断,并当所定制的资源对象的状态信息处于异常状态时,触发控制设备对该资源对象对应的宿主机上的虚拟机进行热迁移管理,满足了不同场景中的用户监控需求。
下面结合附图,对本申请的具体实施方案进行详细阐述。
为了便于理解,下面对本申请的具体实施方案进行详细阐述:
图4是根据本申请一示例性实施例中的一种虚拟机的热迁移方法的交互图,如图4所示,所述方法包括以下步骤:
步骤401,源主机端的监控代理服务接收用户定制监控策略。
在一实施例中,用户定制监控策略可以为实时根据用户的需求而定制的监控策略。进一步的,可以根据实际业务过程中对于底层资源的消耗情况,制定具有业务针对性的监控策略,进而将所定制的监控策略发送至监控代理服务,以由监控代理服务按照所接收的监控策略实施监控操作。
在另一实施例中,可以将用户所发送的选择指令对应的策略模板确定为用户定制监控策略。进一步的,该策略模板可以预存储于设备中,使得当接收到用户触发的选择指令时,确定与该选择指令对应的策略模板作为用户定制监控策略,而无需用户实时地对监控策略进行编译,从而提高对用户定制监控策略的定制效率。
此外,所定制的监控策略对需要进行监控的资源对象以及监控方式进行限定,需要进行监控的资源对象可以由用户基于业务特征、底层资源的实际情况等进行针对性的定制,定制过程中的编译方式可以借助于命令行,不仅可使所编译的程序具有更高的适用性,而且能够高效地实现对简单的监控策略的运行;或者借助于脚本文件,从而在运行能够实现较为复杂功能的监控策略时,简化运维人员的编译过程,提高对用户定制监控策略的配置效率,本申请对具体定制过程中所采用的编译方式不做限制。
所定制的监控策略中可以包括需要进行监控的单个资源对象,或是多个资源对象,其中,监控策略中所包括的监控对象可以为硬件设备,诸如磁盘、网卡、内存等,本申请对待进行监控的资源对象不做限制,凡是虚拟化服务运行过程中涉及的底层资源均属于本申请中的监控对象的限定范围。
基于业务特征进行定制的过程,诸如:在运行网络带宽消耗量较大的业务服务A的过程中,可以将宿主机的带宽占用量作为监控对象,通过对宿主机的带宽占用量进行监控,并将监控结果反馈至控制设备,使得控制设备能够及时对带宽占用量异常的宿主机上的虚拟机进行热迁移,从而确保了在该业务运行过程中,避免因带宽占用上的过度超卖而导致业务服务A运行中断。
基于底层资源的实际情况进行定制的过程,诸如:由于主机端B中的磁盘在支持本主机端上的任意虚拟机所运行的业务服务一段时间后,均易出现读写速率明显降低的情况,因而对于实际情况中的特定资源对象(例如本实施例中的磁盘)定制为进行监控的资源对象,该磁盘的读写速率值作为监控项,此外,所定制的监控策略中还可以包括获取监控对象的监控项的时间间隔等,使得能够基于用户的需求实时定制并获取到该磁盘的读写速率值,例如主机端B中的磁盘在业务服务运行的各个过程中的读写速率,从而避免因磁盘读写速率的骤降导致对业务服务进展过程中的其他影响因素的误判。
步骤402,监控代理服务解析用户定制监控策略,确定监控对象和监控方案。
在一实施例中,监控代理服务对接收到的用户定制监控策略进行解析,以由该解析的结果得到监控对象,进而根据监控对象确定出对该监控对象的预定义监控方案。
例如:通过对用户定制监控策略进行解析,由解析结果确定监控对象为网卡,进而可调取网卡所对应的预定义的监控方案,从而使得监控代理服务基于该预定义的监控方案实施监控。
在另一实施例中,监控代理服务可基于对用户定制监控策略的解析结果直接得到监控对象和该监控对象的监控方案,从而在预定义的监控方案不符合用户的监控需求的情况下,可通过直接向监控代理服务发送监控方案,实现满足用户需求的监控操作,实现了监控代理服务所执行的监控操作的可扩展性。
在该实施例中,用户定制监控策略中不仅包含了监控对象信息,还包括对该监控对象信息进行监控的程序代码,使得监控代理服务可自动调用相关程序执行解析结果中的程序代码,而无需查找监控对象对应的监控方案,从而进一步简化了监控方案的确定过程,提高了设备的运行效率。
在又一实施例中,若对用户定制监控策略解析后确定该用户定制监控策略中涉及到多个资源对象,则可以判断多个资源对象之间是否满足预设的逻辑关联关系。
该逻辑关联关系可以为:资源对象B与资源对象A之间具有状态变化的正相关的关联性,或者负相关的关联性。具体的,当资源对象A的状态信息发生变化时,资源对象B的状态信息也随之发生变化,且当资源对象A的状态信息经过变化后的参数项的状态值达到某一阈值A时,资源对象B的状态信息对应的参数项的状态也达到某一阈值B。
可以通过设置不同的标识区别不同的逻辑关联关系,具体的,在资源对象之间的逻辑关联不同或者即便相同的逻辑关联,但逻辑关联中涉及到的资源对象存在差别的情况下,便认定需要设置不同的逻辑关联关系的标识。
对于具有逻辑关联关系的资源对象A与资源对象B来说,当在虚拟机的运行过程中,资源对象A的状态优先发生变化,随之资源对象B的状态也发生的变化,且资源对象A的状态值达到阈值后,资源对象B的状态值也达到阈值时,则可以仅将资源对象A作为监控对象,并在后续的确定资源对象的状态信息时,在该状态信息中添加该逻辑关联关系的标识。
进一步的,以资源对象A、资源对象B为例,资源对象A的状态值和资源对象B的状态值可以仅涉及一个值,也可以涉及多个值,在资源对象A和资源对象B分别对应了多个状态信息的状态值的情况下,可以预定义资源对象A和资源对象B中的共同的一项状态信息,作为用于进行评估的状态值,也可以将预定义资源对象A和资源对象B分别涉及的状态信息的状态值进行加权,进而通过资源对象A和资源对象B分别对应的权重值,按照上述方法,确定资源对象A和资源对象B是否具有逻辑关联关系,并在具有逻辑关联关系的情况下,将优先发生变化的权重值对应的资源对象作为监控对象。
通过所添加的逻辑关联关系的标识,监控代理服务仅需监控优先发生变化的资源对象的状态信息,而对于与该优先发生变化的资源对象具有逻辑关联关系的其他资源对象,则无需进行监控,以上述中通过用户定制监控策略解析出的具有逻辑关联关系的资源对象A与资源对象B为例,其中的资源对象A与资源对象B之间具有逻辑关联关系,且在资源对象A的状态信息优先发生变化的情况下,资源对象B的状态信息也随之发生变化,则监控代理服务可以仅将资源对象A作为监控对象,从而实施针对监控对象A的监控方案,而无需对监控对象B进行监控,简化了监控过程,进而提高了监控操作效率。
步骤403,监控代理服务执行监控方案,以确定监控对象的状态信息。
基于用户监控策略而确定的监控对象和该监控对象的监控方案,监控代理服务可通过执行所确定的监控方案,获取监控对象的状态信息。
在确定监控对象的状态信息的过程中,可以获取用户定制监控策略中包含的状态定制方案,在该状态定制方案中可以限定监控对象涉及的监控项和各个监控项对应的状态信息值的输出格式。在限定过程中,可以考虑根据状态信息的输出对象,对状态信息的输出格式进行限定,使得输出后的状态信息符合后续模块处理数据的需求,而无需做额外的数据处理过程,提高了后续处理模块或者运维人员对监控代理服务所输出的状态信息的对接效率。
以监控对象为网卡为例,监控代理服务执行对网卡的监控方案后,可获得网卡的状态信息,进一步来看,若所确定的监控方案中涉及到网卡入流量、网卡速率、网卡出流量等监控项,则监控代理服务执行对网卡的监控方案后,便可获得该网卡的网卡入流量、网卡速率、网卡出流量等监控项分别对应的状态信息。
除此之外,可以对监控项对应的数据信息的输出格式进行限定,诸如可以将监控项对应的数据信息为压缩后格式,使得在对该数据信息传输过程中,占用尽可能小的带宽资源;或者将监控项对应的数据信息的输出格式限定为便于设备直接读取的Json格式,提高设备对数据信息的读取效率;也可以将监控项对应的数据信息的输出格式限定为其他能够支持计算机语言的格式,使得所输出的数据信息在无需进行数据格式转换的情况下,便可由诸如C、C++、Java、JavaScript等计算机语言所编写的模块直接运行处理,从而便于后续模块之间进行调用和处理,而无需进行格式转换,提高了模块之间对于数据信息的解析效率。
步骤404,监控代理服务将状态信息发送至控制设备。
步骤405,控制设备根据接收到的状态信息确定异常发生时刻。
控制设备接收宿主机中的资源对象的状态信息,并对状态信息是否处于异常状态进行判断,若该状态信息表明宿主机上的资源对象处于异常状态,则将当前时间确定为异常发生时刻。
进一步的,对状态信息是否处于异常状态的判断方法可以为基于状态信息中的监控项的状态值与控制设备中的DRS服务上预存储的状态信息评估阈值进行比对,若状态值超过或低于状态信息评估阈值,则确定接收到的状态信息为异常状态。
而若状态值未超过对应的阈值,则确定接收到的状态信息为正常状态。在一实施例中,当控制设备中的DRS服务确定接收到的状态信息处于正常状态,可以根据状态信息对应的状态值和状态信息评估阈值之间的差值,确定异常发生时刻。
具体的,可以状态信息对应的状态值和状态信息评估阈值之间的差异程度进行分级,进而针对不同的级别设置不同的时间间隔。控制设备可以在当前时刻的基础上,增加根据状态值对应的差异程度而确定的时间间隔,得到同一监控对象的状态信息将由正常状态转变为异常状态的异常发生时刻。
在一实施例中,控制设备可以对所接收到的状态信息中是否含有逻辑关联关系标识进行判断,若确定接收到的状态信息中存在逻辑关联关系的标识,则当状态信息处于异常状态时,确定除了该状态信息对应的资源对象之外,该标识对应的逻辑关联关系中涉及到的其他资源对象的状态信息均处于异常状态。
在具体的实施过程中,控制设备可以基于该标识进行查表,以确定该标识对应的逻辑关联关系以及该逻辑关联关系中涉及到的全部资源对象,从而在经过将接收到的状态信息对应的状态值与状态信息评估阈值进行比对,确定接收到的状态信息对应的状态值处于异常状态的情况下,确定该标识对应的逻辑关联关系中涉及到的全部资源对象均处于异常状态。
以上述的具有逻辑关联关系的资源对象A与资源对象B为例,控制设备接收到关于资源对象A的状态信息,且在该状态信息中存在资源对象A与资源对象B的逻辑关联关系的标识C,进而当控制设备确定资源对象A的状态信息处于异常时,即便控制设备未接收到资源对象B的状态信息,亦未对资源对象B的状态信息进行判断,控制设备亦可根据逻辑关联关系的标识C确定该逻辑关联关系中涉及到的全部资源对象,即资源对象A和资源对象B,进而确定资源对象B也处于异常状态。
步骤406,控制设备在异常发生时刻对源主机端上的虚拟机进行热迁移。
在一实施例中,当达到异常发生时刻时,控制设备可以向处于异常状态的状态信息所在的宿主机发送针对该宿主机上的各个虚拟机的虚拟机信息获取请求,以获取资源对象的状态信息处于异常状态的宿主机上的各个虚拟机所对应的资源对象的状态信息,使得控制设备能够根据各个虚拟机对应的资源对象的状态信息,对该宿主机上的虚拟机进行热迁移,从而使经过虚拟机热迁移后的宿主机的资源对象的状态信息恢复至正常状态。
图5是根据本申请一示例性实施例中的一种基于宿主机的电子设备的示意结构图。请参考图5,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成虚拟机的热迁移装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图6,图6是根据本申请一示例性实施例中的一种虚拟机的热迁移装置的框图,如图6所示,在软件实施方式中,该基于宿主机的虚拟机热迁移装置可以包括:
接收单元601,接收与所述宿主机中的资源对象相关的用户定制监控策略;
解析单元602,解析所述用户定制监控策略,确定出监控对象和针对所述监控对象的监控方案;
监控单元603,按照所述监控方案对所述监控对象指代的资源对象实施监控操作,以获得所述监控对象的状态信息;
发送单元604,将所述状态信息发送至控制设备,以由所述控制设备对所述虚拟机进行热迁移管理。
可选的,所述解析单元具体用于:
由所述用户定制监控策略的解析结果得到监控对象和针对所述监控对象的监控方案;
或者,由所述用户定制监控策略的解析结果得到监控对象,并根据所述监控对象确定出对应的预定义监控方案。
可选的,还包括:
提取单元605,提取所述用户定制监控策略中包含的状态定制方案;
确定单元606,根据所述状态定制方案确定所述状态信息包含的监测项和所述监测项的信息输出格式。
可选的,还包括:
请求接收单元607,接收所述控制设备在异常发生时刻发送的虚拟机信息获取请求,所述异常发生时刻由所述控制设备基于所述状态信息预测得到;
响应单元608,响应于所述虚拟机信息获取请求,将所述宿主机上运行的虚拟机对应的资源对象的状态信息发送至所述控制设备,以由所述控制设备对所述宿主机上运行的虚拟机进行热迁移。
可选的,还包括:
判断单元609,当所述用户定制监控策略涉及多个资源对象时,判断所述资源对象之间是否满足预设的逻辑关联关系;
获取单元610,若满足,则仅获得所述逻辑关联关系中优先发生变化的资源对象的状态信息,并在所述状态信息中设置所述逻辑关联关系的标识。
图7是根据本申请一示例性实施例中的一种基于控制设备的电子设备的示意结构图。请参考图7,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成虚拟机的热迁移装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图8,图8是根据本申请一示例性实施例的一种基于控制设备的虚拟机的热迁移装置的框图,如图8所示,在软件实施方式中,该基于控制设备的虚拟机的热迁移装置可以包括:
获取单元801,获取宿主机中的资源对象的状态信息,所述状态信息由所述宿主机基于所接收到的用户定制监控策略对所述资源对象实施监控操作而得到;
管理单元802,根据所述状态信息,对所述宿主机上运行的虚拟机进行热迁移管理。
可选的,所述管理单元802具体可用于:
当状态信息处于异常状态时,向所述宿主机上的各个虚拟机发送虚拟机信息获取请求,所述虚拟机信息获取请求用于请求虚拟机对应的资源对象的状态信息;
根据所接收的资源对象的状态信息,对所述宿主机上的虚拟机进行热迁移管理。
可选的,所述管理单元802具体可用于:
当状态信息处于正常状态时,根据状态信息评估阈值和所述状态信息对应的状态值之间的差值,确定异常发生时刻;
在所述异常发生时刻,向所述宿主机发送针对所述宿主机上的各个虚拟机的虚拟机信息获取请求,所述虚拟机信息获取请求用于请求所述虚拟机对应的资源对象的状态信息;
根据所接收的资源对象的状态信息,对所述宿主机上的虚拟机进行热迁移。
可选的,还包括:
判断单元803,判断所述状态信息中是否存在逻辑关联关系的标识;
确定单元804,若存在,则当所述状态信息处于异常状态时,确定除所述状态信息对应的资源对象之外,所述逻辑关联关系涉及的其他资源对象对应的状态信息均处于异常状态。
所述装置与上述方法相对应,更多相同的细节不再一一赘述。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (13)

1.一种虚拟机的热迁移方法,其特征在于,应用于宿主机;所述方法包括:
接收与所述宿主机中的资源对象相关的用户定制监控策略;
解析所述用户定制监控策略,确定出监控对象和针对所述监控对象的监控方案;
按照所述监控方案对所述监控对象指代的资源对象实施监控操作,以获得所述监控对象的状态信息;
将所述状态信息发送至控制设备,以由所述控制设备对所述虚拟机进行热迁移管理;
还包括:
当所述用户定制监控策略涉及多个资源对象时,判断所述资源对象之间是否满足预设的逻辑关联关系;
若满足,则仅获得所述逻辑关联关系中优先发生变化的资源对象的状态信息,并在所述状态信息中设置所述逻辑关联关系的标识,以使所述控制设备根据所述逻辑关联关系的标识进行热迁移管理。
2.根据权利要求1所述方法,其特征在于,所述解析所述用户定制监控策略,确定出监控对象和针对所述监控对象的监控方案,包括:
由所述用户定制监控策略的解析结果得到监控对象和针对所述监控对象的监控方案;
或者,由所述用户定制监控策略的解析结果得到监控对象,并根据所述监控对象确定出对应的预定义监控方案。
3.根据权利要求1所述方法,其特征在于,还包括:
提取所述用户定制监控策略中包含的状态定制方案;
根据所述状态定制方案确定所述状态信息包含的监测项和所述监测项的信息输出格式。
4.根据权利要求1所述方法,其特征在于,还包括:
接收所述控制设备在异常发生时刻发送的虚拟机信息获取请求,所述异常发生时刻由所述控制设备基于所述状态信息预测得到;
响应于所述虚拟机信息获取请求,将所述宿主机上运行的虚拟机对应的资源对象的状态信息发送至所述控制设备,以由所述控制设备对所述宿主机上运行的虚拟机进行热迁移。
5.一种虚拟机的热迁移方法,其特征在于,应用于控制设备;所述方法包括:
获取宿主机中的资源对象的状态信息,所述状态信息由所述宿主机基于所接收到的用户定制监控策略对所述资源对象实施监控操作而得到;
根据所述状态信息,对所述宿主机上运行的虚拟机进行热迁移管理;
还包括:
判断所述状态信息中是否存在逻辑关联关系的标识;
若存在,则当所述状态信息处于异常状态时,确定除所述状态信息对应的资源对象之外,所述逻辑关联关系涉及的其他资源对象对应的状态信息均处于异常状态。
6.根据权利要求5所述方法,其特征在于,所述根据所述状态信息,对所述宿主机上的虚拟机进行热迁移管理,包括:
当状态信息处于异常状态时,向所述宿主机上的各个虚拟机发送虚拟机信息获取请求,所述虚拟机信息获取请求用于请求虚拟机对应的资源对象的状态信息;
根据所接收的资源对象的状态信息,对所述宿主机上的虚拟机进行热迁移管理。
7.根据权利要求5所述方法,其特征在于,所述根据所述状态信息,对所述宿主机上运行的虚拟机进行热迁移管理,包括:
当状态信息处于正常状态时,根据状态信息评估阈值和所述状态信息对应的状态值之间的差值,确定异常发生时刻;
在所述异常发生时刻,向所述宿主机发送针对所述宿主机上的各个虚拟机的虚拟机信息获取请求,所述虚拟机信息获取请求用于请求所述虚拟机对应的资源对象的状态信息;
根据所接收的资源对象的状态信息,对所述宿主机上的虚拟机进行热迁移。
8.一种虚拟机的热迁移装置,其特征在于,应用于宿主机;所述装置包括:
接收单元,接收与所述宿主机中的资源对象相关的用户定制监控策略;
解析单元,解析所述用户定制监控策略,确定出监控对象和针对所述监控对象的监控方案;
监控单元,按照所述监控方案对所述监控对象指代的资源对象实施监控操作,以获得所述监控对象的状态信息;
发送单元,将所述状态信息发送至控制设备,以由所述控制设备对所述虚拟机进行热迁移管理;
所述发送单元,还用于当所述用户定制监控策略涉及多个资源对象时,判断所述资源对象之间是否满足预设的逻辑关联关系;若满足,则仅获得所述逻辑关联关系中优先发生变化的资源对象的状态信息,并在所述状态信息中设置所述逻辑关联关系的标识后发送至控制设备。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为可执行指令以实现如权利要求2-4中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求2-4中任一项所述方法的步骤。
11.一种虚拟机的热迁移装置,其特征在于,应用于控制设备;所述装置包括:
获取单元,获取宿主机中的资源对象的状态信息,所述状态信息由所述宿主机基于所接收到的用户定制监控策略对所述资源对象实施监控操作而得到;
管理单元,根据所述状态信息,对所述宿主机上运行的虚拟机进行热迁移管理;
所述管理单元,具体用于:
判断所述状态信息中是否存在逻辑关联关系的标识;
若存在,则当所述状态信息处于异常状态时,确定除所述状态信息对应的资源对象之外,所述逻辑关联关系涉及的其他资源对象对应的状态信息均处于异常状态。
12.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为可执行指令以实现如权利要求5-7中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求5-7中任一项所述方法的步骤。
CN201910803879.6A 2019-08-28 2019-08-28 一种虚拟机的热迁移方法及装置 Active CN110515701B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910803879.6A CN110515701B (zh) 2019-08-28 2019-08-28 一种虚拟机的热迁移方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910803879.6A CN110515701B (zh) 2019-08-28 2019-08-28 一种虚拟机的热迁移方法及装置

Publications (2)

Publication Number Publication Date
CN110515701A CN110515701A (zh) 2019-11-29
CN110515701B true CN110515701B (zh) 2020-11-06

Family

ID=68628480

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910803879.6A Active CN110515701B (zh) 2019-08-28 2019-08-28 一种虚拟机的热迁移方法及装置

Country Status (1)

Country Link
CN (1) CN110515701B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238832A (zh) * 2021-05-20 2021-08-10 元心信息科技集团有限公司 虚拟处理器的调度方法、装置、设备及计算机存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106547607A (zh) * 2015-09-17 2017-03-29 中国移动通信集团公司 一种虚拟机动态迁移方法和装置
CN107562601A (zh) * 2017-09-12 2018-01-09 郑州云海信息技术有限公司 一种告警方法及装置
CN107707376A (zh) * 2017-06-09 2018-02-16 贵州白山云科技有限公司 一种监控和告警的方法和系统
CN108306749A (zh) * 2017-01-12 2018-07-20 阿里巴巴集团控股有限公司 一种监控系统报警方法、监控系统和监控装置
CN109766238A (zh) * 2018-12-15 2019-05-17 中国平安人寿保险股份有限公司 基于session数的运维平台性能监控方法、装置及相关设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7899893B2 (en) * 2002-05-01 2011-03-01 At&T Intellectual Property I, L.P. System and method for proactive management of a communication network through monitoring a user network interface
JP5614226B2 (ja) * 2010-10-15 2014-10-29 富士通株式会社 仮想マシン制御装置、仮想マシン制御プログラムおよび仮想マシン制御方法
US9223616B2 (en) * 2011-02-28 2015-12-29 Red Hat Israel, Ltd. Virtual machine resource reduction for live migration optimization
CN102984137A (zh) * 2012-11-14 2013-03-20 江苏南开之星软件技术有限公司 一种基于多目标遗传算法下的多目标服务器调度方法
CN104463492B (zh) * 2014-12-23 2017-12-26 国家电网公司 一种电力系统云仿真平台的运营管理方法
CN106227578A (zh) * 2016-07-12 2016-12-14 腾讯科技(深圳)有限公司 一种虚拟机热迁移的方法、设备及系统
CN107786616A (zh) * 2016-08-30 2018-03-09 江苏蓝创聚联数据与应用研究院有限公司 基于云端的主机智能监控系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106547607A (zh) * 2015-09-17 2017-03-29 中国移动通信集团公司 一种虚拟机动态迁移方法和装置
CN108306749A (zh) * 2017-01-12 2018-07-20 阿里巴巴集团控股有限公司 一种监控系统报警方法、监控系统和监控装置
CN107707376A (zh) * 2017-06-09 2018-02-16 贵州白山云科技有限公司 一种监控和告警的方法和系统
CN107562601A (zh) * 2017-09-12 2018-01-09 郑州云海信息技术有限公司 一种告警方法及装置
CN109766238A (zh) * 2018-12-15 2019-05-17 中国平安人寿保险股份有限公司 基于session数的运维平台性能监控方法、装置及相关设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于Xen的虚拟机动态迁移技术研究及应用";张井昆;《中国优秀硕士学位论文全文数据库 信息科技辑》;20130315(第03期);第38页第3段、第41页第9段、第42页第1段、第43页第2段 *

Also Published As

Publication number Publication date
CN110515701A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
CN107431696B (zh) 用于应用自动化部署的方法和云管理节点
JP6571161B2 (ja) アプリケーショントポロジ関係を探索するための方法、装置、およびシステム
EP3606008A1 (en) Method and device for realizing resource scheduling
US8191069B2 (en) Method of monitoring performance of virtual computer and apparatus using the method
US20140082202A1 (en) Method and Apparatus for Integration of Virtual Cluster and Virtual Cluster System
US10061233B2 (en) Computer system backup performance optimization through performance analytics
US11924117B2 (en) Automated local scaling of compute instances
EP3000024B1 (en) Dynamically provisioning storage
US20200233690A1 (en) Systems and methods for recommending optimized virtual-machine configurations
US20150019722A1 (en) Determining, managing and deploying an application topology in a virtual environment
CN110515701B (zh) 一种虚拟机的热迁移方法及装置
US11150932B2 (en) Virtual disk management for virtual disks accessed from compute only nodes
US20150074454A1 (en) Information processing method and apparatus for migration of virtual disk
US20220206836A1 (en) Method and Apparatus for Processing Virtual Machine Migration, Method and Apparatus for Generating Virtual Machine Migration Strategy, Device and Storage Medium
CN107423114B (zh) 一种基于服务分类的虚拟机动态迁移方法
US20210389994A1 (en) Automated performance tuning using workload profiling in a distributed computing environment
US20220229689A1 (en) Virtualization platform control device, virtualization platform control method, and virtualization platform control program
US8640139B2 (en) System deployment determination system, system deployment determination method, and program
US11388038B2 (en) Operation device and operation method
CN106330595B (zh) 分布式平台的心跳检测方法和装置
US10904324B2 (en) Computer system and method of controlling data processing
CN108776611B (zh) 一种基于云管理平台的云主机管理方法及装置
CN109995571B (zh) 服务器配置与vnf应用匹配的方法及装置
CN107193721B (zh) 一种生成日志的方法和装置
CN107562510B (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