识别用于响应云计算系统中的异常的动作的方法和系统的制作方法

文档序号:6485256阅读:178来源:国知局
识别用于响应云计算系统中的异常的动作的方法和系统的制作方法
【专利摘要】由物理计算系统执行的方法包括使用至少一个所训练的分类器自动识别用于响应云计算系统中的应用的执行中的异常的动作。所述至少一个所训练的分类器把度量组与执行用于致力于解决异常的动作的结果相关。在此还公开了系统和计算机可读介质。
【专利说明】识别用于响应云计算系统中的异常的动作的方法和系统
【背景技术】
[0001]云计算系统包括通过网络互连以执行特定计算任务(诸如,应用的执行)的多个硬件。应用是被设计以便于实施特定活动的计算机程序。云计算系统便于支持应用的执行的基础设施的可扩展性。例如,支持应用的硬件虚拟化的大小和配置可以依赖于由应用的执行提出的计算需求而增加或降低。
[0002]由于云计算系统的相当复杂的性质,所以可能难以:(i)确定影响应用的异常,以及(ii)断定所述异常的解决方案。通常地,自动化性能和测试产品(例如,HP的负载运行器(LoadRunner),惠普,帕洛阿尔托(Palo Alto)(加州),美国)被用于执行云计算系统中的应用并监控所述应用。然后,管理员可以评估所监控的数据以便:(i)确定异常是否影响应用的执行,以及(ii)猜测用于致力于解决异常的动作。除此之外,实现对云计算环境中性能和正确性问题的自动反应已被建议。然而,在操作期间解决应用异常主要是手工操作。
【专利附图】

