CN103377281A - 用于修复过度承诺的计算环境中的过载的方法和系统 - Google Patents

用于修复过度承诺的计算环境中的过载的方法和系统 Download PDF

Info

Publication number
CN103377281A
CN103377281A CN201310139393XA CN201310139393A CN103377281A CN 103377281 A CN103377281 A CN 103377281A CN 201310139393X A CN201310139393X A CN 201310139393XA CN 201310139393 A CN201310139393 A CN 201310139393A CN 103377281 A CN103377281 A CN 103377281A
Authority
CN
China
Prior art keywords
virtual machine
silence
resource
work values
overload
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
CN201310139393XA
Other languages
English (en)
Other versions
CN103377281B (zh
Inventor
S·A·巴赛特
R·A·胡森
R·马亨德鲁
H·V·拉马萨米
S·萨卡尔
唐春强
N·G·沃格尔
王龙
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.)
International Business Machines Corp
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 CN103377281A publication Critical patent/CN103377281A/zh
Application granted granted Critical
Publication of CN103377281B publication Critical patent/CN103377281B/zh
Expired - Fee Related 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration

Abstract

本发明涉及一种用于修复过度承诺的计算环境中的过载的方法和系统。所述方法包括:测量计算环境中的至少一个系统管理程序中的每个系统管理程序上的多个虚拟机中的每个虚拟机的资源使用;在检测到所述至少一个系统管理程序中的一个系统管理程序上的资源过载时:确定要针对该系统管理程序上的所述多个虚拟机中的至少一个虚拟机采取的至少一个操作,以便在增加运行中的虚拟机的价值的同时修复资源过载;以及向该系统管理程序发送命令以发出所述至少一个操作。

Description

