应用生命周期管理系统技术方案

技术编号:18301975 阅读:21 留言:0更新日期:2018-06-28 11:56
本申请涉及应用生命周期管理系统。提供用于将用于使用客户系统中的至少一个虚拟机经由平台执行的一个或多个应用的动作自动化的计算机实现的方法和系统。每个虚拟机包括客户操作系统、客户代理和将要在虚拟机上执行的应用。方法或系统将用户定义的自动化动作以及用户定义的自动化动作之间的因果关系存储在存储器中,从用户定义的自动化动作以及用户定义的自动化动作之间的因果关系中为将在客户系统上的虚拟机上执行的应用导出自动化图;经由平台启动客户系统和虚拟机;以及在客户系统和虚拟机启动之后,根据自动化图经由虚拟机的客户代理执行用户定义的自动化动作。

Application of life cycle management system

This application involves the application of the life cycle management system. A method and system for automate computer implementation of one or more applications that are used to use at least one virtual machine in a customer system and one or more applications executed by the platform. Each virtual machine includes the client operating system, the client agent and the application to be executed on the virtual machine. A method or system stores the causal relationship between user defined automated actions and user defined automated actions in memory, deriving automation diagrams from user defined automated actions and user defined automated actions for applications that will be executed on the virtual machine on the customer system. The customer system and virtual machine are started via the platform; and after the client system and the virtual machine are started, the automated actions of the user defined by the client agent of the virtual machine are executed according to the automation diagram.