【附图说明】
[0003]附图描绘了发明的示例、实现方式和配置,而不是发明本身。
[0004]图1是图示了依据示例的所训练的分类器的框图。
[0005]图2示出了各种示例可以在其中被实现的环境。
[0006]图3描绘了依据示例的系统。
[0007]图4是描绘了是依据示例的计算机可读介质的框图。
[0008]图5是描绘了图2的系统的实现方式的框图。
[0009]图6到8、11和12是描绘了实现示例所采取的步骤的流程图。
[0010]图9是图示了与一组度量相关联的签名的示例的表格。
[0011]图10是图示了用于致力于解决异常的动作的示例的表格。
【具体实施方式】
[0012]导言:在接下来的描述中,众多的细节被阐述以提供对在此公开示例的理解。然而,本领域的技术人员将理解所述示例可以在没有这些细节的情形下被实施。尽管有限数量的示例已被公开,但本领域的技术人员将从中认识到众多的修改和变化。旨在所附的权利要求覆盖此类修改和变化。
[0013]在此的各种示例被努力开发以便于使用物理计算系统识别用于致力于解决异常的适合动作,所述异常与云计算系统中的应用的执行相关联。如在此所使用的应用是指可由计算系统执行以便于实施特定任务的一组特定指令。例如,应用可以采用基于网络的工具的形式,所述基于网络的工具给用户提供特定的功能,诸如,注册到在线服务、访问与产品相关的数据(即,浏览),或购买产品。如在此所使用的,云计算系统是指包括被通过网络操作地耦合并且被配置成使得它们能够执行特定计算任务的多个硬件和软件的计算系统。
[0014]实现方式的示例包括确定一组量化度量是否对应于异常。所述组中的量化度量与云计算系统中的应用执行相关联。一组量化度量是指在应用的执行期间被测量或估计的一个或多个度量的聚合。度量是指支持应用的执行的云计算系统中的资源的任何可测量特征(或可以被估计的任何特征)。例如,服务器响应时间或每时间段提供的页面是度量的示例。其他示例包括:CPU利用率、存储器利用率、磁盘利用率和带宽、或由数据库接收/处理的查询。例如,这些特征与云资源的所测量的性能相关。异常可以对应于一个或多个量化度量与正常行为的偏离。所述偏离可以指示应用的非正常执行。在另一个示例中,异常可以对应于为执行应用分配的云资源的故障或失效。此类故障或失效可以通过监控与资源相关联的日志错误消息来检测。
[0015]在 一些实现方式中,一组量化度量被收集并被转换成表示执行应用的云计算系统的资源的状态的签名。签名可以通过把与异常相关的信息包括在签名中而与特定异常相关联,所述信息例如是指示哪些度量对应于非正常行为的标记。签名可以在不与异常相关的情形下(诸如,当应用正依据正常行为在云计算系统中被执行时)被确定。例如,“正常”签名可以被用于例如通过与另一个签名比较来确定特定资源状态是否对应于异常;另一个示例是用于训练把一组量化度量映射到执行动作的结果的分类器。
[0016]以上实现方式的示例进一步包括:当确定一组量化度量对应于异常时,使用至少一个所训练的分量器自动(即,如由物理计算系统执行的)识别用于致力于解决异常的动作。所训练的分类器把度量与执行用于致力于解决异常的动作的结果相关。例如,与所述分类器相关联的结果可以采用值“解决”(如果动作解决异常),或“未解决”(如果动作未解决所示异常)。
[0017]图1图示了所训练的分类器之。用于动作J的所训练的分类器&是规则(或‘分类器’),使得在给定与应用的执行中的异常J相关联的一组量化度量{爲}的情形下,提供动作J解决(或未解决)所示异常的可能性凡为了通过分类器&评估所述可能性,特征向量I可以被从该组量化度量{爲}或从其签名^生成。所训练的分类器&被使用一组训练数据{T}形成。在示例中,训练数据组{/]包括训练三元组;每个训练三元组例如可以包括:(i)所观测的异常签名(ii)用于致力于解决所观测的异常签名Sobs的所测试的动作次&,以及(iii)使用所测试的动作次&的结果7 (即,解决或未解决)。所训练的分类器之的形成在下面参考图3、11和12进一步详述。分类器的示例除了其他的以外包括:K最近邻居分类器、支持向量机分类器、或贝叶斯网络分类器(如下面进一步图示的)。
[0018]接下来的描述被分成多个部分。第一(标记为“环境”)描述了各种示例可以在其中被实现的示例性环境。第二部分(标记为“部件”)描述了用于实现各种示例的各种物理和逻辑部件的示例。第三部分(标记为“操作”),描述了被采用来实现各种示例的步骤。
[0019]环境:图2是各种示例可以在其中被实现的环境的示例的示意图。环境包括云计算系统100(在下文中被称为云100)、客户端设备110和动作识别设备114。云100包括物理硬件102、软件104和虚拟硬件106的组合。云100被配置成:(i)从客户端设备110接收请求108 ;以及(ii)返回请求响应112。借助于示例,云100可以是私有云、公共云或混合云。进一步地,云100可以是混合云,即包括私有云(或多个私有云)和公共云(或多个公共云)的云计算系统的组合。
[0020]物理硬件102除了其他的之外可以包括:处理器、存储器设备和联网装置。虚拟硬件106是由物理硬件102处理并被设计以模仿特定软件的一类软件。例如,虚拟软件106可以包括虚拟机(VM),即像物理机器一样支持应用的执行的计算机的软件实现方式。软件104是配置成促使虚拟硬件106执行应用的一组指令和数据。从而,云100可以使特定应用对于客户端设备110是可用的。客户端设备110表不配置成与云100中部署的应用交互的计算设备。
[0021]应用可以被使用物理硬件102、软件104和虚拟硬件106的特定(但可调增的)配置在云100中执行。应用的示例是电子商务应用,其通过基于网络的工具给用户提供特定功能,例如,注册到在线服务、访问与产品相关的数据(即,浏览)、或购买产品。其他应用的示例除了其他的之外包括企业应用、会计应用、多媒体相关应用、或数据存储应用。
[0022]支持应用的执行的云100的特定配置通常包括多个部件。例如环球网(web)应用可以使用Tomcat环球网服务器和MySQL数据库。这些部件可以是不同类型的。部件类型的示例是服务器,即专门用于依据请求执行与应用的执行相关联的计算任务的硬件和软件的结合。服务器可以包括VM,其包括相应的操作系统。部件类型的另一个示例是中间件,即构建使在一个或多个VM上运行的多个进程便于交互的一组服务的软件。中间件的示例包括支持应用开发和交付的相似工具或环球网数据库。应用可以例如通过添加或移除支持其执行的部件的实例而被缩放。例如,VM或中间件部件可以被添加或移除。
[0023]多个动作可以被执行以用于改变支持应用的执行的云100中的资源的特定配置,诸如接下来的任何一个:Ca)添加部件类型;(b)移除部件类型;(C)重新分配实现部件实例的云100的资源;(d)重新开始部件的实例;或&)改变部件的实例的配置(例如,把更多的存储器或更高的CPU分配到实例)。动作a)和b)是在部件类型上执行的动作;动作c)到e)是部件的实例上的动作。将被理解的是:这个动作列表不是穷举的。有非常多种类的动作可以被执行以用于改变支持应用的执行的云资源的配置。
[0024]在云100中执行应用例如可以涉及接下来的任何一个:(i)从客户端设备110接收多个请求108 ; (ii)依据由应用实现的特定功能处理请求108 ;以及(iii)返回请求响应112。支持应用的执行的云100的资源(例如,物理硬件102、虚拟硬件104、和软件106的部分)可以依赖于在应用上提出的需求而被缩放。例如,云100可以改变被分配到应用的资源的大小,所述改变例如取决于:(a)请求108的数量,(b)与应用交互的设备110的数量,或(c)在应用的性能上的需求(例如,特定服务水平协议)。此外,分配到应用的云100的资源可以被调整,以响应于应用的执行中的异常(如下面进一步图示的)。
[0025]动作识别设备114表示配置成与云100交互以便识别用于响应云100中的应用的执行中的异常的动作的计算系统。动作识别设备114可以通过发送请求116并接收作为对请求116的响应的结果118来与云100交互。借助于示例,请求116可以包括监控请求以便获得与云100中的应用的执行相关的信息(例如,支持所述应用的部件的性能信息或日志消息)。动作识别设备114可以自动识别用于基于来自与监控请求相关的结果118的数据响应异常的动作。在另一个示例中,请求116可以包括动作请求以用于在云100中的应用执行上执行动作。
[0026]向前参看,图5示出了动作识别设备114可以被操作地耦合到识别请求器系统168,使得动作识别设备114在从识别请求器系统168接收到请求时执行动作识别,并且把所述识别的结果发送到识别请求器系统168。如图2中所图示的,动作识别设备114可以在云计算系统122中被部署。云计算系统122可以形成云100的一部分,或是通过链路(参见图5中链路的示例)通信地耦合到云100的不同的云计算系统。其他可替代物也被考虑至|J,例如,动作识别设备114可以被部署在识别请求器的建筑物上。
[0027]数据存储124通常表示配置成存储数据的任何存储器,所述数据可以由动作识别设备114在执行其功能时访问。如将在下面更详细地描述的,那些功能可以包括:通过读取在数据存储124中存储的分类器数据126或在数据存储124中写入更新数据128以便更新与分类器相关联的数据,来访问与所训练的分类器相关的数据。数据存储124被示出为部署在云计算系统130中。可替代地,数据存储124可以被部署在识别请求器的建筑物上。
[0028]部件:图3到5描绘了用于实现各种示例的物理和逻辑部件。图3描绘了识别用于响应云计算系统中的应用的执行中的异常的动作的系统132。在该示例中,系统132包括动作识别引擎134。系统132可以进一步包括:异常确定引擎136、通信引擎138、和/或训练引擎140。
[0029]动作识别引擎134通常表示配置成识别用于响应云计算系统中的应用的执行中的异常的动作的硬件和编程的任何组合。动作识别引擎134通过使用所训练的分类器执行这个任务。当异常确定引擎136确定一组量化度量与异常相关联时,动作识别引擎134可以执行这个任务。可替代地,当接收到和处理来自把一组度量与异常相关联的另一个系统的信号时,动作识别引擎134可以执行这个任务。
[0030]动作识别引擎134可以通过处理与异常相关联的一组量化度量来执行以上的任务。所述组可以包括一个或多个原始值,每个原始值对应于量化度量。量化度量的原始值的示例是:针对时间间隔的所测量的CPU的使用率是80%。在另一个示例中,所述原始值是多个测量结果的平均值。量化的度量可以作为量化度量数据144的一部分而被存储在数据存储142中。
[0031]动作识别引擎134可以处理量化的度量,以便计算动作使用与动作相关联的所训练的分类器解决异常的可能性。为了计算所述可能性,动作识别引擎134可以使用量化度量数据144计算特征向量X。通常地,特征向量Z的格式取决于使用的所训练的分类器。特征向量的示例在下面给出。与所训练的分类器相关联的数据(例如,表现所训练分类器的分类器数据)可以被作为分类器数据148的一部分存储在数据存储142中。与动作(或多个动作)相关联的数据可以被作为动作数据146的一部分存储在数据存储142中。动作数据146可以包括与云计算系统相关联的参数的数据,使得所存储的动作可以在应用的执行中被应用。分类器数据148可以包括与多个所训练的分类器相关的数据,每个所训练的分类器与动作数据146中的动作相关联。
[0032]在示例中,动作识别引擎134通过确定所计算的可能性是否足够高(例如,所计算的可能性比所选择的阈值高)来识别用于响应所述异常的动作。另一个示例如下。动作识别引擎134可以计算动作解决异常的可能性,所述异常与多个动作的所述组量化度量相关联。动作识别引擎134使用与特定动作相关联的分类器以便计算可能性。然后,动作识别引擎134可以基于分数分级不同的动作,所述分数被考虑了动作解决异常的可能性以及用于执行动作的成本针对每个动作计算。在这个示例中,动作数据144可以进一步包括与用于计算执行动作的成本K的函数相关的数据。例如,成本K可以是执行动作的货币成本#,执行动作的时间K执行动作的风险/P,或其组合中的一个(如下面进一步详述的)。
[0033]在动作数据146中存储的动作可以被划分成不同种类的动作。在示例中,动作被划分成部件类型动作和部件实例动作。部件类型动作对应于可以在云计算系统的部件类型上执行的动作,例如,添加运行环球网服务器的VM。部件实例动作对应于可以在云计算系统的部件的实例上执行的动作。把动作划分成不同的种类简化了识别用于致力于解决异常的动作的任务。
[0034]类似地,在分类器数据148中存储的分类器可以被划分成不同种类的分类器。在以上的示例中,分类器可以被划分成部件类型分类器和部件实例分类器。部件类型分类器用于计算部件类型动作解决异常的可能性。部件实例分类器用于计算部件类型动作解决异常的可能性。在示例中,部件类型上的动作可以被与部件实例上的动作独立地评估。
[0035]异常确定引擎136通常表示被配置以用于自动确定量化度量组是否与异常相关联的硬件和编程的任何组合(如下面相对于图7进一步详述的)。为了执行这个任务,异常确定引擎136可以访问形成异常数据149的一部分的过程数据。
[0036]通信引擎138通常表示被配置以使系统132与另一个系统(诸如,云100或识别请求器系统168 (参见图5))通信的硬件和编程的任何组合。通信引擎138可以用于促进系统132对云100中应用的执行的监控。通信引擎138可以用于促使在云100中的应用的执行上应用所识别的动作。通信引擎138可以用于接收来自请求器系统的请求以便执行动作识别。通信引擎138可以用于把所识别的动作或所识别动作的分级传送到客户端计算机系统。从而,便于向用户(例如,负责云100中的应用的正确执行的管理者)推荐所识别的动作。
[0037]训练引擎140通常表示被配置以自动训练分类器的硬件和编程的任何组合。此夕卜,关于训练引擎140如何可以通过处理训练数据组来执行这个任务的细节在下面相对于图12被图示。
[0038]在之前的讨论中,各种部件被描述为硬件和编程的组合。此类部件可以被以多种方式实现。参看图4,编程可以是在有形存储器介质150 (即,计算机可读介质)上存储的处理器可执行的指令,以及硬件可以包括用于执行那些指令的处理器152。存储器150可以被说成存储程序指令,当所述程序指令由处理器152执行时实现图3的系统132。存储器150可以与处理器152被集成在相同的设备中,或者它可以是独立的,但可由那个设备和处理器152访问。
[0039]在一个示例中,程序指令可以是:可以由处理器152执行来实现系统132的安装包的一部分。在这种情形下,存储器150可以是便携式介质(诸如,CD、DVD、或闪存驱动器)或由安装包可以从其被下载和安装的服务器维护的存储器。在另一个示例中,程序指令可以是已安装的一个或多个应用的一部分。在这里,存储器150可以包括诸如硬盘驱动器的集成存储器。
[0040]在图4中,存储器150中存储的可执行程序指令被描绘为动作识别模块154。存储器150可以进一步以异常确定模块156、通信模块158或训练模块160的形式存储可执行程序指令。动作识别模块154表示当被执行时促使实现图3的动作识别引擎134的程序指令。同样地,异常确定模块156表示当被执行时促使实现图3的异常确定引擎136的程序指令。同样地,通信模块158表示当被执行时促使实现图3的通信引擎138的程序指令。同样地,训练模块160表示当被执行时促使实现图3的训练引擎140的程序指令。
[0041]作为进一步的示例,图5描绘了图示由动作确定设备114实现图2中的系统的框图。在图5的示例中,动作确定设备114被示出为包括:存储器162、处理器164和接口 166。处理器164通常表示配置成执行在存储器162中存储的程序指令以执行各种指定功能的任何处理器。接口 166通常表示使动作确定设备114能够经由链路180与例如(i)支持应用的执行的云100中的资源,以及(ii)识别请求器系统168通信的任何接口。在所图示的示例中,支持应用的执行的云100中的部件是环球网服务器的第一实例170、环球网服务器的第二实例172、环球网服务器的第三实例174、数据库的第一实例176、以及数据库的第二实例 178。
[0042]存储器162被示出为包括操作系统(0S)182和应用184。OS 182表示当由处理器164执行时用作应用184能够在其上运行的平台的程序的收集。OS的示例包括(但不限于)各种版本的Linux?和微软的Windows?。应用184表示如下程序指令,当其由处理器164执行时用作识别用于响应云计算系统中应用的执行中的异常的动作的应用。应用184当被执行时可以用作使用从识别请求器系统168传送的数据来识别此类动作的服务。响应于对用于致力于解决与由识别请求器系统168设置的特定度量相关联的特定异常的动作的请求,那个服务把用于致力于解决动作的所识别动作返回到请求器系统168。此类服务可以替代地由代理(未示出)提供。
[0043]参看图3,动作识别引擎134、异常确定引擎136、通信引擎138、和训练引擎140被描述为硬件和编程的组合。取决于所述实施例,硬件部分可以被实现为处理器164。取决于所述实施例,编程部分可以由处理器OS 182、应用184、或其组合实现。
[0044]向回参考图5,云100中的一些部件(诸如,环球网服务器实例170-174)可以被实现为VM。VM可以运行环球网服务器的一个或更多的实例。每个环球网服务器实例可以包括:虚拟化的存储器186、虚拟化的处理器188、和虚拟化接口 190。处理器188通常表示配置成执行在虚拟化存储器186中存储的程序指令以执行各种指定功能的任何虚拟化的资源。接口 190通常表示使实例170-174经由链路180与支持应用的执行的云100中的其他部件(例如,数据库实例176、178)以及客户端设备110、识别请求器系统168、或动作确定设备114通信的任何虚拟化资源。
[0045]存储器186被示出为包括OS 192和应用194。操作系统182表示当由处理器188执行时用作应用194能够在其上运行的平台的程序的收集。操作系统的示例包括(但不限于)各种版本的Linux?和微软的Windows?。应用194表示如下程序指令,当其由处理器164执行时用作可以通过客户端设备110被访问以便实施特定任务的在云计算系统中执行的应用。应用194可以由动作识别设备114访问以便执行在此描述的一些方法。识别请求器系统168可以负责控制应用194的执行。
[0046]数据库实例176、178表示数据库中的数据的逻辑和物理的物化(materialization)、维护数据的文件、维护数据的计算机存储器、和计算机数据存储(即,存储器)。数据库176、178可以被视为合作以用于实现单个数据库的多个实例。云100的部件中的每一个可以包括配置成获取和维护与每个部件的性能相关联的所存储度量的监控器(未示出)。此类监控器还可以生成和维护与部件的运行中的异常相关联的数据日志。
[0047]图5中的部件通过链路180与彼此交互,所述链路通常表示一个或多个电缆、无线、光纤、或经由电信链路的远程连接、红外链路、射频链路、或提供电子通信的任何其他连接器或系统。链路180可以至少部分包括内联网、互联网、或二者的组合。链路180还可以包括中间代理、路由器、交换机、或用于平衡在应用194的执行上由客户端设备110生成的负载的负载平衡器。
[0048]操作:图6到8、11和12是实现用于识别用于致力于解决异常的动作的方法的示例所采取的步骤的示例性流程图。在讨论这些图时,参考了图1-5中的示图以提供上下文的示例。然而,实现方式不限于那些示例。还参考了图9和10中所描绘的示例。再次,此类参考被简单做出以提供上下文的示例。
[0049]图6示出了识别用于致力于解决异常的动作的方法的处理流程600。在步骤602,确定一组量化度量是否对应于异常。参考图3,异常确定引擎136可以负责实现步骤602。向前参看图7,用于自动确定一组量化度量是否对应于异常的方法的示例被作为处理流程700示出。
[0050]在步骤702,一组度量在时间上被监控。在步骤704,通过把度量样本与预定度量正常行为相比较来确定所监控的度量组中的度量是否正经历非正常的行为。此类度量正常行为可以由异常确定引擎136或另一个适合的系统预先确定。预先确定可以包括从终端用户的角度(例如,对请求108的响应时间)和系统利用率的角度(例如,支持应用的执行的云100中资源的利用率)二者来监控应用。度量正常行为的预先确定可以基于测量应用的执行以及与其相关联的资源的用量的监控器。
[0051]在步骤706,确定非正常行为是否对应于异常。步骤706可以通过确定该非正常行为是否满足被分类为异常的特定条件来实现。借助于示例,该非正常行为的统计学显著性可以被计算;然后,基于所计算的统计学显著性确定该非正常行为是否对应于异常。为了确定异常是否‘显著’,可以使用阈值。如果所计算的异常显著性超过阈值,则量化的度量被确定为对应于异常。
[0052]统计学显著性可以被使用不同的参数和相应的权重计算。这些参数例如可以包括接下来的任何一个:(i)在支持应用的执行的配置中示出了非正常行为的多个项目;(ii)示出了非正常行为的多个度量;或(iii)与量化度量的正常行为的偏离。处理流程700促进建立用于确定异常的不同水平,并且因此减少错误报警。
[0053]将被理解的是:处理流程700是用于自动确定一组量化度量是否对应于异常的方法的非限制性示例。其他的方法在此也被考虑到。例如,可以通过比较从量化度量得出的签名与包括一组“正常”签名的预先确定度量正常行为来确定异常。基于所确立的相似性,可以确定所采样的度量的签名是否对应于异常。用于确立签名之间的相似性的方法的示例在序列号为7.502,971的美国专利中被描述,并且被引入于此以供在这个方面参考。在用于自动确定异常的另一个示例中,每个量化度量被直接比较于相应的预先确定的阈值。如果一定数量的阈值被违反,则异常可以被确定。
[0054]继续图6,在步骤604,步骤602的结果被评估以判定处理流程600中的进一步的过程。参考图3,异常确定引擎136可以负责实现步骤604。如果异常被确定,则处理流程600走到步骤608。如果没有异常被确定,则处理流程600结束。可替代地,处理流程600可以顺着闭环606返回到步骤602。然后,步骤602可以被针对另一组量化度量(例如,在特定时间间隔过去之后被量化的度量)执行。
[0055]在步骤608,动作被使用所训练的分类器自动识别,以用于致力于解决异常。所训练的分类器把度量组与执行用于致力于解决异常的动作的结果相关。参考图3,动作识别引擎134可以负责实现步骤608。[0056]向前参看图8,用于实现步骤608的方法(即,动作识别)的示例被作为处理流程800示出。在步骤802,特征向量Z被使用一组度量计算。特征向量Z是异常状态的数字表示,并且被用于评估特定动作為解决异常的可能性八即/^SOLVE I尤,Z)。如在此被使用的特征向量可以被看作对应于与异常相关联的一组度量的一组简约的特征表示。把该组度量变换成该组特征被称为特征提取。在此描述的特征提取的示例便于从该组度量提取关于异常的相关信息,以使用简约的表示代替完整大小输入来执行动作识别。
[0057]特征向量Z可以被使用从度量组形成的签名构造。图9示出了被形成为表格900的签名。表格900包括支持应用的执行的部件类型(例如,服务器和数据库)的列表902。此外,表格900包括每个部件类型的实例的列表904。例如,参考图5,支持应用的执行的云100的资源可以包括环球网服务器的三个实例170、172、174,以及数据库的两个实例176、178。此外,表格900包括度量的列表906。每个部件实例与一个或多个度量相关联。
[0058]签名可以被周期性地(诸如,在度量被收集的每个时间间隔)确定。签名可以包括进一步(或不同)的信息(如图9中所示的)。例如,签名可以包括属性向量(或由其构成)。对于每个度量,属性向量包括条目。例如,具有值‘I’的条目被分配给一度量,如果那个度量被确定是:在时间间隔期间其原始值被确定指示异常的关键度量。那个度量被认为是归属的。具有值‘-1‘的条目被分配给一度量,如果那个度量被确定是:其原始值被确定不指示异常的关键度量。那个度量被认为是非归属的。具有值‘0’的条目被分配给一度量,如果在那个时间间隔基于模型确定那个度量不指示计算机资源的任何状态,诸如,不指示异常。那个度量被认为与异常状态不相关。另一种类型的签名可以是属性和度量的原始值的组合,其中每个原始值被乘以(‘与(AND)’操作)其属性向量中的相应条目。
[0059]表1示出了用于云部件中的异常状态的签名的示例,所述云部件在图5中被示为支持应用的执行。表1列出了三种类型的签名的值(原始值、度量属性、原始值与(AND)度量属性),所述值中的一个或多个可以由动作识别引擎134生成,并且作为量化度量数据144的一部分存储在数据存储142中。原始值列列出了用于原始值签名的每个度量的原始值。度量属性列列出了度量属性签名的值。原始值AND度量属性列列出了原始值AND度量属性签名的值。表1还包括与部件类型相关的数据,以及与特定度量相关联的实例。对于表I中的示例,针对归属的度量,假设有接下来的正常行为:平均处理的查询0.8 ;平均存储器使用率0.6 ;平均CPU使用率0.5。
【权利要求】
1.一种由物理计算系统执行的方法,所述方法包括: 确定一组量化度量是否对应于异常,所述度量组与云计算系统(100)中的应用的执行相关联;以及 当确定该组量化度量对应于异常时,使用至少一个所训练的分类器自动识别用于致力于解决所述异常的动作,其中至少一个所训练的分类器把度量组与执行用于致力于解决异常的动作的结果相关。
2.如权利要求1所述的方法,其中识别用于致力于解决异常的动作包括:从包括至少一个部件类型动作和至少一个部件实例动作的多个动作中选择动作, 部件类型动作对应于在云计算系统(100)的部件类型上执行的动作,以及 部件实例动作对应于在云计算系统(100)的部件实例上执行的动作。
3.如权利要求2所述的方法,其中至少一个所训练的分类器包括:至少一个所训练的部件类型分类器和至少一个所训练的部件实例分类器, 部件类型分类器用于计算部件类型动作解决异常的可能性,以及 部件实例分类器用于计算部件类型动作解决异常的可能性。
4.如权利要求1所述的方法,其中自动识别包括:使用至少一个所训练的分类器计算执行用于致力于解决异常的动作的结果的可能性。
5.如权利要求4所述 的方法,其中: 识别用于致力于解决异常的动作包括从多个动作中选择动作; 多个动作中的每个动作与成本值相关联;以及 所选择的动作对应于具有以最小的成本解决异常的最高的可能性的多个动作中的动作。
6.如权利要求1所述的方法,其中至少一个所训练的分类器是从包括K最近邻居分类器、支持向量机分类器以及贝叶斯网络分类器的组中选择的分类器。
7.如权利要求1所述的方法,进一步包括: 从该组量化度量生成特征向量;以及 使用特征向量评估至少一个所训练的分类器,以便把度量组与执行用于致力于解决异常的动作的结果相关。
8.如权利要求1所述的方法,进一步包括: 确定致力于解决异常是否需要训练分类器;以及 当确定异常需要训练分类器时,自动训练分类器。
9.如权利要求1所述的方法,进一步包括:在云计算系统中的应用的执行上应用所识别的动作。
10.如权利要求1所述的方法,进一步包括:向用户推荐所识别的动作。
11.一种识别用于响应云计算系统(100)中的应用的执行中的异常的动作的系统(132),所述系统包括动作识别引擎(134),其中: 动作识别引擎(134)用于使用至少一个所训练的分类器自动识别用于响应云计算系统中的应用的执行中的异常的动作, 至少一个所训练的分类器把度量与执行用于致力于解决异常的动作的结果相关。
12.如权利要求11所述的系统(132),进一步包括异常确定引擎(136),用以自动确定该组量化度量是否与异常相关联, 当所述确定引擎确定该组量化度量与异常相关联时,动作识别引擎(134)用于识别用于响应异常的动作。
13.如权利要求11所述的系统(132),进一步包括通信引擎(138),用以把所选择的动作传送到客户端计算机系统(168)。
14.如权利要求11所述的系统,其中动作识别引擎(134)用于在如下基础之上执行自动识别: 至少一个所训练的部件类型分类器和至少一个所训练的部件实例分类器; 部件类型分类器与至少一个部件类型动作相关联;以及 部件实例分类器与至少一个部件实例动作相关联。
15.一种包含指令的计算机可读介质(162),当所述指令被执行时,实现识别用于响应应用的执行中的异常的动作的方法,所述方法包括: 从能够在用于应用的执行的云计算系统(100)上被执行的多个动作中自动识别动作;所述动作用于响应云计算系统中的应用的执行中的异常,以及所述自动识别被使用与异常相关联的至少一个量化度量并且基于至少一个所训练的分类器来执行,所述至少一个所训练的分类器把至少一个量化度量与执行用于致力于解决异常的动作的结果相关。
【文档编号】G06F11/30GK103988175SQ201180075414
【公开日】2014年8月13日 申请日期:2011年10月10日 优先权日:2011年10月10日
【发明者】I.科亨, O.阿苏林, R.达卡, E.摩尔德柴 申请人:惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1