CN1904839A - 捕获虚拟机的中央处理单元利用的方法、系统及程序产品 - Google Patents

捕获虚拟机的中央处理单元利用的方法、系统及程序产品 Download PDF

Info

Publication number
CN1904839A
CN1904839A CN200610075338.9A CN200610075338A CN1904839A CN 1904839 A CN1904839 A CN 1904839A CN 200610075338 A CN200610075338 A CN 200610075338A CN 1904839 A CN1904839 A CN 1904839A
Authority
CN
China
Prior art keywords
account
virtual machine
cpu
account record
work request
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.)
Granted
Application number
CN200610075338.9A
Other languages
English (en)
Other versions
CN100428168C (zh
Inventor
穆恩·J·金
斯科特·F·罗尔林
桑德拉·布尔森
布鲁斯·J·海登
弗吉尼亚·P·戈德史密斯
戴克然·梅利克斯汀
科尔姆·马隆
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.)
Qindarui Co.
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1904839A publication Critical patent/CN1904839A/zh
Application granted granted Critical
Publication of CN100428168C publication Critical patent/CN100428168C/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
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明允许从主机角度捕获虚拟机的CPU利用。具体地,依照本发明,具有一组(例如一或多个)作业的工作请求由主机接收,并且分配给节点上的虚拟机。通常,工作请求伴随帐户标识符,例如多值计费代码。一旦把该工作请求分配给该节点上的特定VM,则发布“startacct”脚本,并且创建第一帐户记录。接下来,处理该工作请求,并且监视完成该组作业所需的CPU利用。一旦完成了该组作业,则发布“endacct”脚本,并且创建第二帐户记录。其中,第二帐户记录包括所监视的CPU利用和帐户标识符。

Description