用于修复过度承诺的计算环境中的过载的方法和系统
技术领域
本发明的实施例一般地涉及信息技术,更具体地说,涉及虚拟机管理。
背景技术
计算云系统中的资源过度订阅正在成为信息技术(IT)服务中的普遍现象。通常供应虚拟机(VM)以托管云系统中的单独服务。传统上,为这些VM供应其以物理资源保证的所有被分配资源(例如,存储器和中央处理单元(CPU))。超过可以由物理资源保证的数量的资源分配(即,资源过度订阅)允许在系统管理程序上托管更多的VM。因为VM通常并不消耗所有被分配资源,所以过度订阅可以增加资源利用率,因此降低服务供应成本。
但是,过度订阅带来的风险是在托管的VM用完被分配资源之前,系统管理程序中出现资源过载,并且资源过载(尤其是存储器过载)极大地降低服务性能。
试图补救过度订阅的不良后果的现有方法包括仅迁移解决方案。但是,仅迁移解决方案并不足以修复过度承诺(over-committed)的系统中的过载(在这些系统中,存在大量系统管理程序同时接近过载的可能性),并且在密集型过度承诺的系统管理程序群集中迁移开销可能很大。
因此,需要修复过度承诺的计算环境中的过载。
发明内容
在本发明的一个方面,提供了用于修复资源过载的技术。一种用于修复过度承诺的计算环境中的过载的示例性计算机实现的方法可以包括以下步骤:测量计算环境中的至少一个系统管理程序中的每个系统管理程序上的多个虚拟机中的每个虚拟机的资源使用;在检测到所述至少一个系统管理程序中的一个系统管理程序上的资源过载时:确定要针对该系统管理程序上的所述多个虚拟机中的至少一个虚拟机采取的至少一个操作,以便在增加运行中的虚拟机的价值的同时修复资源过载;以及向该系统管理程序发送命令以发出所述至少一个操作。
在本发明的另一个方面,提供了用于虚拟化环境的自动过载修复方法的技术。一种示例性计算机实现的方法包括以下步骤:通过从系统内的多个虚拟机选择所述虚拟机的要迁移的子集以及所述虚拟机的要静默(quiesce)的子集而从系统资源过载情况中恢复;以及定期选择所述虚拟机的要迁移的子集以及所述虚拟机的要恢复的子集,以便增加运行中的虚拟机数量并增加运行中的虚拟机实现的工作价值。
本发明的另一个方面或其元素可以以制品的形式实现,所述制品有形地包含计算机可读指令,当执行所述计算机可读指令时,导致计算机执行在此描述的多个方法步骤。此外,本发明的另一个方面或其元素可以以装置的形式实现,所述装置包括存储器和至少一个处理器,所述至少一个处理器耦合到所述存储器并且可操作以执行说明的方法步骤。此外,本发明的另一个方面或其元素可以以用于执行在此描述的方法步骤的部件或其元素的形式实现;所述部件可以包括(i)硬件模块(多个),(ii)软件模块(多个),或(iii)硬件和软件模块的组合;(i)-(iii)中的任何一个都实现在此说明的特定技术,并且所述软件模块被存储在有形的计算机可读存储介质(或多个此类介质)中。
从以下将结合附图阅读的对本发明的示例性实施例的详细描述,本发明的这些和其它目标、特性以及优点将变得显而易见。
附图说明
图1是示出根据本发明的一个实施例的云中的过载修复系统的实例架构的示意图;
图2是示出根据本发明的一个实施例的目标云中的过载修复系统的实施架构的示意图;
图3是示出根据本发明的一个实施例的用于VM静默的选择算法的示意图;
图4是示出根据本发明的一个实施例的用于VM恢复的选择算法的示意图;
图5是示出根据本发明的一个实施例的用于修复过度承诺的计算环境中的过载的技术的流程图;以及
图6是其中可以实现本发明的至少一个实施例的示例性计算机系统的系统示意图。
具体实施方式
如在此所描述的,本发明的一个方面包括修复过度承诺的计算环境中的过载。本发明的至少一个实施例包括提供一种机制,以便修复过载而无需假设始终具有可用于迁移的资源。如在此所详述的,使用工作价值概念比较VM的重要性,并将过载修复问题表述为可移除在线多背包问题(ROMKP)的变型。本发明的一个方面包括一种用于求解该优化问题的算法。
本发明的一个实施例例如可以在大型商业云环境中实现。当不存在资源可用系统管理程序时,本发明的至少一个实施例包括临时放弃某些计算,即,使一个或多个被确定为不太重要的VM静默以便修复持续过载,从而使其余VM正常运行。当一组VM完成其作业并正常终止或释放资源之后,资源变得可用并且被静默的VM恢复以完成其作业。因此,如在此所详述的,本发明的一个方面包括确定应针对哪些VM采取哪些操作(迁移、静默或恢复),以便在可能没有足够资源的过度订阅的计算系统中修复资源过载,同时增加(例如,最大化)运行中的服务的价值。
此外,本发明的至少一个实施例包括综合对VM的静默、恢复和迁移操作的考虑,以便提供解决该问题变型的算法。相应地,所述算法结合对静默/迁移/恢复操作的成本的考虑,并且通过试探算法接近全局优化。
图1是示出根据本发明的一个实施例的云中的过载修复系统的实例架构的示意图。举例来说,图1示出了互连的系统管理程序106和110。将VM(例如,VM102和104)的映像放置在跨所有系统管理程序共享的存储装置上。因此,可以在任何系统管理程序上启动或恢复VM。安装在每个系统管理程序中的监视器(例如由组件108和112示出)定期测量该系统管理程序上的所有VM的资源使用,并向修复中心组件114报告资源测量。
当系统管理程序中的监视器检测到系统管理程序上的过载时,修复中心知晓云中的所有系统管理程序的资源使用,并做出要迁移或静默或恢复哪些VM的决策。此外,恢复中心向对应的系统管理程序发送命令以发出操作。通过图1中的虚线示出监视器和修复中心之间的消息传输。
因为VM的资源使用随时间变化,并且不时发生VM供应和取消供应,所以云中的资源使用也有所变化。因此,修复中心定期检查是否有足够的资源变得可用以便恢复任何被静默的VM。
如在此所详述的,本发明的一个方面包括使用“工作价值”的概念来定义VM的重要性。工作价值如在此所使用的,旨在衡量VM被静默导致的VM上的潜在服务/任务损失和/或VM被静默对其它VM的执行的影响。在传统的VM放置技术中,并不测量这些价值作为效用,因为此类方法不会使VM静默。例如,工作价值包括被静默的VM在如果未被静默的情况下完成的预期工作,而这些技术中的效用没有考虑此方面。
本发明的至少一个实施例的目标是使执行最少量工作价值的VM静默,并恢复执行更多工作价值的VM。如在此所描述的,使用分析模型评估每个VM的工作价值,从而利用VM度量的现有分析(例如,季节性时间序列)计算/估计工作价值。此类计算可以结合有关被预测工作负载的模式、从过去或工作负载类型进行的生命周期预测、客户风格等知识。
此外,本发明的至少一个实施例包括使用相关性模型评估每个VM的工作价值。这例如可以包括经由配置分析的静态相关性、动态相关性和/或使用其它试探法,例如VM价格、当前中央处理单元(CPU)工作等。
工作价值的一个实例实施例是收益或价格。如果未使用价格作为工作价值,则可以通过服务类型指示工作价值。当提供关键服务(例如电子邮件和网络文件系统(NFS))的VM被静默时,可能导致重大损失。可以直接从有关VM服务的知识,或者通过利用分析模型(如果没有提供此类直接知识)来估计潜在损失。例如,如果VM为多个机器提供备份服务并且每周一次定期执行备份服务,则可以应用季节性时间序列分析以便检测此VM的服务的规律性,并预测该VM在特定时间的关键性。还可以预测工作负载模式,并使用它确定VM的工作在特定时间的重要性。
除了使用有关服务的知识、分析模型和工作负载模式来估计工作价值之外,管理员可以指定VM在任何时间t的工作价值的计算。下面给出了计算工作价值的一个实例(需要正确设置参数V1、V2、V3以及函数
Figure BDA00003082028100051
除了被静默的VM的服务损失之外,被静默的VM还可能影响依赖于该被静默的VM的其它VM。举例来说,WebSphere Application Server(WAS)中的股票交易服务依赖于DB2服务器,并且WAS和DB2服务器存在于两个单独的VM中。当DB2VM被静默时,WAS VM不会实现任何工作价值。
此外,本发明的至少一个实施例可以包括当选择某些VM以便静默、迁移或恢复时,在无相关性情况下优化运行中的VM的总工作价值。在无相关性情况下,VM的工作价值与其它VM的工作价值无关。在此类情况下,问题是多背包问题(MKP)的变型,或者更具体地说,是可移除在线MKP的变型,因为要供应VM,从系统管理程序中移除VM,以及将VM从一个系统管理程序重新定位到另一个,并且VM具有变化的资源使用和工作价值。除了工作价值之外,在处理该问题时还考虑VM静默和迁移的成本。
举例来说,考虑具有m个系统管理程序H1、H2、…、Hm的云计算环境。Hi具有资源量Ri(为使该实例简单起见,假设具有一种类型的资源;但是将理解,可以扩展本发明的至少一个实施例以支持多种类型的资源)。此外,假设存在n个VM:VM1、VM2、…、VMn。在此使用的变量被定义如下:
uj  VMj要完成的工作价值
rj  VMj使用的资源
Ri  Hi中的资源
xi,j  1:VMj在Hi上运行;0:其他情况
cqj  静默VMj的成本
crj  恢复VMj的成本
cmj  迁移VMj的成本
μ   过载检测的阈值百分比
uj、rj和xi,j随时间变化;因此,它们被表示为时间t的函数:uj(t)、rj(t)和xi,j(t)。形式上,给出以下表示:
Figure BDA00003082028100071
并且系统正在经历资源过载(当修复过载时)或未经历资源过载(当恢复被静默的VM时)。即,
Figure BDA00003082028100072
本发明的至少一个实施例尝试通过选择受以下约束的xi,j(t+1)来获得
max ( Σ i = 1 m Σ j = 1 n ( u j ( t + 1 ) * x i , j ( t + 1 ) ) )
Figure BDA00003082028100074
以及
quiesce cos t = Σ k = 1 | YQ | ( cq y q k * Σ i = 1 m x i , yq k ( t + 1 ) ) ≤ thrd q , yq ∈ YQ resume cos t = Σ k = 1 | YR | ( cr yr k * Σ i = 1 m x i , yr k ( t + 1 ) ) ≤ thrd r , yr ∈ YR migration cos t = Σ k = 1 | YM | ( cm ym k * Σ i = 1 m x i , ym k ( t + 1 ) ) ≤ thrd m , ym ∈ YM YQ = { j | VM j is to be quiesced } YR = { j | VM j is to be resumed } YM = { j | VM j is to be migrated }
thrdq、thrdr和thrdm分别是静默、恢复和迁移成本的阈值。这些值可以由系统确定或者由管理员指定。
VMj要被静默、恢复、迁移还是保持不变将在形式上由xi,j(t)和xi,j(t+1)之间的关系表示,如下所示:
A = Σ i - 1 m [ x i , j ( t + 1 ) - x i , j ( t ) ] ; B = Σ i = 1 m [ x i , j ( t + 1 ) - x i , j ( t ) ] 2
(1)VMj要被静默
Figure BDA00003082028100078
A=-1,B=1
(2)VMj要被恢复
Figure BDA00003082028100081
A=1,B=1
(3)VMj要被迁移
Figure BDA00003082028100082
A=0,B=2
(4)VMj要被保持不变
Figure BDA00003082028100083
A=0,B=0
ROMKP问题的该变型是NP困难(NP hard)问题。本发明的至少一个实施例包括一种设计的ROWM近似算法以便解决该问题。所述算法中存在两个部分:过载修复部分,用于当系统管理程序发生过载时,确定要静默/迁移哪些VM;以及定期恢复部分,用于当资源变得充足时,确定要恢复哪些被静默的VM。
当过载(即,资源使用超过阈值thrd1)时,标识过载的系统管理程序上的一组VM,必须迁移或静默这些VM以便修复过载。然后,执行测试以便确定是否可以通过针对MKP应用试探算法,将C中的所有VM(即,消耗过载的系统管理程序上大部分资源以至其余VM消耗的资源少于阈值thrd2的VM)迁移到其它系统管理程序。当没有足够的资源时,所述测试将失败。因此,计划静默整个云中具有最小的工作价值-资源使用比率的VM,并且再次执行测试。继续该过程直到测试通过。
随后,检查Q中被计划静默的VM以便选择不必要地被计划静默的那些VM。在这些步骤之后,获得最终迁移和静默计划。定期恢复部分的步骤类似于上面对过载修复部分的描述,只是执行测试以便确定是否可以恢复C中所有被静默的VM。
该算法具有时间复杂度O(nlogn+nkm),其中n是云中的VM数,k是要被迁移/恢复的VM数,m是系统管理程序数。它是多项式时间开销,并且例如可以针对包含数百个系统管理程序和数千个VM的云实现。
举例来说,本发明的至少一个实施例可以在大型云平台上被实现为MAPE(监视-分析-计划-执行)循环。图2是示出根据本发明的一个实施例的目标云中的过载修复系统的实施架构的示意图。图2中的带阴影组件是那些要被添加到目标云以支持过载修复的组件。图2中的不带阴影组件是云本身的组件。
云管理器214是负责VM 202的VM供应、取消供应、迁移和其它管理操作的软件包。数据仓库212存储由系统管理程序204中的监视器206定期报告的测量数据。客户可以通过门户216向云管理器发出命令以便执行所需的操作。在门户和云管理器之间利用REST(表现状态传输)应用编程接口(API)以便请求云管理器中的特定操作。此外,可以在云管理器和门户之间实施消息队列组件218。
与图1中示出的基本过载修复相比,图2中示出的系统包括修复数据库(DB)208以支持持久性。所述数据库存储由系统管理程序监视器生成的事件(例如,“资源过载”事件、“已修复过载”事件等)、云管理器执行的操作的状态(例如,“迁移成功”、“恢复VM失败”等),以及所有被管理VM的当前状态(例如,“正常运行”、“过载”、“静默”等)。修复中心210是在单独计算机上运行的过程,其定期查询修复DB以便处理所述DB接收的任何新事件。当处理这些事件时,修复中心从数据仓库212取回执行数据(当修复算法中需要这些数据时)。当进行有关要迁移、静默和/或恢复哪些VM的决策时,向云管理器发送命令以执行决策。
图3是示出根据本发明的一个实施例的用于VM静默的选择算法的流程图。在步骤302,Q={计划要通过该算法静默的VM;初始为空}。在步骤304,C={消耗过载的系统管理程序上大部分资源以至其余VM消耗少于阈值(例如,85%)的物理资源的VM}。步骤306包括针对所有系统管理程序上的所有运行中的VM,根据其U/R比率按升序排序。步骤308包括进行测试以便确定是否可以在不会导致资源使用超过设置阈值(例如,85%)并具有可接受的迁移成本的情况下,将C中的VM迁移到其它系统管理程序(Q中的VM被认为已静默)。系统管理员可以根据其经验和专业知识指定可接受的迁移成本的准则;例如,准则为在某一时间段内少于80%的网络带宽。此外,在测试期间应用最佳拟合MKP试探算法。如果测试成功(如在步骤310中所确定),则执行工作并且所述算法继续到步骤316;否则,所述算法继续到步骤312。
在步骤312,Q=Q+{具有次最小的U/R值并具有可接受的静默成本的VM}。步骤314包括确定是否修复了过载。如果是,则所述算法继续到步骤316;否则,所述算法返回到步骤308。因此,将迁移计划成功地创建为M,并且步骤316包括从Q中移除不必要地通过步骤312添加到Q中的VM。<M,Q>是最终结果。
图4是示出根据本发明的一个实施例的用于VM恢复的选择算法的示意图。在步骤402,Q={计划要通过该算法静默的VM;初始为空}。在步骤404,C={被静默的VM}。步骤406包括针对所有系统管理程序上的所有运行中的VM和被静默的VM,根据其U/R比率按升序排序。步骤408包括进行测试以便确定是否可以在不会导致资源使用超过阈值(例如,85%)并具有可接受的恢复成本的情况下,在系统管理程序上恢复C中的VM(Q中的VM被认为已静默)。此外,在所述测试期间应用最佳拟合MKP试探算法。
步骤410确定所述测试是否成功。如果成功,则执行工作并且所述算法继续到步骤414。否则,所述算法继续到步骤412。在步骤412,Q=Q+{具有次最小的U/R值并具有可接受的静默成本的VM}。随后,所述算法返回到步骤408。
将恢复计划成功地创建为M,并且步骤414包括从Q中移除不必要地通过步骤412添加到Q中的VM。<M,Q>是最终结果。
图5是示出根据本发明的一个实施例的用于修复过度承诺的计算环境中的过载的技术的流程图。步骤502包括测量计算环境中的至少一个系统管理程序中的每个系统管理程序上的多个虚拟机中的每个虚拟机的资源使用。
在检测到所述至少一个系统管理程序中的一个系统管理程序上的资源过载时,执行步骤504和506。步骤504包括确定要针对该系统管理程序上的所述多个虚拟机中的至少一个虚拟机采取的至少一个操作,以便在增加或最大化运行中的虚拟机的价值的同时修复资源过载。如在此所详述的,所述操作可以包括迁移、静默或恢复中的至少一个。
确定要采取的至少一个操作可以包括计算该系统管理程序上的每个虚拟机的工作价值,其中工作价值可以包括以下项中的至少一个:由该虚拟机被静默导致的该虚拟机上的潜在服务损失的测量,以及该虚拟机被静默对至少一个其它虚拟机的执行的影响的测量。每个虚拟机的工作价值可以包括至少一个因素的组合,所述至少一个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
此外,确定要采取的至少一个操作可以包括标识要静默的具有最低工作价值的至少一个虚拟机和/或要恢复以便优化的具有较高工作价值的至少一个虚拟机。此外,确定要采取的至少一个操作可以包括持续测量和利用每个虚拟机的工作价值和资源消耗。本发明的至少一个实施例还可以包括使用工作价值与资源消耗的比率判定是否要针对虚拟机采取迁移、静默或恢复操作中的任何一个。
步骤506包括向该系统管理程序发送命令以发出所述至少一个操作。此外,图5中示出的技术可以包括定期确定是否有足够的资源变得可用以便恢复被静默的虚拟机。
还如在此所详述的,本发明的至少一个实施例包括一种用于虚拟化环境的自动过载修复方法。此类方法包括通过从系统内的多个虚拟机选择所述虚拟机的要迁移的子集以及所述虚拟机的要静默的子集而从系统资源过载情况中恢复。此外,本发明的此类实施例可以包括定期选择所述虚拟机的要迁移的子集以及所述虚拟机的要恢复的子集,以便增加运行中的虚拟机数量并增加运行中的虚拟机实现的工作价值。如在此所详述的,迁移、静默和恢复选择均考虑每个虚拟机所贡献的工作价值度量。所述工作价值度量组合一个或多个因素,所述一个或多个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
此外,在本发明的至少一个实施例中,问题被表述为可移除在线多背包问题(ROMKP)的变型。此类表述的问题包括:除新物体的到达以外,考虑随时间变化的物体工作价值和资源使用;允许背包操作,所述背包操作包括从背包移除一个或多个物体、将一个或多个物体从一个背包移动到另一个背包,以及将一个或多个物体放回背包。此类问题还包括在决策中考虑所述背包操作的成本。
对ROMKP问题的所述变型的解可以包括:持续测量和利用每个虚拟机的所述工作价值和资源使用;使用工作价值与资源使用的比率作为决策准则,以便针对一个或多个虚拟机选择迁移、静默或恢复操作;以及计算每个迁移、静默和/或恢复操作的成本,并使用所述成本作为问题公式化的约束。此外,在本发明的至少一个实施例中,虚拟机的所述工作价值被定义为1/(资源使用)(如果该虚拟机在给定最近时间段P内未被静默)以及无穷大(如果该虚拟机在所述时间段P内被静默)。
如在此所描述的,图5中示出的技术还可以包括提供一种系统,其中所述系统包括不同软件模块,所述不同软件模块的每一个都包含在有形的计算机可读可记录存储介质中。例如,所有模块(或其任何子集)可以在相同介质中,或者每一个可以在不同介质中。所述模块可以包括附图中示出的任何或全部组件。在本发明的一个方面,所述模块例如可以在硬件处理器上运行。然后可以使用所述系统的所述不同软件模块(如上所述,在硬件处理器上执行)执行所述方法步骤。此外,一种计算机程序产品可以包括有形的计算机可读可记录存储介质,其具有适合于被执行的代码以便执行在此描述的至少一个方法步骤,包括为所述系统供应所述不同软件模块。
此外,图5中示出的技术能够通过可以包括计算机可用程序代码的计算机程序产品来实现,所述计算机可用程序代码被存储在数据处理系统内的计算机可读存储介质中,并且其中所述计算机可用程序代码通过网络从远程数据处理系统下载。此外,在本发明的一个方面,所述计算机程序产品可以包括被存储在服务器数据处理系统内的计算机可读存储介质中的计算机可用程序代码,并且其中所述计算机可用程序代码通过网络下载到远程数据处理系统,以便在计算机可读存储介质中与所述远程系统一起使用。
如本领域的技术人员将理解的,本发明的各方面可以体现为系统、方法或计算机程序产品。因此,本发明的各方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或组合了在此通常可以被称为“电路”、“模块”或“系统”的软件和硬件方面的实施例的形式。此外,本发明的各方面可以采取体现在计算机可读介质(在介质中包含计算机可读程序代码)中的计算机程序产品的形式。
本发明的一个方面或其元素可以以装置的形式实现,所述装置包括存储器和至少一个处理器,所述至少一个处理器耦合到所述存储器并且可操作以执行示例性方法步骤。
此外,本发明的一个方面可以使用在通用计算机或工作站上运行的软件。参考图6,此类实施方式例如可以采用处理器602、存储器604和输入/输出接口(例如,由显示器606和键盘608形成)。术语“处理器”如在此所使用的,旨在包括任何处理设备,例如包括CPU(中央处理单元)和/或其它形式处理电路的处理设备。此外,术语“处理器”可以指多个单独的处理器。术语“存储器”旨在包括与处理器或CPU关联的存储器,例如RAM(随机存取存储器)、ROM(只读存储器)、固定存储器设备(例如,硬盘驱动器)、可移动存储器设备(例如,软盘)、闪存等。此外,词组“输入/输出接口”如在此所使用的,旨在包括例如用于将数据输入到所述处理单元中的机构(例如,鼠标),以及用于提供与所述处理单元关联的结果的机构(例如,打印机)。作为数据处理单元612的一部分,处理器602、存储器604和输入/输出接口(例如显示器606和键盘608)例如可以通过总线610互连。还可以例如通过总线610为网络接口614(例如网卡,可以提供它以便与计算机网络连接)以及介质接口616(例如软盘或CD-ROM驱动器,可以提供它以便与介质618连接)提供适合的互连。
因此,如在此所描述的,包括用于执行本发明的所述方法的指令或代码的计算机软件可以被存储在关联的存储设备(例如,ROM、固定或可移动存储器)中,并且当准备使用时,被部分或全部加载(例如,加载到RAM中)并由CPU实现。此类软件可以包括但不限于固件、驻留软件、微代码等。
适合于存储和/或执行程序代码的数据处理系统将包括至少一个通过系统总线610直接或间接连接到存储器元件604的处理器602。所述存储器元件可以包括在程序代码的实际执行期间采用的本地存储器、大容量存储装置以及提供至少某些程序代码的临时存储以减少必须在执行期间从大容量存储装置检索代码的次数的高速缓冲存储器。
输入/输出或I/O设备(包括但不限于键盘608、显示器606、指点设备等)可以直接(例如通过总线610)或通过中间I/O控制器(为清楚起见而被省略)与所述系统相连。
网络适配器(例如网络接口614)也可以被连接到所述系统以使所述数据处理系统能够通过中间专用或公共网络变得与其它数据处理系统或远程打印机或存储设备相连。调制解调器、电缆调制解调器和以太网卡只是当前可用的网络适配器类型中的少数几种。
如在此(包括权利要求)所使用的,“服务器”包括运行服务器程序的物理数据处理系统(例如,如图6中示出的系统612)。将理解,此类物理服务器可以包括也可以不包括显示器和键盘。
如所说明的,本发明的各方面可以采取包含在计算机可读介质中的计算机程序产品的形式,所述计算机可读介质具有包含在其中的计算机可读程序代码。此外,可以使用一个或多个计算机可读介质的任意组合。所述计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质例如可以是(但不限于)电、磁、光、电磁、红外线或半导体系统、装置或设备或上述任意适合的组合。所述计算机可读存储介质的更具体的实例(非穷举列表)将包括以下项:具有一条或多条线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦写可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光存储设备、磁存储设备或上述任意适合的组合。在本文档的上下文中,计算机可读存储介质可以是任何能够包含或存储由指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合的程序的有形介质。
计算机可读信号介质可以包括其中包含计算机可读程序代码(例如,在基带中或作为载波的一部分)的传播数据信号。此类传播信号可以采取各种形式中的任一种,包括但不限于电磁、光或其中任意适合的组合。计算机可读信号介质可以是任何不属于计算机可读存储介质并且能够传送、传播或传输由指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合的程序的计算机可读介质。
可以使用适当的介质(包括但不限于无线、线缆、光缆、RF等或上述任意适合的组合)来传输包含在计算机可读介质中的程序代码。
用于执行本发明的各方面的操作的计算机程序代码可以使用包含至少一种编程语言的任意组合来编写,所述编程语言包括诸如Java、Smalltalk、C++之类的面向对象的编程语言以及诸如“C”编程语言或类似的编程语言之类的常规过程编程语言。所述程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为独立的软件包、部分地在用户计算机上并部分地在远程计算机上执行,或者完全地在远程计算机或服务器上执行。在后者的情况中,所述远程计算机可以通过包括局域网(LAN)或广域网(WAN)的任何类型网络与用户的计算机相连,或者可以与外部计算机进行连接(例如,使用因特网服务提供商通过因特网连接)。
在此参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图和/或方块图对本发明的各方面进行描述。将理解,所述流程图和/或方块图的每个方块以及所述流程图和/或方块图中的方块的组合可以由计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器以产生机器,以便通过所述计算机或其它可编程数据处理装置的处理器执行的所述指令产生用于实现在一个或多个流程图和/或方块图方块中指定的功能/操作的装置。
这些计算机程序指令也可以被存储在能够引导计算机、其它可编程数据处理装置或其它设备以特定方式执行功能的计算机可读介质中,以便存储在所述计算机可读介质中的所述指令产生一件包括实现在一个或多个流程图和/或方块图方块中指定的功能/操作的指令的制品。因此,本发明的一个方面包括有形地包含计算机可读指令的制品,当执行所述计算机可读指令时,导致计算机执行在此描述的多个方法步骤。
所述计算机程序指令还可被加载到计算机、其它可编程数据处理装置或其它设备,以导致在所述计算机、其它可编程装置或其它设备上执行一系列操作步骤以产生计算机实现的过程,从而在所述计算机或其它可编程装置上执行的所述指令提供用于实现在一个或多个流程图和/或方块图方块中指定的功能/操作的过程。
附图中的流程图和方块图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实施方式的架构、功能和操作。在此方面,所述流程图或方块图中的每个方块都可以表示模块、组件、段或代码部分,它们包括用于实现指定的逻辑功能(多个)的至少一个可执行指令。还应指出,在某些备选实施方式中,在方块中说明的功能可以不按图中说明的顺序发生。例如,示为连续的两个方块可以实际上被基本同时地执行,或者某些时候,取决于所涉及的功能,可以以相反的顺序执行所述方块。还将指出,所述方块图和/或流程图的每个方块以及所述方块图和/或流程图中的方块的组合可以由执行指定功能或操作的基于专用硬件的系统或专用硬件和计算机指令的组合来实现。
应指出,在此描述的任何方法都可以包括提供一种系统的附加步骤,所述系统包括包含在计算机可读存储介质中的不同软件模块;所述模块例如可以包括在此详述的任何或全部组件。然后可以使用所述系统的所述不同软件模块和/或子模块(如上所述,在硬件处理器602上执行)执行所述方法步骤。此外,计算机程序产品可以包括计算机可读存储介质,其具有适合于被执行的代码以便执行在此描述的至少一个方法步骤,包括为所述系统供应所述不同软件模块。
在任何情况下,应理解,在此示出的组件可以以各种形式的硬件、软件或它们的组合来实现;例如,专用集成电路(多个)(ASIC)、功能电路、具有关联存储器的经过适当编程的通用数字计算机等。给予了在此提供的本发明的教导后,本领域的技术人员将能够构想本发明的所述组件的其它实施方式。
在此使用的术语只是为了描述特定的实施例并且并非旨在作为本发明的限制。如在此所使用的,单数形式“一”、“一个”和“该”旨在同样包括复数形式,除非上下文明确地另有所指。还将理解,当在此说明书中使用时,术语“包括”和/或“包含”指定了声明的特性、整数、步骤、操作、元素和/或组件的存在,但是并不排除其它特性、整数、步骤、操作、元素、组件和/或其组的存在或增加。
以下的权利要求中的对应结构、材料、操作以及所有功能性限定的装置或步骤的等同替换,旨在包括任何用于与在权利要求中具体指出的其它单元相组合地执行该功能的结构、材料或操作。所给出的对本发明的描述其目的在于示意和描述,并非是穷尽性的,也并非是要把本发明限定到所表述的形式。对于所属技术领域的普通技术人员来说,在不偏离本发明范围和精神的情况下,显然可以作出许多修改和变型。对实施例的选择和说明,是为了最好地解释本发明的原理和实际应用,使所属技术领域的普通技术人员能够明了,本发明可以有适合所要的特定用途的具有各种改变的各种实施方式。
本发明的至少一个方面可以提供有益的效果,例如修复系统管理程序过载而无需假设始终具有可用于迁移的资源。
出于示例目的给出了对本发明的各种实施例的描述,但所述描述并非旨在是穷举的或是限于所公开的实施例。在不偏离所述实施例的范围和精神的情况下,对于本领域的技术人员来说许多修改和变化都将是显而易见的。在此使用的术语的选择是为了最佳地解释实施例的原理、实际应用或对市场中的技术的技术改进,或者使本领域的其它技术人员能够理解在此公开的实施例。

Claims (22)

1.一种用于修复过度承诺的计算环境中的过载的方法,所述方法包括:
测量计算环境中的至少一个系统管理程序中的每个系统管理程序上的多个虚拟机中的每个虚拟机的资源使用;
在检测到所述至少一个系统管理程序中的一个系统管理程序上的资源过载时:
确定要针对该系统管理程序上的所述多个虚拟机中的至少一个虚拟机采取的至少一个操作,以便在增加运行中的虚拟机的价值的同时修复资源过载;以及
向该系统管理程序发送命令以发出所述至少一个操作;
其中由计算机设备执行上述步骤中的至少一个步骤。
2.根据权利要求1的方法,其中所述至少一个操作包括迁移、静默或恢复中的至少一个。
3.根据权利要求1的方法,其中确定要采取的至少一个操作包括计算该系统管理程序上的每个虚拟机的工作价值,其中工作价值包括以下项中的至少一个:由该虚拟机被静默导致的该虚拟机上的潜在服务损失的测量,以及该虚拟机被静默对至少一个其它虚拟机的执行的影响的测量。
4.根据权利要求3的方法,其中确定要采取的至少一个操作包括标识要静默的具有最低工作价值的至少一个虚拟机和/或要恢复以便优化的具有较高工作价值的至少一个虚拟机。
5.根据权利要求3的方法,其中每个虚拟机的工作价值包括至少一个因素的组合,所述至少一个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
6.根据权利要求3的方法,其中确定要采取的至少一个操作包括持续测量和利用每个虚拟机的工作价值和资源消耗。
7.根据权利要求6的方法,还包括:
使用工作价值与资源消耗的比率判定是否要针对虚拟机采取迁移、静默或恢复操作中的任何一个。
8.根据权利要求1的方法,还包括:
定期判定是否有足够的资源变得可用以便恢复被静默的虚拟机。
9.一种用于修复过度承诺的计算环境中的过载的系统,所述系统包括:
至少一个不同软件模块,每个不同软件模块包含在有形的计算机可读介质中;
存储器;以及
至少一个处理器,其耦合到所述存储器并可操作以:
测量计算环境中的至少一个系统管理程序中的每个系统管理程序上的多个虚拟机中的每个虚拟机的资源使用;
在检测到所述至少一个系统管理程序中的一个系统管理程序上的资源过载时:
确定要针对该系统管理程序上的所述多个虚拟机中的至少一个虚拟机采取的至少一个操作,以便在增加运行中的虚拟机的价值的同时修复资源过载;以及
向该系统管理程序发送命令以发出所述至少一个操作。
10.根据权利要求9的系统,其中所述至少一个操作包括迁移、静默或恢复中的至少一个。
11.根据权利要求9的系统,其中所述至少一个处理器还可操作以计算该系统管理程序上的每个虚拟机的工作价值,其中工作价值包括以下项中的至少一个:由该虚拟机被静默导致的该虚拟机上的潜在服务损失的测量,以及该虚拟机被静默对至少一个其它虚拟机的执行的影响的测量。
12.根据权利要求11的系统,其中所述至少一个处理器还可操作以标识要静默的具有最低工作价值的至少一个虚拟机和/或要恢复以便优化的具有较高工作价值的至少一个虚拟机。
13.根据权利要求11的系统,其中每个虚拟机的工作价值包括至少一个因素的组合,所述至少一个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
14.根据权利要求11的系统,其中所述至少一个处理器还可操作以确定要采取的至少一个操作包括:持续测量和利用每个虚拟机的工作价值和资源消耗。
15.根据权利要求11的系统,其中所述至少一个处理器还可操作以使用工作价值与资源消耗的比率判定是否要针对虚拟机采取迁移、静默或恢复操作中的任何一个。
16.根据权利要求11的系统,其中所述至少一个处理器还可操作以定期判定是否有足够的资源变得可用以便恢复被静默的虚拟机。
17.一种用于虚拟化环境的自动过载修复方法,所述方法包括:
通过从系统内的多个虚拟机选择所述虚拟机的要迁移的子集以及所述虚拟机的要静默的子集而从系统资源过载情况中恢复;以及
定期选择所述虚拟机的要迁移的子集以及所述虚拟机的要恢复的子集,以便增加运行中的虚拟机数量并增加运行中的虚拟机实现的工作价值。
18.根据权利要求17的方法,其中迁移、静默和恢复选择均考虑每个虚拟机所贡献的工作价值度量。
19.根据权利要求18的方法,其中所述工作价值度量组合一个或多个因素,所述一个或多个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
20.根据权利要求19的方法,其中问题被表述为可移除在线多背包问题ROMKP的变型,包括:
除新物体的到达以外,考虑随时间变化的物体工作价值和资源使用;
允许背包操作,所述背包操作包括从背包移除一个或多个物体、将一个或多个物体从一个背包移动到另一个背包,以及将一个或多个物体放回背包;以及
在决策中考虑所述背包操作的成本。
21.根据权利要求20的方法,其中ROMKP问题的所述变型的解包括:
持续测量和利用每个虚拟机的所述工作价值和资源使用;
使用工作价值与资源使用的比率作为决策准则,以便针对一个或多个虚拟机选择迁移、静默或恢复操作;以及
计算每个迁移、静默和/或恢复操作的成本,并使用所述成本作为问题公式化的约束。
22.根据权利要求18的方法,其中虚拟机的工作价值被定义为:
1/(资源使用),如果该虚拟机在给定最近时间段P内未被静默;以及
无穷大,如果该虚拟机在所述时间段P内被静默。
CN201310139393.XA 2012-04-23 2013-04-22 用于修复过度承诺的计算环境中的过载的方法和系统 Expired - Fee Related CN103377281B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/453,019 2012-04-23
US13/453,019 US8839243B2 (en) 2012-04-23 2012-04-23 Remediating resource overload

Publications (2)

Publication Number Publication Date
CN103377281A true CN103377281A (zh) 2013-10-30
CN103377281B CN103377281B (zh) 2016-08-03

Family

ID=49290323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310139393.XA Expired - Fee Related CN103377281B (zh) 2012-04-23 2013-04-22 用于修复过度承诺的计算环境中的过载的方法和系统

Country Status (3)

Country Link
US (1) US8839243B2 (zh)
CN (1) CN103377281B (zh)
DE (1) DE102013206172A1 (zh)

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US8321568B2 (en) 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8397073B1 (en) 2009-09-04 2013-03-12 Amazon Technologies, Inc. Managing secure content in a content delivery network
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US8972980B2 (en) 2010-05-28 2015-03-03 Bromium, Inc. Automated provisioning of secure virtual execution environment using virtual machine templates based on requested activity
US9386021B1 (en) 2011-05-25 2016-07-05 Bromium, Inc. Restricting network access to untrusted virtual machines
US9244705B1 (en) * 2010-05-28 2016-01-26 Bromium, Inc. Intelligent micro-virtual machine scheduling
US8752047B2 (en) 2010-05-28 2014-06-10 Bromium, Inc. Automated management of virtual machines to process untrusted data based on client policy information
US9116733B2 (en) 2010-05-28 2015-08-25 Bromium, Inc. Automated provisioning of secure virtual execution environment using virtual machine templates based on requested activity
US10095530B1 (en) 2010-05-28 2018-10-09 Bromium, Inc. Transferring control of potentially malicious bit sets to secure micro-virtual machine
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US8452874B2 (en) 2010-11-22 2013-05-28 Amazon Technologies, Inc. Request routing processing
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US10546118B1 (en) 2011-05-25 2020-01-28 Hewlett-Packard Development Company, L.P. Using a profile to provide selective access to resources in performing file operations
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US9027024B2 (en) * 2012-05-09 2015-05-05 Rackspace Us, Inc. Market-based virtual machine allocation
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US9659074B1 (en) * 2012-06-27 2017-05-23 EMC IP Holding Company LLC VFA statistics
US9323577B2 (en) * 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US9280372B2 (en) 2013-08-12 2016-03-08 Amazon Technologies, Inc. Request processing techniques
US9348634B2 (en) 2013-08-12 2016-05-24 Amazon Technologies, Inc. Fast-booting application image using variation points in application source code
US10346148B2 (en) * 2013-08-12 2019-07-09 Amazon Technologies, Inc. Per request computer system instances
US9705755B1 (en) 2013-08-14 2017-07-11 Amazon Technologies, Inc. Application definition deployment with request filters employing base groups
US10430614B2 (en) 2014-01-31 2019-10-01 Bromium, Inc. Automatic initiation of execution analysis
US9680708B2 (en) 2014-03-14 2017-06-13 Veritas Technologies Method and apparatus for cloud resource delivery
US20150263894A1 (en) * 2014-03-14 2015-09-17 Avni Networks Inc. Method and apparatus to migrate applications and network services onto any cloud
US9405572B2 (en) * 2014-04-07 2016-08-02 International Business Machines Corporation Optimized resource allocation and management in a virtualized computing environment
CN104980297A (zh) * 2014-04-14 2015-10-14 中兴通讯股份有限公司 虚拟机资源的变更方法、装置及虚拟网络功能设备
US11182185B2 (en) * 2014-06-27 2021-11-23 Vmware, Inc. Network-based signaling to control virtual machine placement
US9747136B2 (en) * 2014-12-09 2017-08-29 Vmware, Inc. Methods and systems that allocate cost of cluster resources in virtual data centers
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US9792138B2 (en) * 2015-02-18 2017-10-17 Red Hat Israel, Ltd. Virtual machine migration to hyper visors with virtual function capability
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US10129170B2 (en) * 2015-04-30 2018-11-13 International Business Machines Corporation Automated split of work in a cloud environment
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US9923785B1 (en) * 2015-06-24 2018-03-20 EMC IP Holding Company LLC Resource scaling in computing infrastructure
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10678603B2 (en) * 2016-09-01 2020-06-09 Microsoft Technology Licensing, Llc Resource oversubscription based on utilization patterns in computing systems
US10616250B2 (en) 2016-10-05 2020-04-07 Amazon Technologies, Inc. Network addresses with encoded DNS-level information
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10296367B2 (en) 2017-02-03 2019-05-21 Microsoft Technology Licensing, Llc Resource management for virtual machines in cloud computing systems
US10423455B2 (en) * 2017-02-03 2019-09-24 Microsoft Technology Licensing, Llc Method for deploying virtual machines in cloud computing systems based on predicted lifetime
US10789097B2 (en) * 2017-02-16 2020-09-29 Nasdaq Technology Ab Methods and systems of scheduling computer processes or tasks in a distributed system
US10776428B2 (en) 2017-02-16 2020-09-15 Nasdaq Technology Ab Systems and methods of retrospectively determining how submitted data transaction requests operate against a dynamic data structure
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
JP6681377B2 (ja) * 2017-10-30 2020-04-15 株式会社日立製作所 リソースの割り当てを最適化するシステム及び方法
CN108259584A (zh) * 2017-12-30 2018-07-06 广东技术师范学院 一种云存储服务方的任务策略控制方法
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
US11550606B2 (en) * 2018-09-13 2023-01-10 Intel Corporation Technologies for deploying virtual machines in a virtual network function infrastructure
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11836577B2 (en) 2018-11-27 2023-12-05 Amazon Technologies, Inc. Reinforcement learning model training through simulation
US11429762B2 (en) 2018-11-27 2022-08-30 Amazon Technologies, Inc. Simulation orchestration for training reinforcement learning models
US11455234B2 (en) 2018-11-21 2022-09-27 Amazon Technologies, Inc. Robotics application development architecture
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
US11943285B2 (en) * 2019-03-22 2024-03-26 International Business Machines Corporation Metering computing resources in cloud computing environments

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1809051A (zh) * 2005-01-19 2006-07-26 华为技术有限公司 一种ip电信网中应对设备过载的处理方法
US20100180275A1 (en) * 2009-01-15 2010-07-15 International Business Machines Corporation Techniques for placing applications in heterogeneous virtualized systems while minimizing power and migration cost
US20120011240A1 (en) * 2007-07-18 2012-01-12 Hitachi, Ltd. Method and apparatus for managing virtual ports on storage systems
CN102662754A (zh) * 2012-04-20 2012-09-12 浙江大学 一种支持多场景的虚拟机调度装置和方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2419702A (en) 2004-10-29 2006-05-03 Hewlett Packard Development Co Virtual overlay infrastructures which can be suspended and later reactivated
US20070260702A1 (en) * 2006-05-03 2007-11-08 University Of Washington Web browser architecture for virtual machine access
US7673113B2 (en) 2006-12-29 2010-03-02 Intel Corporation Method for dynamic load balancing on partitioned systems
US9384062B2 (en) * 2008-12-27 2016-07-05 Vmware, Inc. Artificial neural network for balancing workload by migrating computing tasks across hosts
US7904540B2 (en) 2009-03-24 2011-03-08 International Business Machines Corporation System and method for deploying virtual machines in a computing environment
EP2309387A1 (en) 2009-10-06 2011-04-13 Alcatel Lucent A method of migrating a virtual machine, corresponding computer program product, and data storage device therefor
US8627123B2 (en) 2010-03-25 2014-01-07 Microsoft Corporation Managing power provisioning in distributed computing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1809051A (zh) * 2005-01-19 2006-07-26 华为技术有限公司 一种ip电信网中应对设备过载的处理方法
US20120011240A1 (en) * 2007-07-18 2012-01-12 Hitachi, Ltd. Method and apparatus for managing virtual ports on storage systems
US20100180275A1 (en) * 2009-01-15 2010-07-15 International Business Machines Corporation Techniques for placing applications in heterogeneous virtualized systems while minimizing power and migration cost
CN102662754A (zh) * 2012-04-20 2012-09-12 浙江大学 一种支持多场景的虚拟机调度装置和方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JING XU,ET AL.: "A Multi-objective Approach to Virtual Machine Management in Datacenters", 《ICAC"11:PROCEEDINGS OF THE 8TH ACM INTERNATIONAL CONFERENCE ON AUTONOMIC COMPUTING》, 14 June 2011 (2011-06-14), pages 225 - 234 *
WILLIAMS D,ET AL.: "Overdriver:Handling Memory Overload in an Oversubscribed Cloud", 《ACM SIGPLAN NOTICES》, vol. 46, no. 7, 31 July 2011 (2011-07-31), pages 205 - 216 *

Also Published As

Publication number Publication date
DE102013206172A1 (de) 2013-10-24
CN103377281B (zh) 2016-08-03
US20130283266A1 (en) 2013-10-24
US8839243B2 (en) 2014-09-16

Similar Documents

Publication Publication Date Title
CN103377281A (zh) 用于修复过度承诺的计算环境中的过载的方法和系统
Litke et al. Efficient task replication and management for adaptive fault tolerance in mobile grid environments
EP3816806B1 (en) Utilizing neural network and artificial intelligence models to select and execute test cases in a software development platform
US10817283B1 (en) Automated risk assessment for software deployment
US11915101B2 (en) Numerical quantum experimentation
US8881103B2 (en) Comparing component weights between builds
US20120060142A1 (en) System and method of cost oriented software profiling
CN112685170B (zh) 备份策略的动态优化
US20120054332A1 (en) Modular cloud dynamic application assignment
CN104239144A (zh) 一种多级分布式任务处理系统
Kamthe et al. A stochastic approach to estimating earliest start times of nodes for scheduling DAGs on heterogeneous distributed computing systems
US20240111739A1 (en) Tuning large data infrastructures
Zhao et al. Replacement policies for a parallel system with shortage and excess costs
CN103713990A (zh) 一种用于软件缺陷预测的方法和装置
US10936368B2 (en) Workload management with delegated correction of execution issues for improving a functioning of computing machines
Fan et al. Execution time prediction using rough set theory in hybrid cloud
Tsai et al. Autonomous decentralized combinatorial testing
US10339037B1 (en) Recommendation engine for recommending prioritized performance test workloads based on release risk profiles
US20150121058A1 (en) Intelligent Real-time Optimization
Chen et al. A model of scheduling optimizing for cloud computing resource sevices based on Buffer-pool Agent
Nisar et al. Resource-Dependent Critical Path Method for Identifying the Critical Path and the “Real Floats” in Resource-Constrained Project Scheduling
Singh et al. Survey on Fault Tolerant Techniques in Scientific Applications
US20230176914A1 (en) Computer-readable recording medium storing control program, control apparatus, and control method
Nasar et al. A differential evolution approach for software testing effort allocation
Xhafa et al. Experimental Study of GA‐Based Schedulers in Dynamic Distributed Computing Environments

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160803