【技术实现步骤摘要】
应用生命周期管理系统
本公开内容涉及一种计算机化的方法和系统,该方法和系统用于将由用户指定以在云环境中的虚拟机和网络的分布式系统上以良好定义的并且精心编排的步骤序列或者受管理的步骤序列来配置和供应简单或复杂的应用的动作自动化,并且此外用于实现由用户指定以在客户系统上出故障的情况下自动执行的自动化故障监视和缓解动作。
技术介绍
基于软件的服务可以通过在云上提供的虚拟机的使用被提供给用户。用户通过web客户端可以经由因特网访问云,并且请求通过(一个或多个)应用在(一个或多个)虚拟机上的执行而提供的这些基于软件的服务。然而,随着应用变得越来越复杂,需要更多的处理能力和存储器,当这些应用的组成部分跨客户系统中的不同虚拟机分布和/或在这些应用向用户的供应中发生故障或者其他问题时,这变得更加成问题。这种复杂分布式系统的配置和启动相当繁杂;虚拟网络、虚拟机实例和应用本身需要按照精确并且协调的步骤系列被正确地配置和启动。应用故障或者其他故障可以导致在客户系统的(一个或多个)虚拟机上执行的应用的终止。在这种情况下,管理员可能需要花费大量的资源(包括时间),以在事后识别这种故障的原因。此外,故障不仅对于终端用户是令人沮丧的,而且还可能导致生产力和数据的损失。因此,存在对现有计算机系统和技术的如下技术改进的需求,该技术改进将向用户提供定义和自动化用于在客户系统的(一个或多个)虚拟机上执行的应用的故障监视和缓解的灵活性。还存在对现有计算机系统和技术的如下技术改进的需求,该技术改进将允许用户协调和控制将(诸如在分布式客户系统上)在执行不同应用或者不同应用的组成部分的不同虚拟机上执行的动作的时序。还存在对现有计算机系统和技术的如下技术改进的需求,该技术改进将向用户提供跨通过云提供给一个或多个用户的(一个或多个)应用的生命周期来合并附加的功能和控制,而不必直接地修改或者更新(一个或多个)底层的应用的灵活性。
技术实现思路
为了解决这些问题和其他问题,提供了一种计算机化的方法和系统,该方法和系统使得用户能够定义自动化动作以及自动化动作之间的因果关系,以导出与应用的执行相关联的(一个或多个)自动化图。当启动客户系统和它的(一个或多个)虚拟机以实现应用时,虚拟机被配置为在客户系统的虚拟机的生命周期内根据自动化图经由虚拟机上的客户代理自动地实现由用户定义或者指定的动作(也称作“用户定义的自动化动作”)。以这种方式,有可能在虚拟机的生命周期内自动化各种动作,诸如自动化应用配置、在开机(startup)期间自动化内容加载和应用启动、监视或者关注具体的故障并且自动化它们的缓解以及在关机期间自动化内容持久化(persistence)。此外,通过提供同步屏障-其中分开的机器上的自动化图在继续之前等待彼此,并且通过提供自动化的逐个步骤的消息传递(例如,一个机器上的步骤可以等待来自不同机器上的另一个步骤的信号),有可能诸如在分布式客户系统中跨不同机器来自动化动作。根据示例性实施例,提供一种计算机实现的方法、计算机系统以及具有可执行代码的有形存储介质以将用于使用客户系统中的至少一个虚拟机经由平台执行的一个或多个应用的动作自动化。每个虚拟机包括客户操作系统、客户代理以及将要在虚拟机上执行的应用。计算机实现的方法、计算机系统以及有形存储介质被配置为实现以下操作:将用户定义的自动化动作以及用户定义的自动化动作之间的因果关系存储在存储器中,从用户定义的自动化动作以及用户定义的自动化动作之间的因果关系中为将在客户系统上的虚拟机上执行的应用导出自动化图;经由平台启动客户系统和虚拟机;以及在客户系统和虚拟机启动之后,根据自动化图经由虚拟机的客户代理执行用户定义的自动化动作。平台可以在云计算体系结构上实现。客户系统和虚拟机由平台响应于通过因特网(例如,经由web浏览器)发送的请求而启动。平台可以为客户系统执行初始化、VM启动、配置、应用启动、运行、重启、停止和关机的阶段。用户定义的自动化动作由客户代理在配置、应用启动、运行、重启、停止和关机的阶段中的一个或多个阶段中或者该一个或多个阶段期间执行。自动化图可以是包括多个图节点的有向无环图,该多个图节点具有与将要执行的用户定义的自动化动作中的相应的用户定义的自动化动作对应的有效载荷。图节点的有效载荷根据用户定义的因果关系按照顺序的次序执行。此外,多个图节点可以包括具有多个直接前驱节点的至少一个条件节点。当多个直接前驱图节点中的至少一个直接前驱图节点的有效载荷的执行已经完成时,即使其他直接前驱图节点中的一个或多个直接前驱图节点的执行失败或者没有完成,虚拟机的客户代理也执行条件节点的有效载荷。用户定义的自动化动作可以具有将在两个不同的虚拟机上执行的与用户定义的自动化动作相关联的两个自动化图。两个自动化图中的每个自动化图包括多个图节点,该多个图节点具有与用户定义的自动化动作中的相应的用户定义的自动化动作对应的有效载荷。虚拟机诸如通过使用虚拟机之间的逐个步骤的消息传递来彼此同步地执行两个自动化图的图节点的有效载荷。计算机实现的方法、计算机系统以及具有可执行代码的有形存储介质还可以实现以下操作:提供用户接口,供用户输入与用户定义的自动化动作和因果关系对应的信息;以及基于所输入的用户定义的自动化动作和因果关系来导出自动化图。输入的信息可以对应于具有用于每个自动化动作的先行发生(happens-before)关系和有效载荷的图邻接列表。附图说明图1示出根据本公开的实施例的示例云计算体系结构。图2示出根据本公开的实施例的实例化具有(一个或多个)虚拟机的客户系统的平台的示例,该(一个或多个)虚拟机具有在客户系统的生命周期期间执行用户定义的自动化动作的客户代理。图3-图6示出由用户通过web客户端请求的服务的示例云部署的逐个步骤的功能图。图7示出客户系统生命周期的示例的高级示意图。图8示出示例用户接口,用户可以通过该用户接口输入和定义自动化动作和因果关系,从自动化动作和因果关系中导出(或者构造)自动化动作的自动化图(诸如有向无环图(DAG)),以用于在客户系统的虚拟机被启动以执行应用时在自动化和控制客户系统的虚拟机上的动作中使用。图9示出具有五个步骤的自动化动作的有向无环图的简单示例。图10A和图10B示出具有长期运行的步骤的自动化动作的有向无环图的示例。图11示出具有“不情愿(reluctant)”节点的自动化动作的有向无环图的示例,以解决在客户系统中发生致命故障的情况。图12示出具有条件执行的自动化动作的有向无环图的示例。图13示出具有“渴望节点”的自动化动作的有向无环图的示例,“渴望节点”可以被用来缓解在应用、虚拟机或者客户系统上发生非致命故障的情况。图14示出由用户定义自动化动作以及它们的因果关系从而导出与应用的执行相关联的自动化图,以及当启动客户系统以及它的(一个或多个)虚拟机以执行应用或者应用组成部分时由客户代理实现自动化动作以及它们的因果关系的过程。具体实施方式提供具有集中式自动化系统的计算机化的系统和方法,以解决使得(一个或多个)现有应用以方便并且可靠的方式在云上执行的技术问题。集中式自动化系统(例如,云计算体系结构上的平台)管理通过客户系统以及它的(一个或多个)虚拟机(诸如具有一个或多个虚拟机的分布式客户系统)提供的本文档来自技高网
...
应用生命周期管理系统