捕获虚拟机的中央处理单元利用的方法、系统及程序产品
技术领域
本发明总体上涉及捕获中央处理单元(CPU)利用。具体地讲,本发明允许从主机角度实时地捕获虚拟机的CPU利用。
背景技术
最近几年,网格计算已变得越来越为普遍。在网格计算环境中,多个用户或客户可以利用地理上分布的和冗余的计算机基础设施。在一个实施中,网格计算环境可以包括与一或多个节点进行通信的主机,其中的每一个节点可以具有一或多个虚拟机。当工作请求由主机(例如从客户)接收到时,其将分配给特定节点,然后由特定虚拟机处理。然而,随着网格计算的日趋流行,而面临着各种挑战。一种这样的挑战涉及对网格资源利用需求的监视以及对资源使用数据的捕获。就此而言,(例如,对于特定客户或项目)确定处理工作负载过程中所耗费的CPU利用量特别重要。具体地,如果特定客户针对一组任务或作业利用网格基础设施,则网格基础设施的作为结果而得到的资源使用应该精确地计算并分配至该客户。
到目前为止,没有现有系统能够提供一种从主机角度确定CPU实际利用量的方法。为了进行性能测量并计费(billing),希望能够从主机角度测量在虚拟机所执行的一项工作。
发明内容
总体上,本发明提供一种从主机角度捕获虚拟机(VM)的CPU利用的方法、系统以及程序产品。具体地,依照本发明,具有一组(例如一或多个)作业的工作请求由主机接收,并且分配给节点上的虚拟机。通常,工作请求伴随帐户(account)标识符,例如多值计费代码。一旦把该工作请求分配给该节点上的特定VM,就发布“startacct”脚本,并且创建第一帐户记录。接下来,处理该工作请求,并且监视完成这组作业所需的CPU利用。一旦完成了这组作业,则发布“endacct”脚本,并且创建第二帐户记录。其中,第二帐户记录包括所监视的CPU利用和伴随工作请求的帐户标识符。
本发明的第一方面提供了一种捕获虚拟机的中央处理单元(CPU)利用的方法,包括:在虚拟机中从主机接收具有一组作业的工作请求,其中,工作请求伴随帐户标识符;创建针对该工作请求的第一帐户记录;处理虚拟机中的工作请求,以完成该组作业;以及响应于该组作业的完成,而创建该工作请求的第二帐户记录,其中,第二帐户记录表示用于处理工作请求的虚拟机的CPU利用。
本发明的第二方面提供了一种捕获虚拟机的中央处理单元(CPU)利用的方法,包括:响应于由虚拟机从主机所接收的具有一组作业的工作请求,而发布第一脚本;响应于第一脚本,而创建针对该工作请求的第一帐户记录;响应于虚拟机中该组作业的完成,而发布第二脚本;以及响应于第二脚本,而创建针对该工作请求的第二帐户记录,其中第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
本发明的第三方面提供了一种捕获虚拟机的中央处理单元(CPU)利用的系统,包括:系统,针对由虚拟机从主机所接收的具有一组作业的工作请求,而创建第一帐户记录,其中,工作请求伴随帐户标识符;以及系统,响应于虚拟机完成该组作业,而创建针对该工作请求的第二帐户记录,其中,第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
本发明的第四方面提供了一种存储在计算机可用媒体上的程序产品,用于捕获虚拟机的中央处理单元(CPU)利用,该计算机可用媒体包括程序代码,用于使计算机系统执行下列步骤:响应于由虚拟机从主机所接收的具有一组作业的工作请求,而发布第一脚本;响应于第一脚本,而创建针对该工作请求的第一帐户记录;响应于虚拟机中该组作业的完成,而发布第二脚本;以及响应于第二脚本,而创建针对该工作请求的第二帐户记录,其中,第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
本发明的第五方面提供了一种部署用于捕获虚拟机的中央处理单元(CPU)利用的应用的方法,包括:提供可执行下列操作的计算机基础设施:响应于由虚拟机从主机所接收的具有一组作业的工作请求,而发布第一脚本;响应于第一脚本,而创建针对该工作请求的第一帐户记录;响应于虚拟机中该组作业的完成,而发布第二脚本;以及响应于第二脚本,而创建针对该工作请求的第二帐户记录,其中,第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
本发明的第六方面提供了一种包含在传播信号中的计算机软件,用于捕获虚拟机的中央处理单元(CPU)利用,该传播信号包括用于使计算机系统执行下列功能的指令:响应于由虚拟机从主机所接收的具有一组作业的工作请求,而发布第一脚本;响应于第一脚本,而创建针对该工作请求的第一帐户记录;响应于虚拟机中该组作业的完成,而发布第二脚本;以及响应于第二脚本,而创建针对该工作请求的第二帐户记录,其中,第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
附图说明
通过以下结合附图对本发明的各个方面的详细描述,本发明的这些及其它特性更加易于理解,附图描述了本发明的各个实施例,其中:
图1描述了根据本发明的用于捕获虚拟机的CPU利用的系统。
图2描述了根据本发明的说明性的帐户记录表。
图3描述了根据本发明的计算机化实施。
图4描述了根据本发明的方法流程图。
应该加以注意的是,本发明的这些图并未按比例绘制。这些图仅旨在描述本发明的一些典型方面,因此不应将它们视为对本发明的范围的限制。在这些附图中,各图之间以相同的数字表示相同的图元。
具体实施方式
如以上所示,本发明提供了一种从主机角度捕获虚拟机(VM)的CPU利用的方法、系统以及程序产品。具体地,依照本发明,具有一组(例如一或多个)作业的工作请求由主机接收,并且分配给节点上的虚拟机。通常,工作请求伴随帐户标识符,例如多值计费代码。一旦把该工作请求分配给该节点上的特定VM,则发布“startacct”脚本,并且创建第一帐户记录。接下来,处理该工作请求,并且监视完成该组作业所需的CPU利用。一旦完成了该组作业,则发布“endacct”脚本,并且创建第二帐户记录。其中,第二帐户记录包括所监视的CPU利用和伴随工作请求的帐户标识符。
参照图1,图1描述了根据本发明的用于从主机14的角度监视VM 12A的CPU利用的系统10。具体地,图1描述了与节点16A~N进行通信的主机14。另外,每一个节点16A~N通常包括管理器VM 22以及一或多个“作业”VM 12A~N。在典型的实施例中,使用LINUX技术实施系统10。然而,并非一定如此。在任何情况下,依照本发明,每一个节点16A~N均包括资源监视系统24,将其描述为包含在每一VM 12A~N中。但应该认识到,该资源监视系统24可以存在于VM 12A~N外部,甚至存在于节点16A~N外部。资源监视系统24的主要功能是当VM处理来自用户或客户18的工作请求时从主机14的角度实时监视诸如VM的CPU利用的资源使用。
在说明性的例子中,假设客户18正在向主机14提交含有一组(例如一或多个)作业的工作请求。该工作请求将由主机14中的作业管理服务20接收,然后发送至特定节点(例如,节点16A)。具体地,作业管理服务20将查询节点16A~N的管理器VM 22,以确定哪个节点具有最佳资源可用性。根据响应,作业管理服务20将把该工作请求提交至特定的节点,在本例中,可以假定该特定节点为节点16A。依照本发明,作业管理服务20将把该工作请求随帐户标识符一起发送至节点16A。在典型的实施例中,帐户标识符为允许该工作请求与客户18相关联的多值(例如8个字符)计费代码等。帐户标识符还可以标识依照工作请求而正在执行的特定作业。这些信息段将允许该工作请求适当地归于客户18和/或向客户18计费。
节点12A的管理器VM 22将接收工作请求和帐户标识符,节点12A的管理器VM 22将分配资源并激活特定“作业”VM 12A,以处理该工作请求。与特定节点的选择相类似,VM 12A的选择可以基于VM 12A的资源可用性。作为响应,资源监视系统24将在处理工作请求之前发布“startacct”脚本。在典型实施例中,该脚本发布带有工作请求中传送的帐户标识符的“诊断4C”子代码04。作为响应,资源监视系统24将在表中创建第一帐户记录。
参照图2,图2更详细地描述依照本发明所创建的表50。具体地,如图所示,表50包括帐户记录52A~D。帐户记录52A~B属于第一工作请求,而帐户记录52C~D属于第二工作请求。如从图中可看到的,每一帐户记录52A~D包括用户标识、帐户标识、日期/时间标记、CPU利用、以及记录类型。
本例中假设帐户记录52A~B属于从图1的客户18所接收的工作请求。依照“startacct”脚本的发布,资源监视系统24(图1)将创建记录52A,并且以诸如如图所示的数据填充(populate)该记录52A。用户标识属于从主机14(图1)接收工作请求的节点16A(图1)。由于尚未处理该工作请求,所以将把帐户标识设置为默认值。日期/时间标记表示2004年11月25日上午8:00:22创建了帐户记录52A,或者VM 12A接收了工作请求。帐户记录52A中所示的CPU利用值表示在处理工作请求之前CPU利用的背景(background)或开销(overhead)水平。另外,把帐户记录52A的记录类型反映为“01”。这一记录类型可以表示任何数目的项,例如尚未对工作请求进行处理,依照所发布的“startacct”脚本创建了帐户记录52A等。
在任何情况下,此时,VM 12A(图1)都将开始处理工作请求。在处理工作请求的过程中,VM 12A将完成其中定义的所有作业。在此过程中,将监视VM 12A的资源利用,例如CPU利用。可以由资源监视系统24或者由未示出的另一独立系统进行这一监视。一旦完成了所有作业,资源监视系统24(图1)将发布“endacct”脚本。在典型的实施例中,“endacct”脚本发布不具有数据的诊断4C子代码04。作为响应,资源监视系统24将创建帐户记录52B,并且以诸如如图2所示的数据填充该记录52B。如图中所示,类似于帐户记录52A,用户标识代表节点16A。然而,在这一情况中,帐户标识符是不同的。即,把帐户记录52B的帐户标识设置成已伴随工作请求的帐户标识符。这将允许适当地归属任何CPU利用。如图中进一步所描述的,日期时间标记表示2004年11月25日上午8:01:30完成了所有作业。如图中进一步所描述的,CPU利用为6,345,036微秒,记录类型为“C1”,“C1”可以表示作业的完成、“endacct”脚本的发布等。一旦填充了帐户记录52B,则将把帐户标识重新设置成帐户记录52C中描述的默认值,其表示接收新工作请求。将对这一新工作请求进行处理,如以上所描述的,即:分配至VM;发布“startacct”脚本;创建和填充条目52C;处理该新工作请求并监视资源利用;发布“endacct”脚本;以及创建和填充帐户记录52D。
一旦完成了这一过程,则资源监视系统24可以输出表50或者其报告。包含在表50中的信息可用于适当地追踪和计算客户18的工作请求。如图1中所示,主机14可以向VM 12A查询结果。
现在,参照图3,图3描述了本发明的计算机化实施100。具体地,图3描述了部署在计算机基础设施101中的节点106。这旨在表明:其中,可以在网络环境(例如,因特网、广域网(WAN)、局域图(LAN)、虚拟专用网(VPN)等),或者在独立的计算机系统中实施本发明。在前者的情况下,可以经由各种类型的通信链路的任何组合在整个网络上进行通信。例如,通信链路可以包括可以利用有线和/或无线传输方法的任何组合的可寻址连接。在经由因特网进行通信的情况下,可以由传统的基于TCP/IP套接字(socket)的协议提供连接性,并且可利用因特网服务提供商建立与因特网的连接性。另外,计算机基础设施101还旨在表明:可以由提供评估注释(evaluateannotation)的服务提供商部署、管理以及服务于实施100的某些或全部组件。
应该认识到:计算机基础设施101可以包括多个节点106,例如如图1中所示。为了简洁起见,图3中没有描述其它这样的节点。在任何情况下,如图中所示,节点106均包括处理单元130、存储器132、总线134以及输入/输出(I/O)接口136。而且,还把节点106描述为与外部I/O设备/资源138和存储系统140进行通信。总体上,处理单元130执行计算机程序代码,例如存储在存储器132和/或存储系统140中的资源监视系统114。当执行计算机程序代码时,处理单元130可以从/向存储器132、存储系统140和/或I/O接口136读取和/或写入数据。总线134提供节点106中每一组件之间的通信链路。外部设备138可以包括任何使用户能够与节点106进行交互的设备(例如键盘、定位设备、显示器等)、和/或任何使节点106能够与一或多个其它计算设备进行通信的设备(例如网卡、调制解调器等)。
计算机基础设施102仅为实施本发明的各种类型计算机基础设施的说明性例子。例如,在一个实施例中,计算机基础设施102包括在网络上进行通信以执行本发明的各个过程步骤的两个或两个以上的计算设备(例如,服务器集群)。而且,节点106仅为可以包括众多硬件组合的各种可能计算机系统的代表。在此程度上,在其它实施例中,节点106可以包括任何包含用于执行特定功能的硬件和/或计算机程序代码的专用计算制品、以及任何包含专用和通用硬件/软件的组合的计算制品等。在每一种情况下,均可以分别使用标准程序设计与工程技术来创建程序代码和硬件。而且,处理单元130可以包括单一处理单元,或者在一或多个位置中,例如在客户机和服务器上,跨越一或多个处理单元而分布。相类似,存储器132和/或存储系统140可以包括驻留在一或多个物理位置的各种类型的数据存储器和/或传输媒体的任何组合。而且,I/O接口136还可以包括任何用于与一或多个外部设备138交换信息的系统。另外,还应该认识到:也可以把图3中未示出的一或多个附加组件(例如,系统软件、数学协处理单元等)包括于节点106中。然而,如果节点106包括手持设备等,则应该理解为可以把一或多个外部设备138(例如显示器)和/或一或多个存储系统140包括在节点106中,而不是如图所示在外部。
存储系统140可以是能够为诸如工作请求、资源使用数据、图2的表50等的依照本发明的信息提供存储的任何类型的系统(例如,数据库)。在此程度上,存储系统140可以包括一或多个存储设备,例如,磁盘驱动器或光盘驱动器。在另一个实施例中,存储系统140包括跨越例如局域网(LAN)、广域网(WAN)或者存储区域网(SAN)(未示出)而分布的数据。尽管未示出,但可以把诸如高速缓冲存储器、通信系统、系统软件等的附加组件并入节点106。
节点106的存储器132中所描述的是管理器VM112和“工作”VM102,其包含资源监视系统114(描述为计算机程序产品)。与节点106相类似,为了简洁起见,描述了单一的VM102。如进一步所描述的,资源监视系统114包括启动脚本系统116、启动记录系统118、利用系统120、结束脚本系统122、结束记录系统124以及输出系统126。如以上所描述,这些系统执行本发明的讲授。
具体地,当工作请求由主机104从客户108接收时,其由作业管理系统110发送至节点106。如以上所示,把工作请求随相应的帐户标识符一起发送。当接收时,管理器VM112将把工作请求发送至VM102。作为响应,启动脚本系统116将发布“startacct”脚本,而且启动记录系统118将在表中创建第一帐户记录,并且以以上所描述的数据填充该第一帐户记录。接下来,VM102将通过执行包含于工作请求中的一或多个作业,来处理工作请求。在此过程中,将(例如,由利用系统120或图3中未示出的资源监视系统114外部的另一系统)监视资源利用(例如,CPU利用)。一旦完成工作请求中的所有作业,则结束脚本系统122将发布“end script(结束脚本)”,而且结束记录系统124将在该表中创建第二记录。如以上所描述的,其中,此第二帐户记录将包括伴随工作请求的帐户标识符以及用于完成工作请求中的作业的资源利用。当完成此过程时,输出系统126可以把信息和/或表本身输出至主机104或另一位置。
参照图4,图4描述了根据本发明的方法流程图。如图中所描述的,在步骤S1中VM接收工作请求。在步骤S2中,发布“startacct”脚本。在步骤S3中,创建和填充第一帐户记录。然后,在步骤S4中,开始对工作请求进行处理。当进行处理时,在步骤S5中,监视/捕获CPU利用。在步骤S6中,判断是否完成了所有作业。如果没有完成所有作业,则过程返回至步骤S4。一旦完成了所有作业,则在步骤S7中发布“endacct”脚本,并且将在步骤S8中创建和填充第二帐户记录。
示例性实施:
在各种示例性实施例中,可以实现本发明的多种实施。以下给出了三种这样的实施:
实施1:启动Linux服务器以执行一或多个作业,然后关闭Linux服务器。
(1)主服务器接收工作请求,确定应该在哪个可用的Linux服务器上运行,然后启动该可用的Linux服务器;
(2)启动之后,主服务器(例如经由SSH)运行所启动的服务器上的一或多个作业,或者在启动之后由所启动的服务器自动地执行一或多个作业;
(3)在运行了一或多个作业之后,主服务器关闭所启动的服务器,或者作为一或多个作业完成的一部分而自动调用关闭;
(4)当VM用户注销时,自动创建VM帐户记录,从而将捕获CPU利用;
(5)把帐户记录与来自主作业日志的时间进行匹配,以确定每一作业使用了多少CPU;以及
(6)可以根据上述结果,“手工”地规格化CPU。
实施2:Linux服务器保持运行,并且主服务器确保在作业开始与停止时创建帐户记录。
(1)主服务器接收工作请求,确定应在哪个可用的Linux服务器上运行,并且发布“HCPACNT CLOSE<linux_server>”(其中,linux_server为一或多个作业将在其上运行的可用服务器)。这将导致针对可用服务器而创建帐户记录,表明至此所使用的任何时间;
(2)在Linux服务器上执行一或多个作业;
(3)当一或多个作业完成时,主服务器再次发布“hcpACNTCLOSE<linux_server>”。这将创建将包含一或多个作业的CPU利用的帐户记录;
(4)把帐户记录与来自主作业日志的时间进行匹配,以确定每一作业使用了多少CPU——应该存在针对每一作业的单独的帐户记录、以及作为“开销”(未分配至作业)的其它帐户记录;以及
(5)可以根据上述结果,“手工”地规格化CPU。
实施3:Linux服务器保持运行,并且每一Linux服务器在作业开始和停止时创建帐户记录。
(1)主服务器接收工作请求,判断应在哪个可用的Linux服务器上运行,并且启动服务器上的一或多个作业,传送针对一或多个作业的正确的计费代码;
(2)可用Linux服务器接受作业,并且(可以经由cpint包)使用诊断4C来在一或多个作业开始时创建帐户记录,并且把VM用户帐户代码设置成适当的计费代码。(Linux服务器目录中需要OPTION ACCT(选项帐户),以允许对诊断4C的使用);以及
(3)在作业完成时,发布诊断4C,以创建将包含一或多个作业的CPU利用的帐户记录。
尽管此处作为一种捕获虚拟机的CPU利用的方法、系统以及程序产品而示出并描述,但应该认识到,本发明还提供了各种可选的实施例。例如,在一个实施例中,本发明提供了一种计算机可读媒体(即计算机可用媒体),包括使计算机基础设施能够捕获虚拟机的CPU利用的计算机程序代码。在此程度上,计算机可读媒体或计算机可用媒体包括可以实施本发明的各个处理步骤中每一步骤的程序代码。应该认识到,术语“计算机可读媒体”或“计算机可用媒体”包括程序代码的一或多个任何类型的物理实施例。具体地,计算机可读媒体或计算机可用媒体可以包括在一或多个便携式存储制品(例如,紧致盘、磁盘、磁带等)上、诸如存储器132(图3)和/或存储系统140(图3)的计算设备的一或多个数据存储部分(例如,固定盘、只读存储器、随机存取存储器、高速缓冲存储器等)上包含的程序代码、和/或作为(例如,在程序代码的有线/无线电子分布期间)通过网络传送的数据信号(例如,传播的信号)。
在另一个实施例中,本发明提供了一种基于预定、广告、和/或费用而执行本发明的过程步骤的业务方法。即,服务提供商,例如Solution Integrator(方案综合者),可实现捕获虚拟机的CPU利用。在这一情况下,服务提供商可以创建、维护、支持计算机基础设施,例如针对一或多个客户执行本发明的过程步骤的计算机基础设施101(图3)。作为结果,服务提供商可以根据预定和/或费用协议而从一或多个客户接收支付,和/或服务提供商可以从把内容向一或多个第三方进行广告的销售中接收支付。
在另一个实施例中,本发明提供了一种用于捕获虚拟机的CPU利用的计算机实施的方法。在这一情况下,可以提供计算机基础设施,例如计算机基础设施101(图3),而且执行本发明的过程步骤的一或多个系统可以获得(例如,创建、购买、使用、修改等)并部署至该计算机基础设施。在此程度上,系统的部署可以包括下列操作之中的一或多个:(1)把程序代码从计算机可读媒体安装在诸如节点106(图1和3)的计算设备上;(2)把一或多个计算设备添加至计算机基础设施;以及(3)并入和/或修改计算机基础设施的一或多个现有系统,以使计算机基础设施能够执行本发明的过程步骤。
如此处所使用的,应该认识到,在任何语言、代码或记法(notation)中,术语“程序代码”和“计算机程序代码”均为同义,并且意味着这样的一组指令中的任何表达式,即该组指令旨在使具有信息处理能力的计算设备直接、或在下列两个操作之后、或在下列两个操作之一之后执行特定功能,所述操作为:(a)转换成另一种语言、代码或记法;和/或(b)按不同的材料形式复制。在此程度上,可以把程序代码体现为下列之中的一或多个:应用/软件程序、组件软件/函数库、操作系统、针对特定计算的基本I/O系统/驱动器和/或I/O设备等。
已经为了说明和描述而给出了本发明各方面的以上的描述。但这并不旨在穷举本发明或者把本发明限制于所公开的具体形式,显然,可以进行多种修改和变化。本技术领域中的技术人员将会明显意识到这样的修改与变化包含在所附权利要求所限定的本发明的范围内。

