资源使用的自动分析的制作方法

文档序号:8531864阅读:255来源:国知局
资源使用的自动分析的制作方法
【专利说明】资源使用的自动分析
[0001] 发明背景
[0002] 一般地描述,计算设备利用通信网络或一系列通信网络来交换数据。公司和组织 操作使许多计算设备互连的计算机网络以支持操作或将服务提供给第三方。计算系统可以 位于单个地理位置或位于多个不同的地理位置(例如,通过专用或公用通信网络来互连)。 具体来说,数据中心或数据处理中心(本文中一般被称为"数据中心")可以包括许多互连 的计算系统以将计算资源提供给数据中心的用户。数据中心可以是代表组织操作的专用数 据中心,或者代表公众或为了公众的利益操作的公用数据中心。
[0003] 为了促进数据中心资源的利用率提高,虚拟化技术可以允许单个物理主机计算设 备托管虚拟机实例配置的一个或多个实例,这些配置向数据中心的用户显现并作为独立的 计算设备工作。通过虚拟化,单个物理主机计算设备可以创建、维护、删除或另外以动态的 方式管理虚拟机实例。相应地,用户可以请求单个计算设备或网络计算设备的配置,并且具 备不同数量的虚拟机资源。
[0004] 主机计算设备所提供的计算资源可以包括计算能力、内存和其他存储、带宽等。在 具有成千上万的主机计算设备的数据中心环境中,只要目标主机计算设备满足指定标准, 例如,充足和可用的计算设备资源(例如,处理单元、内存等),虚拟机的实例就可以被实例 化在随机主机计算设备上。一旦虚拟机的实例被实例化在物理主机计算设备上,可以保留 预定量的一个或多个计算资源以供虚拟机实例使用。数据中心环境的计算资源提供者或其 他操作员可以向虚拟机实例保证所保留的量的计算资源在目标计算设备上的可用性。
【附图说明】
[0005] 贯穿附图,可以重复使用参考符号来指示参考元件之间的对应。附图被提供以说 明本文所述的示例性实施方案并且不旨在限制本公开的范围。
[0006] 图1为包括管理组件、多个主机计算设备和多个客户的说明性网络计算环境的方 框图。
[0007] 图2为包括各种模块和存储组件的说明性管理组件的方框图。
[0008] 图3为用于自动分析计算资源的使用的说明性过程的流程图。
[0009] 图4为托管虚拟机的说明性主机计算设备的方框图,所述虚拟机利用计算设备所 提供的计算资源。
[0010] 图5为说明性过程的流程图,所述过程用于启动主机计算设备上的虚拟机、分配 和超额订购计算资源,并且迀移当前执行的虚拟机以便进一步优化计算资源利用率。
[0011] 图6为说明性主机计算设备的方框图,其中各种计算资源被超额订购并且超额能 力保持可用。
[0012] 图7为说明性主机计算设备的方框图,其中由于执行在主机计算设备上的每个虚 拟机的最小的资源利用率,大幅超额订购各种计算资源。
[0013] 图8为由于超额订购和缺乏可用的计算资源能力,虚拟机从一个主机计算设备到 另一个主机计算设备的说明性迀移的方框图。
【具体实施方式】
[0014] 一般而言,本公开涉及计算资源利用率。具体来说,本公开涉及基于实际的资源使 用测量和其他操作度量的分析,为计算资源的消费者自动确定资源使用和操作度量配置文 件。在一些实施方案中,计算资源的消费者,例如,根据客户规格实例化的虚拟机实例(例 如:从虚拟机图像实例化的虚拟机实例,虚拟机图像被配置具有根据客户规格的操作系统 和应用软件),可以被实例化在主机物理计算设备上。虚拟机实例可以基于虚拟机实例对一 个或多个计算机软件程序或其他工作量的执行来消耗各种计算资源。然后,虚拟机实例可 以终止执行或以其他方式被配置用于不同的目的。
[0015] 对于具体的实体,例如客户或一组客户,可以重复实例化虚拟机实例的过程。作为 处理虚拟机实例的生命周期的部分,与提供虚拟机实例相关联的服务提供者可以观察并记 录资源消耗。然后,服务提供者可以基于处理资源消耗测量和其他操作度量信息确定虚拟 机实例资源使用和操作度量配置文件。
[0016] 本公开的额外的方面涉及推广资源使用和操作度量配置文件,一般被称为操作配 置文件。例如,数千或更多的虚拟机实例可以被实例化并且可以利用单个网络计算环境 (例如数据中心)中的资源。可以将虚拟机实例分配给广义或默认的操作配置文件,而不是 确定和维护每个虚拟机实例的单独定制的操作配置文件。因此,虚拟机实例组可以根据各 种组织标准被分类并且分配给同一操作配置文件。在一些情况下,操作配置文件可以是分 层的,使得特定虚拟机实例配置与特定操作配置文件相关联,并且也与更一般的操作配置 文件相关联,更一般的操作配置文件本身与多个虚拟机实例配置相关联。可能有层次结构 的多个层,其具有可能成千上万的虚拟机实例配置,所述虚拟机实例配置与下列相关联:单 个一般操作配置文件或少数顶层操作配置文件,以及在层次结构内的每一层的更多数量的 更具体的操作配置文件。在层次结构的底层可以是与特定客户所使用的单个虚拟机实例配 置相关联的特定操作配置文件。
[0017] 本公开的进一步的方面涉及基于自动确定的操作配置文件,识别目标主机计算设 备以将计算资源提供给虚拟机实例。在一些实施方案中,特定物理主机计算设备可以被配 置成将目标计算资源同时提供给多个虚拟机实例。可以保留预定量的计算资源以供单个虚 拟机实例使用。当虚拟机实例的操作配置文件指示虚拟机实例将不太可能消耗已为该实例 保留的计算设备资源时,主机计算设备可以实例化额外的虚拟机实例。额外的虚拟机实例 可以与先前实例化的虚拟机实例同时发生的主机计算设备资源相关联,或有权访问主机计 算设备资源。另外,如果任何虚拟机实例消耗或以其他方式限制对资源的访问,使得消耗满 足或超过虚拟机实例的操作配置文件中所指定的一个或多个阈值,那么可以将一个或多个 虚拟机实例转移到另一个主机计算设备。例如,与超过阈值的消耗相关联的虚拟机实例可 以被转移,或其他虚拟机实例可以被转移。
[0018] -些计算资源不一定由主机计算设备提供,而是脱离主机资源。例如,网络拓扑结 构可能需要从一个主机计算设备通信到第二主机计算设备以遍历一个或多个链路(例如, 交换机与其他网络组件之间的网络连接)。对于到第三主机计算设备的通信,链路的数量可 以是不同的。关于链路流量和通信将在主机之间遍历的链路的数量的数据可以被记录为资 源消耗测量或操作度量。数据可以在未来被用于确定在哪个主机计算设备上实例化可以与 另一主机计算设备通信的虚拟机实例。另外,一些计算资源的消耗并不一定减少一般可用 于其他虚拟机实例或消费者的资源的量。例如,由主机计算设备提供的特征(例如特定指 令集)可以一般被称为计算资源。然而,指令集的使用并不一定减少指令集到另一虚拟机 实例、应用程序或其他消费者的可用性。
[0019] 尽管为了说明的目的,在本公开中描述的实施方案的方面将专注于管理组件、月艮 务器计算设备和在代表客户的服务器计算设备上实例化的虚拟机之间的关系和交互,但是 本领域技术人员将了解,本文公开的技术可以应用于任何数量的硬件或软件过程或应用程 序。例如,尽管虚拟机实例将一般用作说明性计算资源消费者,但是其他程序或工作量可以 被取代,例如应用软件、操作系统、存储区域网络(SAN)节点等。另外,尽管计算资源(例如, 存储器、CPU容量和网络带宽)将被用作说明性计算资源,但是其他计算资源可以被取代, 例如网络链路流量、延时、处理器指令集等。此外,尽管将参照说明性实例和实施方案来描 述本公开的各种方面,但是本领域技术人员将了解,所公开的实施方案和实例不应被解释 为限制。现在将参照旨在说明但不限制本公开的某些实例和实施方案来描述本公开的各种 方面。
[0020] 图1图示示例性网络计算环境100,其中可以实施资源使用的自动分析和基于那 些配置文件对资源的分配。操作配置文件和资源分配可以基于实际资源使用的先前测量和 其他操作度量,并且也基于资源的预期未来使用。网络计算环境100可以包括通过网络110 通信的管理组件102和任何数量的物理主机计算设备104a-104n。一个或多个客户122可 以通过网络120与网络计算环境100的组件通信。
[0021] 网络计算环境100,例如图1中所示的网络计算环境100可以在数据中心和多个主 机计算设备l〇4a-104n将计算服务和资源提供给内部或外部客户122的其他环境中实施。 如下文更详细地描述,每个客户122可以连接到管理组件102或网络计算环境100内的一 些其他组件以启动计算过程。计算过程的启动可以包括虚拟机实例在主机计算设备104上 的实例化,或操作环境和一个或多个软件应用程序的配置。虚拟机实例可以代表用户执行, 消耗主机计算设备104的计算资源、网络110等。尽管只为了说明的目的,本公开将专注 于通过使用虚拟机将计算服务提供给外部或内部客户122的网络计算环境100的操作,但 是本文所述的系统和过程可以应用于网络计算环境100的任何实施,包括没有单独的客户 122实体或没有虚拟机使用的实施。
[0022] 每个主机计算设备104可以是服务器计算机,例如刀片服务器。可选地,主机计算 设备104可以是中型计算设备、大型计算机、台式计算机,或被配置成将计算服务和资源同 时提供给多个消费者(例如虚拟机实例)的任何其他计算设备。在典型实施中,主机计算 设备104可以被配置成通过网络110与其他主机计算设备104、管理组件102,或网络计算 环境100的一些其他组件通信。
[0023] 网络110可以是局域网(LAN)、广域网(WAN)、一些其他网络,或上述组合。另外, 网络计算环境100可以连接到另一网络120 (例如公司或大学网络),或由独立实体操作的 网络的集合(例如互联网)。网络计算环境100的客户122可以通过网络120、110的组合 与主机计算设备104通信。在一些实施方案中,客户122可以使计算设备102启动虚拟机 实例以执行客户122或代表客户122的各种计算操作。任何数量的虚拟机实例可以在给定 时间运行在单个主机计算设备104上。另外,运行在主机计算设备104上的各种虚拟机实 例可以与单个客户122或许多不同的客户122相关联。
[0024] 管理组件102可以实施为硬件或硬件和软件的组合。例如,管理组件102可以是 被配置成执行一个或多个软件程序以执行本文所述的功能的一个或多个计算设备的计算 系统。在一些实施方案中,管理组件可以包括主机计算设备104a-104n中的一个或多个。
[0025] 图2更详细地图示示例性管理组件102。管理组件102可以包括配置文件确定模 块202、放置模块204、迀移模块206、操作度量数据存储器208和配置文件数据存储器210。 在一些实施方案中,管理组件102可以包括比图2中所示更多或更少的模块和数据存储器。 例如,当迀移特征不被实施,或被放置模块204实施时,可能没有单独的迀移模块206。在另 一示例性实施方案中,可能有广义客户配置文件的额外的数据存储器。
[0026] 在操作中,配置文件确定模块202可以通过与特定客户122等相关联的所有虚拟 机实例在特定时间的特定虚拟机实例配置的实例,获得关于操作度量和资源使用的操作数 据。配置文件确定模块202可以分析操作数据,并且开发由被分析的虚拟机实例或虚拟机 实例组利用的计算资源的操作配置文件。例如,操作数据可以包括关于下列各项的历史测 量:利用的内存量、中央处理单元(CPU)利用率、传输或接收的网络流量的量、利用的硬盘 空间的量、磁盘操作的数量、利
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1