【技术保护点】
1.一种将用于使用客户系统中的至少一个虚拟机经由平台执行的一个或多个应用的动作自动化的计算机实现的方法,每个虚拟机包括客户操作系统、客户代理以及将要在虚拟机上执行的应用,所述方法包括:将用户定义的自动化动作以及所述用户定义的自动化动作之间的因果关系存储在存储器中,从所述用户定义的自动化动作以及所述用户定义的自动化动作之间的因果关系中为将在客户系统上的虚拟机上执行的应用导出自动化图;经由所述平台启动所述客户系统和所述虚拟机;以及在所述客户系统和所述虚拟机启动之后,根据所述自动化图经由所述虚拟机的客户代理来执行所述用户定义的自动化动作。

【技术特征摘要】
2016.12.20 US 15/385,1711.一种将用于使用客户系统中的至少一个虚拟机经由平台执行的一个或多个应用的动作自动化的计算机实现的方法,每个虚拟机包括客户操作系统、客户代理以及将要在虚拟机上执行的应用,所述方法包括:将用户定义的自动化动作以及所述用户定义的自动化动作之间的因果关系存储在存储器中,从所述用户定义的自动化动作以及所述用户定义的自动化动作之间的因果关系中为将在客户系统上的虚拟机上执行的应用导出自动化图;经由所述平台启动所述客户系统和所述虚拟机;以及在所述客户系统和所述虚拟机启动之后,根据所述自动化图经由所述虚拟机的客户代理来执行所述用户定义的自动化动作。2.根据权利要求1所述的计算机实现的方法,其中所述平台被配置为对于所述客户系统执行初始化、VM启动、配置、应用启动、运行、重启、停止和关机的阶段,以及其中所述用户定义的自动化动作由所述客户代理在配置、应用启动、运行、重启、停止和关机的阶段中的一个或多个阶段中或者一个或多个阶段期间执行。3.根据权利要求1所述的计算机实现的方法,其中所述平台在云计算体系结构上实现,所述客户系统和所述虚拟机由所述平台响应于经由web浏览器通过因特网发送的请求而启动。4.根据权利要求1所述的计算机实现的方法,其中所述自动化图是包括多个图节点的有向无环图,所述多个图节点具有与将要执行的所述用户定义的自动化动作中的相应的用户定义的自动化动作对应的有效载荷,图节点的所述有效载荷根据所述用户定义的因果关系按照顺序的次序执行。5.根据权利要求4所述的计算机实现的方法,其中所述多个图节点包括具有多个直接前驱节点的至少一个条件节点,当多个直接前驱图节点中的至少一个直接前驱图节点的有效载荷的执行已经完成时,即使其他直接前驱图节点中的一个或多个直接前驱图节点的执行失败或者没有完成,虚拟机的客户代理也执行条件节点的有效载荷。6.根据权利要求4所述的计算机实现的方法,其中所述用户定义的自动化动作具有将在两个不同的虚拟机上执行的与所述用户定义的自动化动作相关联的两个自动化图,所述两个自动化图中的每个自动化图包括多个图节点,所述多个图节点具有与用户定义的自动化动作中的相应的用户定义的自动化动作对应的有效载荷,虚拟机彼此同步地执行所述两个自动化图的图节点的有效载荷。7.根据权利要求6所述的计算机实现的方法,其中所述虚拟机经由所述虚拟机之间的逐个步骤的消息传递,彼此同步地执行所述两个自动化图的图节点的有效载荷。8.根据权利要求1所述的计算机实现的方法,还包括:提供用户接口,供用户输入与用户定义的自动化动作和因果关系对应的信息;以及基于输入的用户定义的自动化动作和因果关系导出所述自动化图。9.根据权利要求8所述的计算机实现的方法,其中所输入的信息对应于具有用于每个自动化动作的先行发生关系和有效载荷的图邻接列表。10.一种存储可执行代码的有形存储介质,所述可执行代码当由一个或多个处理器执行时,实现将用于使用客户系统中的至少一个虚拟机经由平台执行的一个或多个应用的动作自动化的方法,每个虚拟机包括客户操作系统、客户代理以及将要在虚拟机上执行的应用,所述方法包括:将用户定义的自动化动作以及所述用户定义的自动化动作...

【专利技术属性】
技术研发人员:J·普林斯路G·塔莎R·李J·阿娜马来C·董A·古尔陈珂M·卢克曼I·卫莱茨
申请(专利权)人:施耐德电子软件有限责任公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1