Claims (19)

1.一种捕获虚拟机的中央处理单元(CPU)利用的方法,包括:
把具有一组作业的工作请求从主机接收在虚拟机中,其中,所述工作请求伴随有帐户标识符;
创建针对所述工作请求的第一帐户记录;
在虚拟机中处理工作请求,以完成该组作业;以及
响应于该组作业的完成,而创建针对所述工作请求的第二帐户记录,其中,所述第二帐户记录表示用于处理所述工作请求的虚拟机的CPU利用。
2.根据权利要求1所述的方法,还包括:
在创建第一帐户记录之前,发布具有帐户标识符的第一脚本;以及
在所述处理步骤之后,发布不带有数据的第二脚本。
3.根据权利要求1所述的方法,其中,把所述第一帐户记录中的帐户标识设置为默认值,而且其中,把所述第二帐户记录中的帐户标识设置为帐户标识符。
4.根据权利要求1所述的方法,其中,所述第一帐户记录和所述第二帐户记录的每个均包括用户标识、帐户标识、日期/时间标记、CPU利用、以及记录类型。
5.根据权利要求4所述的方法,其中,所述第一帐户记录中的记录类型与所述第二帐户记录中的记录类型不同。
6.根据权利要求4所述的方法,其中,所述用户标识标识虚拟机的名称。
7.根据权利要求1所述的方法,其中,把所述CPU利用实时地捕获于所述第二帐户记录中。
8.一种捕获虚拟机的中央处理单元(CPU)利用的方法,包括:
响应于由虚拟机从主机所接收的具有一组作业的工作请求,而发布第一脚本;
响应于所述第一脚本,而创建针对所述工作请求的第一帐户记录;
响应于虚拟机中该组作业的完成,而发布第二脚本;以及
响应于所述第二脚本,而创建针对所述工作请求的第二帐户记录,其中,所述第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
9.一种用于捕获虚拟机的中央处理单元(CPU)利用的系统,包括:
系统,针对由虚拟机从主机所接收的具有一组作业的工作请求,而创建第一帐户记录,其中,所述工作请求伴随有帐户标识符;以及
系统,响应于所述虚拟机对该组作业的完成,而创建针对所述工作请求的第二帐户记录,其中,所述第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
10.根据权利要求9所述的系统,还包括:
系统,发布具有帐户标识符的第一脚本;以及
系统,发布不带有数据的第二脚本。
11.根据权利要求9所述的系统,其中,把所述第一帐户记录中的帐户标识设置为默认值,并且其中,把所述第二帐户记录中的帐户标识设置为帐户标识符。
12.根据权利要求9所述的系统,其中,所述第一帐户记录和所述第二帐户记录每个均包括用户标识、帐户标识、日期/时间标记、CPU利用、以及记录类型。
13.根据权利要求12所述的系统,其中,所述第一帐户记录中的记录类型与所述第二帐户记录中的记录类型不同。
14.根据权利要求12所述的系统,其中,所述用户标识标识虚拟机的名称。
15.根据权利要求9所述的系统,其中,把所述CPU利用实时地捕获于所述第二帐户记录中。
16.根据权利要求9所述的系统,其中,所述帐户标识符包括多值计费代码。
17.根据权利要求9所述的系统,还包括系统,用于监视当虚拟机完成该组作业时虚拟机的CPU利用。
18.一种存储在计算机可用媒体上的程序产品,用于捕获虚拟机的中央处理单元(CPU)利用,所述计算机可用媒体包括用于使计算机系统执行权利要求1~8中任何一个权利要求的方法中的步骤的程序代码。
19.一种部署用于捕获虚拟机的中央处理单元(CPU)利用的应用的方法,包括:
提供可执行下列操作的计算机基础设施:
响应于由虚拟机从主机所接收的具有一组作业的工作请求,而发布第一脚本;
响应于第一脚本,而创建针对所述工作请求的第一帐户记录;
响应于虚拟机中该组作业的完成,而发布第二脚本;以及
响应于第二脚本,而创建针对所述工作请求的第二帐户记录,其中,所述第二帐户记录表示用于完成该组作业的虚拟机的CPU利用。
CNB2006100753389A 2005-07-26 2006-04-10 管理虚拟机的中央处理单元利用的方法及系统 Active CN100428168C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/189,364 US8230419B2 (en) 2005-07-26 2005-07-26 Method, system and program product for capturing central processing unit (CPU) utilization for a process on a virtual machine
US11/189,364 2005-07-26

