CN103377281B - 用于修复过度承诺的计算环境中的过载的方法和*** - Google Patents
用于修复过度承诺的计算环境中的过载的方法和*** Download PDFInfo
- Publication number
- CN103377281B CN103377281B CN201310139393.XA CN201310139393A CN103377281B CN 103377281 B CN103377281 B CN 103377281B CN 201310139393 A CN201310139393 A CN 201310139393A CN 103377281 B CN103377281 B CN 103377281B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- silence
- resource
- work values
- system supervisor
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Mobile Radio Communication Systems (AREA)
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以及函数
除了被静默的VM的服务损失之外,被静默的VM还可能影响依赖于该被静默的VM的其它VM。举例来说,WebSphereApplicationServer(WAS)中的股票交易服务依赖于DB2服务器,并且WAS和DB2服务器存在于两个单独的VM中。当DB2VM被静默时,WASVM不会实现任何工作价值。
此外,本发明的至少一个实施例可以包括当选择某些VM以便静默、迁移或恢复时,在无相关性情况下优化运行中的VM的总工作价值。在无相关性情况下,VM的工作价值与其它VM的工作价值无关。在此类情况下,问题是多背包问题(MKP)的变型,或者更具体地说,是可移除在线MKP的变型,因为要供应VM,从***管理程序中移除VM,以及将VM从一个***管理程序重新定位到另一个,并且VM具有变化的资源使用和工作价值。除了工作价值之外,在处理该问题时还考虑VM静默和迁移的成本。
举例来说,考虑具有m个***管理程序H1、H2、…、Hm的云计算环境。Hi具有资源量Ri(为使该实例简单起见,假设具有一种类型的资源;但是将理解,可以扩展本发明的至少一个实施例以支持多种类型的资源)。此外,假设存在n个VM:VM1、VM2、…、VMn。在此使用的变量被定义如下:
ujVMj要完成的工作价值
rjVMj使用的资源
RiHi中的资源
xi,j1:VMj在Hi上运行;0:其他情况
cqj静默VMj的成本
crj恢复VMj的成本
cmj迁移VMj的成本
μ过载检测的阈值百分比
uj、rj和xi,j随时间变化;因此,它们被表示为时间t的函数:uj(t)、rj(t)和xi,j(t)。形式上,给出以下表示:
并且***正在经历资源过载(当修复过载时)或未经历资源过载(当恢复被静默的VM时)。即,
本发明的至少一个实施例尝试通过选择受以下约束的xi,j(t+1)来获得
以及
thrdq、thrdr和thrdm分别是静默、恢复和迁移成本的阈值。这些值可以由***确定或者由管理员指定。
VMj要被静默、恢复、迁移还是保持不变将在形式上由xi,j(t)和xi,j(t+1)之间的关系表示,如下所示:
(1)VMj要被静默A=-1,B=1
(2)VMj要被恢复A=1,B=1
(3)VMj要被迁移A=0,B=2
(4)VMj要被保持不变A=0,B=0
ROMKP问题的该变型是NP困难(NPhard)问题。本发明的至少一个实施例包括一种设计的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是负责VM202的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 (20)
1.一种用于修复过度承诺的计算环境中的过载的方法,所述方法包括:
测量计算环境中的至少一个***管理程序中的每个***管理程序上的多个虚拟机中的每个虚拟机的资源使用;
在检测到所述至少一个***管理程序中的一个***管理程序上的资源过载时:
确定要针对该***管理程序上的所述多个虚拟机中的至少一个虚拟机采取的多个操作中的至少一个操作,以便在增加运行中的虚拟机的价值的同时修复资源过载,其中所述确定包括:
计算该***管理程序上的多个虚拟机的每个虚拟机的工作价值,所述工作价值旨在衡量虚拟机被静默导致的虚拟机上的潜在服务/任务损失和/或虚拟机被静默对其它虚拟机的执行的影响;
计算该***管理程序上的多个虚拟机的每个虚拟机的多个操作的每个的相关联的成本;
使用多个虚拟机的每个的工作价值与资源消耗的比率、以及计算的成本进行所述确定;以及
向该***管理程序发送命令以发出所述至少一个操作;
其中由计算机设备执行上述步骤中的至少一个步骤。
2.根据权利要求1所述的方法,其中所述至少一个操作包括迁移、静默或恢复中的至少一个。
3.根据权利要求1所述的方法,其中工作价值包括以下项中的至少一个:由该虚拟机被静默导致的该虚拟机上的潜在服务损失的测量,以及该虚拟机被静默对至少一个其它虚拟机的执行的影响的测量。
4.根据权利要求3所述的方法,其中确定要采取的至少一个操作包括标识要静默的具有最低工作价值的至少一个虚拟机和/或要恢复以便优化的具有高工作价值的至少一个虚拟机。
5.根据权利要求3所述的方法,其中每个虚拟机的工作价值包括至少一个因素的组合,所述至少一个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
6.根据权利要求3所述的方法,其中确定要采取的至少一个操作包括持续测量和利用每个虚拟机的工作价值和资源消耗。
7.根据权利要求1所述的方法,还包括:
定期判定是否有足够的资源变得可用以便恢复被静默的虚拟机。
8.一种用于修复过度承诺的计算环境中的过载的***,所述***包括:
至少一个不同软件模块,每个不同软件模块包含在有形的计算机可读介质中;
存储器;以及
至少一个处理器,其耦合到所述存储器并可操作以:
测量计算环境中的至少一个***管理程序中的每个***管理程序上的多个虚拟机中的每个虚拟机的资源使用;
在检测到所述至少一个***管理程序中的一个***管理程序上的资源过载时:
确定要针对该***管理程序上的所述多个虚拟机中的至少一个虚拟机采取的多个操作中的至少一个操作,以便在增加运行中的虚拟机的价值的同时修复资源过载,其中所述确定包括:
计算该***管理程序上的多个虚拟机的每个虚拟机的工作价值,所述工作价值旨在衡量虚拟机被静默导致的虚拟机上的潜在服务/任务损失和/或虚拟机被静默对其它虚拟机的执行的影响;
计算该***管理程序上的多个虚拟机的每个虚拟机的多个操作的每个的相关联的成本;
使用多个虚拟机的每个的工作价值与资源消耗的比率、以及计算的成本进行所述确定;以及
向该***管理程序发送命令以发出所述至少一个操作。
9.根据权利要求8所述的***,其中所述至少一个操作包括迁移、静默或恢复中的至少一个。
10.根据权利要求8所述的***,其中工作价值包括以下项中的至少一个:由该虚拟机被静默导致的该虚拟机上的潜在服务损失的测量,以及该虚拟机被静默对至少一个其它虚拟机的执行的影响的测量。
11.根据权利要求10所述的***,其中所述至少一个处理器还可操作以标识要静默的具有最低工作价值的至少一个虚拟机和/或要恢复以便优化的具有高工作价值的至少一个虚拟机。
12.根据权利要求10所述的***,其中每个虚拟机的工作价值包括至少一个因素的组合,所述至少一个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
13.根据权利要求10所述的***,其中所述至少一个处理器还可操作以确定要采取的至少一个操作包括:持续测量和利用每个虚拟机的工作价值和资源消耗。
14.根据权利要求10所述的***,其中所述至少一个处理器还可操作以定期判定是否有足够的资源变得可用以便恢复被静默的虚拟机。
15.一种用于虚拟化环境的自动过载修复方法,所述方法包括:
通过从***内的多个虚拟机选择所述虚拟机的要迁移的子集以及所述虚拟机的要静默的子集而从***资源过载情况中恢复;以及
定期选择所述虚拟机的要迁移的子集以及所述虚拟机的要恢复的子集,以便增加运行中的虚拟机数量并增加运行中的虚拟机实现的工作价值,所述工作价值旨在衡量虚拟机被静默导致的虚拟机上的潜在服务/任务损失和/或虚拟机被静默对其它虚拟机的执行的影响,其中所述定期选择包括:
计算迁移多个虚拟机的每个虚拟机的成本以及恢复多个虚拟机的每个虚拟机的成本;
使用多个虚拟机的每个的工作价值与资源消耗的比率、以及计算的成本进行所述选择。
16.根据权利要求15所述的方法,其中所述定期选择均考虑每个虚拟机所贡献的度量。
17.根据权利要求16所述的方法,其中所述度量组合一个或多个因素,所述一个或多个因素包括虚拟机生命周期、价格、收益、服务水平协议、中央处理单元利用率、虚拟机相关性以及工作负载预测。
18.根据权利要求17所述的方法,其中过载修复问题被表述为可移除在线多背包问题ROMKP的变型,包括:
除新物体的到达以外,考虑随时间变化的物体工作价值和资源使用;
允许背包操作,所述背包操作包括从背包移除一个或多个物体、将一个或多个物体从一个背包移动到另一个背包,以及将一个或多个物体放回背包;以及
在决策中考虑所述背包操作的成本。
19.根据权利要求18所述的方法,其中ROMKP问题的所述变型的解包括:
持续测量和利用每个虚拟机的所述工作价值和资源使用。
20.根据权利要求16所述的方法,其中虚拟机的工作价值被定义为:
1/(资源使用),如果该虚拟机在给定最近时间段P内未被静默,其中/为除号;以及
无穷大,如果该虚拟机在所述时间段P内被静默。
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 CN103377281A (zh) | 2013-10-30 |
CN103377281B true 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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
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 |
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 |
US8752047B2 (en) | 2010-05-28 | 2014-06-10 | Bromium, Inc. | Automated management of virtual machines to process untrusted data based on client policy information |
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 |
US10095530B1 (en) | 2010-05-28 | 2018-10-09 | Bromium, Inc. | Transferring control of potentially malicious bit sets to secure micro-virtual machine |
US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
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 |
US10346148B2 (en) | 2013-08-12 | 2019-07-09 | Amazon Technologies, Inc. | Per request computer system instances |
US9348634B2 (en) | 2013-08-12 | 2016-05-24 | Amazon Technologies, Inc. | Fast-booting application image using variation points in application source code |
US9280372B2 (en) | 2013-08-12 | 2016-03-08 | Amazon Technologies, Inc. | Request processing techniques |
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 |
US20150263894A1 (en) * | 2014-03-14 | 2015-09-17 | Avni Networks Inc. | Method and apparatus to migrate applications and network services onto any cloud |
US9680708B2 (en) | 2014-03-14 | 2017-06-13 | Veritas Technologies | Method and apparatus for cloud resource delivery |
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 |
US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
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 |
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 |
US10296367B2 (en) | 2017-02-03 | 2019-05-21 | Microsoft Technology Licensing, Llc | Resource management for virtual machines in cloud computing systems |
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 |
US10789097B2 (en) * | 2017-02-16 | 2020-09-29 | Nasdaq Technology Ab | Methods and systems of scheduling computer processes or tasks in a distributed system |
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 |
US11455234B2 (en) | 2018-11-21 | 2022-09-27 | Amazon Technologies, Inc. | Robotics application development architecture |
US11429762B2 (en) | 2018-11-27 | 2022-08-30 | Amazon Technologies, Inc. | Simulation orchestration for training reinforcement learning models |
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)
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)
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 |
-
2012
- 2012-04-23 US US13/453,019 patent/US8839243B2/en not_active Expired - Fee Related
-
2013
- 2013-04-09 DE DE102013206172A patent/DE102013206172A1/de not_active Ceased
- 2013-04-22 CN CN201310139393.XA patent/CN103377281B/zh not_active Expired - Fee Related
Patent Citations (4)
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)
Title |
---|
A Multi-objective Approach to Virtual Machine Management in Datacenters;Jing Xu,et al.;《ICAC"11:Proceedings of the 8th ACM international conference on Autonomic computing》;20110614;225-234 * |
Overdriver:Handling Memory Overload in an Oversubscribed Cloud;Williams D,et al.;《ACM SIGPLAN NOTICES》;20110731;第46卷(第7期);205-216 * |
Also Published As
Publication number | Publication date |
---|---|
DE102013206172A1 (de) | 2013-10-24 |
US20130283266A1 (en) | 2013-10-24 |
CN103377281A (zh) | 2013-10-30 |
US8839243B2 (en) | 2014-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103377281B (zh) | 用于修复过度承诺的计算环境中的过载的方法和*** | |
US11003492B2 (en) | Virtual machine consolidation | |
US10467129B2 (en) | Measuring and optimizing test resources and test coverage effectiveness through run time customer profiling and analytics | |
Litke et al. | Efficient task replication and management for adaptive fault tolerance in mobile grid environments | |
US10726366B2 (en) | Scheduling and simulation system | |
US10817283B1 (en) | Automated risk assessment for software deployment | |
US9286735B1 (en) | Generating cumulative wear-based indicators for vehicular components | |
US20160189066A1 (en) | Method and system for automatic evaluation of robustness and disruption management for commercial airline flight operations | |
US9396025B2 (en) | Time-variant use models in constraint-based IT resource consolidation | |
CN103930863A (zh) | 可轻松云化的应用的基于发现的标识和迁移 | |
US20150039374A1 (en) | Planning periodic inspection of geo-distributed infrastructure systems | |
CN104679591A (zh) | 用于在云环境中进行资源分配的方法和装置 | |
CN104919445B (zh) | 变换生成*** | |
US20210160191A1 (en) | Enhanced selection of cloud architecture profiles | |
CN109117421A (zh) | 处理数据以提高数据的质量 | |
CN104615476A (zh) | 用于所选择的虚拟机复制和虚拟机重新启动的方法和*** | |
US11915054B2 (en) | Scheduling jobs on interruptible cloud computing instances | |
US20190107815A1 (en) | Data architecture and improved model object interfaces for supporting integration of multiple disparate databases useable to model availability of a fleet of vehicles | |
US11880347B2 (en) | Tuning large data infrastructures | |
CN104335161A (zh) | 使用图对网络鲁棒性的有效评估 | |
Willnecker et al. | Multi-objective optimization of deployment topologies for distributed applications | |
EP3826233B1 (en) | Enhanced selection of cloud architecture profiles | |
US20220390999A1 (en) | System and method for predicting power usage of network components | |
US20220171662A1 (en) | Transitioning of computer-related services based on performance criteria | |
Garousi | Experience and challenges with UML-driven performance engineering of a Distributed Real-Time System |
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 |
Granted publication date: 20160803 |
|
CF01 | Termination of patent right due to non-payment of annual fee |