物理资源分配的制作方法

文档序号:9240017阅读:440来源:国知局
物理资源分配的制作方法
【专利说明】
【背景技术】
[0001]云计算可以由数据中心实施以建立公共云和私有云。云计算提供自服务、可扩展性和灵活性,以及传统上不可能的另外的控制和定制的优点。云服务供应商扩展了用于限定应用程序性能的保证水平的服务水平协议(SLA)。例如,SLA可以指定用于限定每时间帧的响应次数或计算的性能指标。然后,应用程序性能被监控以确保SLA遵从性。
【附图说明】
[0002]图1描述其中各个实施例可以被实施的示例环境。
[0003]图2描述根据示例的系统。
[0004]图3是描述根据示例的存储器资源和处理资源的框图。
[0005]图4是描述用于实施示例的步骤的流程图。
[0006]图5是示出随时间测量的应用程序的性能指标值的示例图。
[0007]图6和图7是描述两个应用程序组件的物理资源消耗水平的示例图。
【具体实施方式】
[0008]介绍:现代应用程序包括一起操作以实现预定结果的多个组件。在一个示例中,应用程序可以包括应用程序服务器和数据库服务器。每个组件的一个或多个实例可以在任意数量的虚拟机中执行。在执行时,每个组件消耗诸如CPU、存储器、联网和存储之类的物理资源。因为多个虚拟机可以共享对同一物理资源的访问,因此需要多次恰当的资源分配以确保期望的应用程序性能。
[0009]云服务供应商扩展了用于限定应用程序性能的保证水平的服务水平协议(SLA)。SLA可以指定用于限定每时间帧的响应次数或计算的性能指标。手动监控可以证明是困难的,并且在许多情况下是低效或无效的。虽然诸如平均响应时间的性能指标可以被看到,并且对应SLA的违背可以被识别,但是可能难于快速确定导致不期望的性能的瓶颈。瓶颈经常在被分配至虚拟机的物理资源被应用程序组件以比预期水平高的水平消耗时发生。如果随着虚拟机数目的增加,不能手动识别特别导致瓶颈的应用程序组件和对应的物理资源,那么这可能是困难的。
[0010]以下描述的各个实施例已经被发展为将物理资源自动分配给执行应用程序组件的虚拟机。在一个示例中,性能数据和消耗数据从在虚拟机中执行的代理获取。性能数据指示应用程序随时间的性能指标。消耗数据指示每个应用程序组件或虚拟机随时间的物理资源消耗水平。性能数据被分析以识别性能事件。性能事件在与应用程序关联的性能指标的值越过关联的阈值时发生。例如,在性能指标与应用程序响应时间对应的情况下,阈值可以对应于由SLA指定或确定的特定平均响应时间。在一个示例中,越过阈值指示SLA已经被违背或可能会被违背并且应用程序组件可能需要被分配另外的物理资源。在另一个示例中,越过阈值指示性能水平很好地在SLA要求内,并且物理资源未被充分利用且可以从应用程序组件分配出来。
[0011]一旦检测到性能指标已经越过阈值,则消耗数据被分析以检查由应用程序组件利用的物理资源的消耗水平。在物理资源之一(但不是另一个)的消耗水平在通常与性能事件相一致的时刻偏离历史趋势的情况下,可以假定消耗那个物理资源的给定应用程序组件导致了性能事件。在执行时会导致对应物理资源的分配水平改变的指令被传送。指令例如可以被传送至负责对执行各个应用程序组件的虚拟机进行管理的云控制器,并被该云控制器执行。在性能事件指示实际或可能的SLA违背的情况下,资源分配的改变可以是计划使性能指标值越回阈值之上的增加。在性能事件指示未被完全利用的情况下,分配的改变可以是允许物理资源被再分配到别处的减小分配。
[0012]以这种方式,物理资源可以被自动分配和再分配以有助于确保SLA遵从性和有效的资源消耗。
[0013]随后的描述被分为多个部分。标记为“设置”的第一部分描述其中各个实施例可以被实施的环境。标记为“组件”的第二部分描述用于实施各个实施例的各个物理和逻辑组件的示例。标记为“操作”的第三部分描述用于实施各个实施例的步骤。
[0014]设置:图1描述其中各个实施例可以被实施的设置10。设置10被示出为包括云环境12、物理资源14、客户端计算设备16和资源分配系统18。云环境12通常表示被配置为作为诸如因特网的网络上的服务而提供的计算资源(硬件或软件)。为了效率被描述为服务器的物理资源14提供实施云环境所需的CPU、存储器、联网和存储资源。用户被提供以访问在云环境中执行的应用程序软件和数据库,同时云供应商管理应用程序在其上运行的基础结构和平台。在图1的示例中,那个基础结构由物理资源14表示。
[0015]云控制器(未示出)负责将物理资源14供给至应用程序的各个组件。在这样做时,控制器利用物理资源14实例化用于执行应用程序组件的虚拟机。虚拟机共享由物理资源14提供的诸如CPU、存储器、联网和存储的物理资源,其中每个资源的指定部分被分配给每个虚拟机。在本文中,两个或多个虚拟机可以一起被称为虚拟环境。
[0016]客户端设备16通常表示能够利用提供在云环境12内的应用程序的任何计算设备。以下具体描述的资源分配系统18表示被配置为自动管理被云环境12中执行的应用程序的组件所消耗的资源的分配。通常,资源分配系统18被配置为响应于预定性能事件而识别在通常与性能事件对应的时刻已经成尖峰或经历改变的、被应用程序组件消耗的物理资源的消耗水平。然后,系统18传送在被云控制器执行时导致那个资源的分配根据性能事件的性质而改变的指令。例如,在性能事件是实际上违背或可能违背SLA时,改变可以是向对应的应用程序组件增加资源的分配。
[0017]组件:图2和图3描述用于实施各个实施例的物理和逻辑组件的示例。在图2中,各个组件被识别为引擎32-36。在描述引擎30-34中,注意力将会落在每个引擎的指定功能上。然而,这里使用的术语引擎指的是被配置为执行指定功能的硬件和程序的组合。如随后结合图3所示,每个引擎的硬件例如可以包括处理器和存储器,同时程序是存储在该存储器上并可被处理器执行以执行指定功能的代码。在另一个示例中,硬件可以是用于存储代码的存储器。
[0018]图2描述与云环境12通信的资源分配系统18。在这个示例中,云环境12包括物理资源14并被示出为包括多个实例化的虚拟机20,每个实例化的虚拟机20在对应操作系统上执行一个或多个应用程序组件21。对于示例应用程序,各个组件21可以表示不同的应用程序服务器和任何给定应用程序服务器的各个实例。同样,其他组件21可以表示不同的数据库服务和任何特定数据库服务器的不同实例。每个虚拟机20包括虚拟资源24。给定虚拟机20的虚拟资源24表示该虚拟机的物理资源14分配。再次,这些物理资源可以包括CPU、存储器、联网和存储资源。每个虚拟机20还被示出为执行代理26。每个代理26被配置为针对给定虚拟机20或应用程序组件21监控性能指标、物理资源消耗水平或其组合。每个代理26根据其目的被配置为产生指示监控的性能指标和/或监控的物理资源消耗水平的数据,并被配置为将该数据传送至资
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1