Publications (2)

Publication Number Publication Date
CN1904839A true CN1904839A (zh) 2007-01-31
CN100428168C CN100428168C (zh) 2008-10-22

Family

ID=37674110

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100753389A Active CN100428168C (zh) 2005-07-26 2006-04-10 管理虚拟机的中央处理单元利用的方法及系统

Country Status (2)

Country Link
US (2) US8230419B2 (zh)
CN (1) CN100428168C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104011680A (zh) * 2011-12-26 2014-08-27 英特尔公司 在物理处理单元中调度虚拟机的虚拟中央处理单元

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1329809B1 (en) * 2002-01-18 2008-08-06 Hewlett-Packard Company, A Delaware Corporation Distributed computing system and method
US8286174B1 (en) * 2006-04-17 2012-10-09 Vmware, Inc. Executing a multicomponent software application on a virtualized computer platform
US9392078B2 (en) * 2006-06-23 2016-07-12 Microsoft Technology Licensing, Llc Remote network access via virtual machine
US8782671B2 (en) * 2006-07-26 2014-07-15 Hewlett-Packard Development Company, L. P. Systems and methods for flexibly controlling resource usage by a driver domain on behalf of a virtual machine
US8214838B2 (en) * 2006-07-26 2012-07-03 Hewlett-Packard Development Company, L.P. System and method for attributing to a corresponding virtual machine CPU utilization of a network driver domain based on weighted communication
US8762999B2 (en) * 2007-09-27 2014-06-24 Oracle America, Inc. Guest-initiated resource allocation request based on comparison of host hardware information and projected workload requirement
US8271990B2 (en) * 2009-02-27 2012-09-18 International Business Machines Corporation Removing operating system jitter-induced slowdown in virtualized environments
US8875129B2 (en) * 2010-02-05 2014-10-28 Tripwire, Inc. Systems and methods for monitoring and alerting events that virtual machine software produces in a virtual infrastructure
US8868987B2 (en) * 2010-02-05 2014-10-21 Tripwire, Inc. Systems and methods for visual correlation of log events, configuration changes and conditions producing alerts in a virtual infrastructure
US8566823B2 (en) 2010-02-05 2013-10-22 Tripwire, Inc. Systems and methods for triggering scripts based upon an alert within a virtual infrastructure
US8667495B1 (en) * 2010-12-29 2014-03-04 Amazon Technologies, Inc. Virtual resource provider with virtual control planes
US8954978B1 (en) 2010-12-29 2015-02-10 Amazon Technologies, Inc. Reputation-based mediation of virtual control planes
US8667399B1 (en) 2010-12-29 2014-03-04 Amazon Technologies, Inc. Cost tracking for virtual control planes
US20120253326A1 (en) * 2011-03-29 2012-10-04 Tyco Healthcare Group Lp Articulation of Laparoscopic Instrument
CN103677858B (zh) * 2012-08-30 2019-09-10 南京中兴新软件有限责任公司 一种云环境中虚拟机软件管理的方法、系统及设备
US10860352B2 (en) * 2013-07-25 2020-12-08 Hewlett Packard Enterprise Development Lp Host system and method for managing data consumption rate in a virtual data processing environment
US9262221B2 (en) * 2013-09-30 2016-02-16 International Business Machines Corporation Calculating the rank of multiple virtual machines based on a negative correlation between the rank and each of the computational capacity and monetary investment
US20150154048A1 (en) * 2013-12-04 2015-06-04 International Business Machines Corporation Managing workload to provide more uniform wear among components within a computer cluster
US10574699B1 (en) * 2015-11-30 2020-02-25 Amazon Technologies, Inc. Load balancer request processing
CN107832117A (zh) * 2017-11-15 2018-03-23 北京东土科技股份有限公司 一种虚拟机状态信息同步方法及电子设备
USD1014306S1 (en) 2019-10-24 2024-02-13 Assa Abloy Entrance Systems Ab Signal light for a loading dock
KR102481870B1 (ko) * 2020-10-27 2022-12-28 한국과학기술정보연구원 인공 지능 학습을 위한 컴퓨팅 환경 구축 방법 및 장치

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6459435A (en) 1987-08-29 1989-03-07 Nec Corp Virtual system for idle timer in virtual computer system
JPS6459438A (en) 1987-08-31 1989-03-07 Oki Electric Ind Co Ltd Read-out method for memory device
US5201049A (en) * 1988-09-29 1993-04-06 International Business Machines Corporation System for executing applications program concurrently/serially on different virtual machines
US5339392A (en) * 1989-07-27 1994-08-16 Risberg Jeffrey S Apparatus and method for creation of a user definable video displayed document showing changes in real time data
GB2309558A (en) * 1996-01-26 1997-07-30 Ibm Load balancing across the processors of a server computer
US5835705A (en) * 1997-03-11 1998-11-10 International Business Machines Corporation Method and system for performance per-thread monitoring in a multithreaded processor
US6574587B2 (en) * 1998-02-27 2003-06-03 Mci Communications Corporation System and method for extracting and forecasting computing resource data such as CPU consumption using autoregressive methodology
US6496847B1 (en) * 1998-05-15 2002-12-17 Vmware, Inc. System and method for virtualizing computer systems
US20010054066A1 (en) * 2000-06-13 2001-12-20 Louis Spitzer Apparatus and method for transmitting information from signage to portable computing device, and system utilizing same
JP2002041305A (ja) * 2000-07-26 2002-02-08 Hitachi Ltd 仮想計算機システムにおける計算機資源の割当て方法および仮想計算機システム
US7089558B2 (en) * 2001-03-08 2006-08-08 International Business Machines Corporation Inter-partition message passing method, system and program product for throughput measurement in a partitioned processing environment
US7191440B2 (en) * 2001-08-15 2007-03-13 Intel Corporation Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor
JP3879471B2 (ja) * 2001-10-10 2007-02-14 株式会社日立製作所 計算機資源割当方法
US7346906B2 (en) * 2002-07-09 2008-03-18 International Business Machines Corporation Workload management in a computing environment
US6792460B2 (en) * 2002-10-02 2004-09-14 Mercury Interactive Corporation System and methods for monitoring application server performance
DE10251523A1 (de) * 2002-11-04 2004-05-19 Siemens Ag System und Verfahren zur Bereitstellung von Daten und Diensten für Geräte, sowie Gerät, welches die bereitgestellten Daten und Dienste verwendet
US20040103057A1 (en) * 2002-11-26 2004-05-27 Worldpass Corporation System and method for processing a long distance communication using a debit account
US7526452B2 (en) * 2002-12-16 2009-04-28 International Business Machines Corporation Apparatus, methods and computer programs for metering and accounting for services accessed over a network
US7290260B2 (en) * 2003-02-20 2007-10-30 International Business Machines Corporation Dynamic processor redistribution between partitions in a computing system
US7620950B2 (en) * 2003-07-01 2009-11-17 International Business Machines Corporation System and method to monitor amount of usage of applications in logical partitions
DE10335429A1 (de) * 2003-07-31 2005-02-24 Siemens Ag Verfahren zum Erzeugen eines Geräteprotokolls für ein Feldgerät einer Automatisierungsanlage
US8776050B2 (en) * 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
US7877754B2 (en) * 2003-08-21 2011-01-25 International Business Machines Corporation Methods, systems, and media to expand resources available to a logical partition
JP2005085203A (ja) * 2003-09-11 2005-03-31 Bank Of Tokyo-Mitsubishi Ltd 決済サービス装置及び方法、コンピュータプログラム、プログラム記録媒体
US7698705B1 (en) * 2004-10-19 2010-04-13 Oracle America, Inc. Method and system for managing CPU time consumption
US8799891B2 (en) * 2005-03-02 2014-08-05 Hewlett-Packard Development Company, L.P. System and method for attributing CPU usage of a virtual machine monitor to a corresponding virtual machine

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104011680A (zh) * 2011-12-26 2014-08-27 英特尔公司 在物理处理单元中调度虚拟机的虚拟中央处理单元
CN104011680B (zh) * 2011-12-26 2017-03-01 英特尔公司 在物理处理单元中调度虚拟机的虚拟中央处理单元

Also Published As

Publication number Publication date
US8230419B2 (en) 2012-07-24
CN100428168C (zh) 2008-10-22
US20070028237A1 (en) 2007-02-01
US8762993B2 (en) 2014-06-24
US20120204177A1 (en) 2012-08-09

Similar Documents

Publication Publication Date Title
CN1904839A (zh) 捕获虚拟机的中央处理单元利用的方法、系统及程序产品
US11204793B2 (en) Determining an optimal computing environment for running an image
US20230004434A1 (en) Automated reconfiguration of real time data stream processing
CN107567696B (zh) 计算集群内的资源实例群组的自动扩展
CN109074377B (zh) 用于实时处理数据流的受管理功能执行
US8909769B2 (en) Determining optimal component location in a networked computing environment
CN1229725C (zh) 提供对多个快照提供方的公共协调和管理的方法和系统
US9811370B2 (en) Determining an optimal datacenter for placing a resource instance in a cloud that would benefit an intended set of end users in a geographical region
US9298732B2 (en) Searching cloud-based distributed storage resources using a set of expendable probes
CN106339254B (zh) 一种虚拟机快速启动方法、装置及管理节点
CA2637749C (en) Method, system, and program product for deploying a platform dependent application in a grid environment
US20120042163A1 (en) Securely identifying host systems
CN101256495A (zh) 用于中间件组件的基于策略自动配置的方法和装置
US10762456B2 (en) Migration estimation with partial data
US9451033B2 (en) Enhanced command selection in a networked computing environment
CN112348302A (zh) 具有无状态协调器的可扩展工作流引擎
US20050114834A1 (en) Grid-enabled ANT compatible with both stand-alone and grid-based computing systems
US20220400368A1 (en) Mobile device roaming optimization and operation
CN114661458A (zh) 通过循环部署和评估迁移进行预置到云工作负载迁移的方法和系统
US11121981B1 (en) Optimistically granting permission to host computing resources
US7849164B2 (en) Configuring a device in a network via steps
CN112907345B (zh) 基于标识码的票务结算的方法、系统、设备以及介质
US20210216518A1 (en) Paging row-based data stored as objects
CN115454562A (zh) 标识跨集群计算环境的资源锁定所有权

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211109

Address after: New York, United States

Patentee after: Qindarui Co.

Address before: Armank, New York, USA

Patentee before: International Business Machines Corp.