CN104025055A - 动态缩放云环境中的多级应用 - Google Patents
动态缩放云环境中的多级应用 Download PDFInfo
- Publication number
- CN104025055A CN104025055A CN201280065441.9A CN201280065441A CN104025055A CN 104025055 A CN104025055 A CN 104025055A CN 201280065441 A CN201280065441 A CN 201280065441A CN 104025055 A CN104025055 A CN 104025055A
- Authority
- CN
- China
- Prior art keywords
- resource
- convergent
- application
- virtual machine
- divergent
- 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
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/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- 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/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
在限定时间段内确定多级应用的预测工作负载。针对所预测的工作负载确定应用容量的改变。针对所述应用容量的变化动态选择缩放策略,其中所述缩放策略包括垂直缩放和水平缩放。
Description
技术领域
本发明总体上涉及云计算和与计算应用,并且更具体而言涉及缩放(scale)云计算环境中的应用。
背景技术
云计算通常称之为基于诸如广域网、英特网等计算网络可访问的基于服务器的计算资源。计算资源可以包括在被称之为云服务器的远程可访问服务器上执行的应用、数据存储等。在云环境中,所有处理和数据存储都可以在云服务器以及相关联存储设备上进行。因此,云计算资源的用户没必要在本地存储数据或执行正被利用的应用。
云计算资源通常易于受到适于用于给定要求或需要而影响,录入通过提供附加处理或存储资源。不过,由于置于云应用上的需求可以随时改变,因此有必要管理可获得的资源。如果可获得的资源对给定的需求不足时,云应用的性能就可能受到损害(compromise)。相反,如果可获得的云资源极大超出了该需求,则该资源可能就被浪费了,这导致了不必要的成本或损失了其中该资源可能已经被应用到其他需要的机会。对资源的需求可能非常迅速增加的爆发性活动,例如可能在几分钟的时间段内或几个小时的时间段内增长可能是很多倍或数量级的,可能会对云资源的管理带来许多挑战。
发明内容
在第一实施例中,一种缩放方法可以包括:通过计算设备,确定限定时间段内多级应用的预测工作负载。可以确定所述预测工作负载的应用容量的变化。针对所述应用容量的变化动态选择缩放策略。述缩放策略包括垂直缩放和水平缩放。
可以包括一个或多个下述特征。所述缩放策略包括实现多个执行所述多级应用的虚拟机。所述多个虚拟机的每一个具有通常等同地配置的资源分配。至少一个虚拟机实现为具有较低资源分配。如果所述应用容量的变化小于所述具有较低资源分配的虚拟机的剩余容量,则选择所述缩放策略可以包括垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配。如果所述应用容量的变化大于所述具有较低资源分配的虚拟机的剩余容量,则选择所述缩放策略可以包括垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配以及水平地缩放包括实现其资源分配低于所述通常等同地配置的资源分配的新虚拟机的应用。
动态选择缩放策略可以包括至少部分基于所预测工作负载连续选择缩放策略。确定预测工作负载可以至少部分基于历史工作负载需求。动态选择缩放策略可以包括缩放与所述多级应用的确定级相关联的资源。
根据另一种实现方式,一种计算机程序产品,包括计算机可读介质,其上存储有多个指令。当这些指令在被处理器执行时可使得处理器执行包括确定限定时间段内多级应用的预测工作负载的一些操作。该指令还可以使得处理器确定所述预测工作负载的应用容量的变化。可以针对所述应用容量的变化动态选择缩放策略,所述缩放策略包括垂直缩放和水平缩放。
可以包括一个或多个下述特征。所述缩放策略包括实现多个执行所述多级应用的虚拟机。所述多个虚拟机的每一个具有通常等同地配置的资源分配。至少一个虚拟机实现为具有较低资源分配。如果所述应用容量的变化小于所述具有较低资源分配的虚拟机的剩余容量,则用于选择所述缩放策略的指令能够可以包括用于垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配的指令。如果所述应用容量的变化大于所述具有较低资源分配的虚拟机的剩余容量,则用于选择所述缩放策略指令可以包括用于垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配以及水平地缩放包括实现其资源分配低于所述通常等同地配置的资源分配的新虚拟机的应用的指令。
用于动态选择缩放策略的指令可以包括用于至少部分基于所预测工作负载连续选择缩放策略的指令。确定预测工作负载可以至少部分基于历史工作负载需求。用于动态选择缩放策略的指令可以包括用于缩放与所述多级应用的确定级相关联的资源的指令。
根据本发明的另一个实现方式,一种系统可以包括处理器和与处理器连接的存储器体系结构。第一软件模块可由所述处理器和存储器体系结构执行。该第一软件模块配置为确定限定时间段内多级应用的预测工作负载。第二软件模块可由所述处理器和存储器体系结构执行。该第二软件模块配置为确定所述预测工作负载的应用容量的变化。第三软件模块可由所述处理器和存储器体系结构执行。该第三软件模块配置为针对所述应用容量的变化动态选择缩放策略,所述缩放策略包括垂直缩放和水平缩放。
可以包括一个或多个下述特征。所述缩放策略包括实现多个执行所述多级应用的虚拟机。所述多个虚拟机的每一个具有通常等同地配置的资源分配。至少一个虚拟机实现为具有较低资源分配。如果所述应用容量的变化小于所述具有较低资源分配的虚拟机的剩余容量,则第三软件模块可被配置为垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配。如果所述应用容量的变化大于所述具有较低资源分配的虚拟机的剩余容量,则第三软件模块可被配置为垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配以及水平地缩放包括实现其资源分配低于所述通常等同地配置的资源分配的新虚拟机的应用。
第三软件模块可被配置为至少部分基于所预测工作负载连续选择缩放策略。第一软件模块可被配置为至少部分基于历史工作负载需求确定预测工作负载。第三软件模块可被配置为缩放与所述多级应用的确定级相关联的资源。
根据另一个实现方式,一种缩放方法包括通过计算设备,确定限定时间段内多级应用的预测工作负载。确定所述预测工作负载的应用容量的变化。针对所述应用容量的变化动态选择缩放策略。所述缩放策略包括实现多个执行所述多级应用的虚拟机,其中所述多个虚拟机的每一个具有通常等同地配置的资源分配。所述缩放策略还可包括实现至少一个具有较低资源分配的虚拟机。
在下面的附图和描述中给出了一个或多个实现方式的细节。通过该描述、附图以及权利要求书将对其他特性更清楚。
附图说明
图1示意性描绘了与云计算环境相连的缩放处理。
图2是图1的缩放处理所执行的处理的流程图。
图3示意性描绘了与云计算环境相连的图1的缩放处理。
图4采用图形描绘了物理服务器的使用率、资源浪费率以及SLA成本的违背(breach)。
具体实施方式
所属技术领域的技术人员知道,本发明的各个方面可以实现为方法、系统或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可用存储介质中的计算机程序产品的形式,该介质中包含计算机可读的程序代码。
可以采用适当的计算机可用或者可读介质。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可用或者可读存储介质(包括与计算机设备或客户电子设备关联的存储设备)例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以用面向对象程序设计语言来编写用于执行本发明操作的计算机程序代码,诸如Java、Smalltalk、C++等。用于实施本发明的操作的计算机程序代码还可以用常规的过程式程序设计语言编写—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读存储中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读存储中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
计算机程序指令也可以加载到计算机、其他可编程数据处理装置或其他设备上以便能够在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,从而产生即计算机实现的处理,使得在计算机或其他可编程数据处理装置执行的指令提供处理以便实现在流程图和/或框图的框中指定的功能/行为。
参见图1,其中显示了缩放处理10,其可以至少部分控制在云计算环境12中的资源分配。如图所示,云环境12可以包括硬件资源14和软件资源16。硬件资源14可以包括,但不限于,一个或多个服务器计算机(例如,服务器s1到sn)以及一个或多个存储设备(例如,存储设备d1到dn)。软件资源16可以包括一个或多个基于云的应用(例如,应用a1到an)。而且应用a1到an中的一个或多个可以包括多级(multi-tier)应用。正如所理解到的,多级应用可以包括多个相互交互的模块和/或组件,或者可以包括多个离散的交互应用。例如,多级应用可以包括用户接口组件(例如,其可以生成和输出由客户C1到Cn所浏览的显示)、应用组件(例如,其可以控制这些硬功的功能)、以及数据组件(例如其可以存储和检索被应用组件所利用的信息)。多级应用的其它实例可以包括具有不同功能的组件,并且因此前面的实例不应被认为是对本公开的限定。
服务器s1到sn的实例(例如其可以包括一个或多个处理器和一个或多个存储器架构体系,未示出)可以包括,但不限于,刀片(blade)服务器(诸如IBM BladeCenter PS704Express)或其他服务器计算机。存储设备d1到dn的实例可以包括但不限于硬盘驱动器、固态驱动器、光驱、随机存取存储器、只读存储器等等。服务器s1到sn每个都可以执行适当的操作系统,诸如例如其可以存储在存储设备d1到dn中的一个或多个上。(RedHat是Red Hat公司在美国、其他国家或两者中的注册商标,而Linux是LinusTorvalds在美国、其他国家或两者中的注册商标)
尽管没有示出,但是云环境12可以包括附加的硬件和软件,其可以使得硬件资源14和软件资源16可以被一个或多个(客户C1到Cn)客户机访问。这种附加的硬件和软件可以包括,但不限于,例如,切换器、桥接、万络服务器等,其可以使得客户C1到Cn能够访问硬件资源14和/或软件资源16。此外,客户C1到Cn可以通过一个或多个网络访问云环境,所述一个或多个网络包括,但不限于,英特网、局域网、广域网或其他计算机网络。客户C1到Cn可以使用适当的计算设备访问云计算环境12执行各种软件,该适当的计算设备包括,但不限于,台式机、笔记本计算机、移动计算设备(例如,启用数据的蜂窝电话、笔记本、个人数字助理等),该各种软件诸如网络浏览器或应用专用软件。
还是参见图2,缩放处理10可以包括确定50限定时间段内多级应用的预测工作负载。缩放处理10还可以确定52用于预测工作负载的应用容量的改变。缩放处理10还可以动态选择54用于所述应用容量的变化的缩放策略。该缩放策略可以包括垂直缩放和水平缩放。
确定50限定时间段内多级应用的预测工作负载可以利用各种预测模型,例如其可能可以指出该限定时间段的工作负载。例如,该预测模型可以至少部分基于历史工作负载需求。例如,对于至少一些基于云的应用(例如应用a1)而言工作负载需求可能趋向于以爆发性需求出现可能是已知的,在该爆发性需求中,用于应用a1的工作负载需求在相当短的时间段内可以按照多倍或甚至多个数量级地增加。例如,应用a1可以包括社交网络应用,其可以在工作日通常的末端看到爆发性需求。在这种实施例中,预测模型可以指出爆发性需求开始于一天的通常的具体时间。在其它实施例中,预测模型可以指出,例如,如果应用a1的工作负载需求在最近的十五分钟内已经增加了20%,则最终的工作负载需求很可能会在下一个小时上升800%(相对于初始的工作负载需求)。即,该预测模型可以包括至少部分基于工作负载需求的变化的速率的限定时间段内的统计学可能最终工作负载需求。此外,至少部分基于该预测模型,可知晓在限定时间段内对应用a1的统计学上的可能最终工作负载需求。将可以理解到可以利用各种附加/可替换的预测模型,并且因此并不应将前面的实例认为是对本公开的限制。
还参见图3,在一个实施例中,预测模型可以通过预测器100而提供给缩放处理10。预测器100可以包括可以评估传递给应用a1的各种类型的请求的请求历史的组件(例如,其可以包括具有多种组件或模块的多级应用,和/或可以包括多个相互作用的应用),并且可以生成用于的预测工作负载、请求类型、应用级别等等统计请求预测模型,在一个图释的实施例中,预测器100可以使用多项式近似法利用基于时间系列分析的短期预测请求到达速率。将劣迹到可以等同地利用各种附加/可替换的分析方法。
与图3中所示的图释实例一样,预测器100可以接受来自数据仓库102的请求历史信息。在这种实例中,数据仓库102包括来自运行在云(例如,云环境12)中的一个或多个服务器(例如s1、s2、s3、s4)和应用(例如在所示实例中的应用a1和a2)的被监测应用和系统参数(例如,其可以接收于一个或多个服务器,例如所示实例中的服务器s1、s2、s3、s4)的资料库。在应用(例如应用a1)接收多个请求类型的情况下,数据仓库102可以录入在给定监测时间段(例如,一分钟间隔)内作用每个请求类型的请求的数量。此外,数据仓库102还可以累积包括与用于应用的服务等级协议(SLA)相关的参数。可被数据仓库102录入的系统参数的实例可以包括,但不限于,用于每个虚拟机(例如运行在应用a1上的VM1、VM2、VM3以及VM4和运行在应用a2上的VM5、VM6、VM7和VM8)的资源权利(例如CPU或时间切片分配,以及RAM和/或盘空间分配),以及每个虚拟机的资源权利的利用程度。
至少部分基于在限定时间段内所确定50的预测工作负载,缩放处理10可以确定52用于预测工作负载.的应用容量的改变。如上所述,数据仓库102可以录入(log)多中请求类型,并且预测器100可以提供预测模型,其不仅可以包括请求速率的数量或变化,而且预测器100还可以提供指示请求的类型的预测模型。如将理解到的那样,不同类型的请求,如也可以理解到那个级别的应用可以处理不同类型的请求一样,可以影响应用(例如应用a1)的必要容量。
与图3中所示的图释实例一样,缩放处理10可以至少部分基于从工作负载分类器104接收的数据确定52应用容量的改变。工作负载分类器104可以将工作负载分类为一组或多组预先创建的工作负载类别。因此,工作负载分类器104可以从数据仓库102接收用于应用的与工作负载混合相关的信息。用于应用的与工作负载混合相关的信息可以包括,但不限于,请求类型的当前分布。工作负载混合可以影响应用所要求的资源的数量和类型,以便分派(serve)具体数量的具有请求类型的给定分布的请求,因此,至少部分基于预测器100所提供的预测模型和工作负载分类器104所提供的工作负载混合(和/或根据预测模型的预测工作负载混合),缩放处理10可以确定52处理具有所预测的请求类型分布的所预测的即将到来的工作负载所必须的应用容量的改变。
至少部分基于与所确定50的预测工作负载相关联的所确定52的应用容量的改变,缩放处理10可动态选择54用于所述应用容量的变化的缩放策略。该缩放策略可以包括多级应用(例如,应用a1)的垂直缩放和水平缩放。如在此所使用,垂直缩放可以包括修改执行应用的具体虚拟机(例如执行应用a1的VM1)的资源分配。例如,增加容量的垂直缩放可以包括增加虚拟机的CPU权利(entitlement)(例如将该权利从0.5核增加到0.9核(core))、增加存储器权利(将RAM权利从RAM的2GB增加到RAM的4GB)、以及增减该具体虚拟机的其他资源权利。水平缩放可以包括创建一个或多个具有其自身资源分配的新虚拟机场合(instance),其中每个新的(以及任何先前存在的)虚拟机执行该应用(例如,应用a1)。在水平缩放情形下,执行应用a1的每个新虚拟机以及任何先前存在的虚拟机可以集中地执行应用a1以便处理所预测的工作负载和提供必要的应用容量的改变。
所述动态选择54缩放策略包括,例如,指令虚拟化管理器106改变一个或多个执行应用(例如,应用a1)的虚拟机(例如,VM1)的资源分配。此外/可选择地,虚拟化管理器106可以创建一个或多个可执行应用a1的新虚拟机(例如,VM2、VM3、VM4)。虚拟化管理器106可以包括管理程序,诸如IBM PowerVMTM,其可以支持在线、动态虚拟机尺寸改变(例如增加或减少CPU或存储器资源,而不会带来用于重新配置的VM下降)以及创建虚拟虚拟机场合和配置。
此外,缩放处理10可以实现必要的应用重新配置。例如,在缩放策略包括水平缩放的情况下,缩放处理10可以指令进口(admission)控制器/负载平衡器108更新主机列表等,使得经由网关110接收的请求可以分布到新例举(instantiate)的虚拟机(例如,VM2、VM3、VM4以及VM1)。这种应用重新配置可能对确保在执行该应用的多种多样的虚拟机之间分布负载是必要的,以便为该应用提供处理预测工作负载的容量。
在预测的爆发性工作负载情形下,用于处理预测工作负载的必要应用容量可能远超出当前所例举的虚拟机的容量,因此需要创建一个(或多个)新虚拟机来执行该应用。与本公开的一个方面一样,缩放处理10可以选择54通常能够平衡应用的新能和成本的缩放策略。与这个发那个面一样,以及如在图3的服务器簇中所示一样,缩放策略可以包括实现56多个执行多级应用的虚拟机,所述多个虚拟机的每一个可具有通常等同地配置的资源分配。至少一个虚拟机可以实现为具有较低资源分配。
例如,如下面所阐述的,执行应用a1的虚拟机的实例可以具有在应用新能和成本之间提供所期望的平衡的配置(例如处理器、存储器等资源的分配)。为了下面描述的目的,这种配置可以采用术语称之为“最优”配置。不过,应该理解到,该术语“最优”仅仅是为了表达应用新能和成本之间的一种主观上的可期望的平衡,并且不因该被认为是对本公开的一种限制,因为在适当的情况下也可以采用其他性能与成本的平衡。对于给定的必要的、或期望的应用容量(例如,所确定52的应用容量的改变),所动态选择54的缩放策略可以实现多个最优配置的虚拟机(例如,多个具有通常等同地配置的资源分配的虚拟机)。由于用于所预测工作负载的所确定52的应用容量可能等于全体数量的最优配置虚拟机是不可能的,因此所动态选择54的缩放策略可以利用多个最优配置虚拟机来提供给所确定52的容量的主要部分,以及可以利用一个或多个其资源配置少于所述最优配置的虚拟机(例如,所述一个或多个虚拟机可以具有较低的CPU或存储器分配)。
与前面一样,对于用于所确定50的预测工作负载的所确定52的容量C,可以分布在M个虚拟机上。在所示的实施例中,M-1个虚拟机可以被最优配置为具有容量N。第M个虚拟机可以具有由下面的公式所给出的容量CM:
C–(M–1)*N
将可以理解到,在其他实施例中,一个以上的虚拟机的容量可以不同于最优配置虚拟机的容量,在这种实施例中,X个虚拟机的容量不同于所述最优容量。在这种实现方式中,X个虚拟机的累计容量可以由下面的公式给出:
C–(M–X)*N
在这种实施例中,X个虚拟机的累计容量可以根据设计规则和用户的偏好而以均等方式或不等方式划分。
与前面描述一致,并参见图3,假设初始应用a1仅仅实现在单一虚拟机(VM1)上。而且,假设,基于所确定50的预测工作负载,缩放处理10可以确定52预测工作负载的容量的改变大于执行应用a1的最优配置虚拟机的可获得容量的三倍。缩放处理10可以动态选择54实现56多个具有通常等同资源分配配置的虚拟机(例如VM1、VM2、VM3)(例如其可以一起集中地提供给用于所预测工作负载的所确定52的容量改变的主要部分)的缩放策略。此外,缩放处理10可以实现56具有较低资源分配的虚拟机VM4,例如,其可以提供所确定54的容量改变与由虚拟机VM1、VM2、VM3所集中提供的容量之间的差别。这样,VM1、VM2、VM3以及VM4可以一起提供调节(accommodate)所确定52的容量改变所必要的容量。这样,前述缩放策略可以包括垂直缩放58(例如,将VM1的初始资源分配配置从初始次优配置增加到最优配置)并且也可以包括水平缩放60(例如,创建另外的虚拟机场合VM2、VM3、VM4)。将理解到,尽管在该实例中只提到了四个虚拟机,但是这仅仅是为了方便解释和图示,虚拟机的数量、服务器的数量以及云计算环境的多样性可以有极大不同。
如下满将更详细阐述的那样,可以理解到,可以有与水平缩放和垂直缩放相关联的基于经济和性能的各种成本。基于最优配置虚拟机的概念,并且还参见图4,将理解到,可能存在与利用物理服务器资源不足或过度利用物理服务器资源相关联的成本。例如,如图所示,当服务器被运行在服务器上的应用(以及相关联虚拟机)被最小利用时,就存在相当高的资源浪费程度。即,对于给定的可获得资源,服务器可能被糟糕地利用。不过,增加物理服务器利用率(例如,用于增加由在该服务器上运行的应用所利用的资源的垂直缩放)可能会增加在该服务器上运行的其他应用的资源内容的风险,可能有必要将其他应用的一个或多个场合从一个物理服务器迁移到另一个服务器,并且可能引发运行在该服务器上的那些应用的SLA违例(breach)。根据一个实施例,理想的服务器利用率通常可以是相对于物理服务器理用于的资源浪费曲线和SLA成本的违背曲线的交叉点。因此,理想的是,向物理服务器加载用于获得在该交叉点处的物理服务器利用率的最大数量。
考虑到上面情况,缩放处理10可以确定例举新虚拟机以便在分离服务器执行给定应用(例如应用a1)的另一个场合(即水平缩放应用a1)和增加执行应用a1的现有场合的虚拟机的资源分配(垂直缩放应用a1,这会导致物理服务的利用率超出资源浪费曲线和SLA成本违背曲线的交点)的相对成本。缩放处理10可以至少部分基于成本模型112来确定与水平缩放应用a1和垂直缩放应用a1相关联的成本。
除了与超出上述交叉点的利用物理服务器相关联的成本,将理解到,垂直缩放可能具有额外的实际限制和成本。例如,并且如上所述,垂直缩放应用a1的场合(例如增加分配给运行应用a1的场合的虚拟机的资源)可能要求迁移其他应用以便释放用于垂直缩放应用a1所必需的资源(即,为了将这种资源分配给运行应用a1的虚拟机)。因此,可以达到垂直缩放的程度,在该程度,添加更多的资源(例如附加的CPU或存储器资源)可能不会导致应用的增加的容量,和/或可以实现一种可以实现减小(diminished)返回的状态,在该状态中,由于物理服务器、应用架构或者其他约束所施加的限制,用于虚拟机的资源的递增产生在性能或应用容量方面的减少的递增(例如,应用处理请求的能力)。根据实施例,实现每分配资源的性能的一些最大值的点可以利用为最优虚拟机容量。当然,其他配置可以考虑其他因素,并且可以基于这种性能对成本平衡实现其他最优容量虚拟机配置。
此外,各种成本可以与该应用的水平缩放相关联(例如例举在附加服务器上运行应用的新虚拟机)。例如,与垂直缩放相比,水平缩放可能相对慢(例如需要例举和配置新虚拟机,更新网关中的主机列表等等)。因此,水平缩放可以有相关联的性能,因为在例举和配置附加虚拟机所需的时间期间,该应用(运行在现有虚拟机上)可能没有容来来处理所有到来的请求。此外,其他成本,诸如软件许可成本、与新例举的虚拟机相关联的资源成本、分段存储等等,可能也与水平缩放相关联。这些成本可以通过例如成本模型112而提供给缩放处理10。
与前面所述一致,如果所述应用容量的变化小于所述具有较低资源分配的虚拟机的剩余容量,则选择缩放策略可以包括通过垂直缩放所述具有较低资源分配的虚拟机来垂直缩放58所述应用。在上述实例中,虚拟机(例如,VM4)可以包括小于最优资源分配的资源分配。也就是说,更多服务器资源可以在所期望的成本对性能的平衡内被虚拟机所利用。因此,动态选择54缩放策略可以包括垂直缩放58VM4以便调节附加容量。垂直缩放58所述虚拟机可以包括将虚拟机垂直扩展到最优配置。附加地/可替代地垂直缩放58所述虚拟机可以包括缩放该虚拟机到高于或低于所述最优配置的资源分配配置。
此外,如上所述,缩放处理10可以确定52与预测工作负载相关联的容量的改变。确定52与预测工作负载相关联的容量的改变可以至少部分基于由资源模型114所提供的信息。资源模型114可以包括简档驱动资源模型,其可以表示在各种给定缩放配置下使用的资源。例如,资源模型114可以包括与资源有关的信息(例如,CPU资源、存储器等等),该信息是对于每秒的请求或操作的给定输出量或数量所需要的。该资源模型至少部分可以基于数据仓库102所录入的信息而根据经验导出。附加地/可替换地,资源模型114可以包括统计学模型,其可以至少部分基于数据仓库102所录入的信息。
而且,如果所述应用容量的变化大于所述具有较低资源分配的虚拟机的剩余容量,则选择54缩放策略可以包括水平缩放60该应用。如上所述,水平缩放60所述应用可以包括创建执行该应用的(例如,应用a1)虚拟机的附加场合(例如,图3的图释实施例中的VM2、VM3、VM4)。同样如上所述,该应用的水平缩放60可以包括添加额外的虚拟机,其可以具有不同的资源分配水平(例如最优缩放的虚拟机VM2、VM3以及次最优缩放的VM4)。
动态选择54缩放策略可以包括至少部分基于预测工作负载连续选择62缩放策略。也就是说,缩放处理10可以选择54用于改变条件的缩放策略。例如,至少部分基于所确定50的预测工作负载(例如,其可以随时间改变)以及对应的所确定52的预测工作负载的应用容量的改变,缩放处理10可以,例如随着预测工作负载改变,而改变所选择54的缩放策略。因此,缩放处理10可以随着条件和预测工作负载的改变而连续地并适应性地选择54缩放策略。连续地选择62缩放策略可以包括对所选择的缩放策略作出行进中实时的调节。附加地/可替换地,连续选择62缩放策略可以包括间歇地(例如,以预定的时间间隔、或者基于条件的改变,诸如应用性能或预测工作负载)选择54缩放策略(包括调节所选择的通常策略)。
动态选择54缩放策略可以包括缩放64与所述多级应用的所确定的级别相关联的资源。例如,如上所述,应用a1可以包括多个模块或组件(例如,其可以包括多个相互作用的应用)。应用a1可以接收多个请求类型,其可以要求将由应用a1的不同级别承担的处理或动作。而且,将由不同级别承担的处理或动作可以利用不同的资源(例如,有些处理或动作可以需要更多RAM,而其他处理或动作可能需要更大的CPU分配),和/或由可以由不同虚拟机执行的模块或组件(例如,包括一个或多个相互作用的应用)来执行。因此,动态选择54缩放策略可以包括,至少部分基于多级应用的不同级别的所确定50的预测工作负载和所确定52的应用容量的改变,缩放64与多级应用的所确定的级别相关联的资源(诸如CPU分配、RAM分配或单个虚拟机或成组虚拟机)。在有些情况下,与多级应用的所有级别相关联的资源可以被缩放64,但是该缩放(例如,根据缩放程度、虚拟机配置、所分配的资源、缩放类型的类型和成簇,诸如垂直和水平缩放等)对于多级应用的不同级别而有所不同。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
此处所使用的术语仅仅是为了描述具体实施例,并不是为了限定本发明。如在此所使用的单数形式“一”、“一个”以及“该”和“所述”也意图包含有复数形式,除非在上下文中清楚表示不同情况。还应该理解到,术语“包括”和/或“包含”在被用于本发明时,其指明了所声明特征、整数、步骤、操作、元件和/或组件的存在,但是并不排除出现或增加一个或多个其他特征、整数、步骤、操作、元件、组件和/或其组合。
在下面权利要求书中的所有装置或步骤加功能元件的对应结构、材料、动作以及等同方式意图包括用于与所具体请求保护的其他声称的元件一起执行该功能的任何结构、材料或行为。为了图释和描述的目的已经给出了本发明的说明书,但是其并不是意图以所披露的方式穷尽或限制本发明。对本领域普通技术人员而言,在不脱离本发明的范围和精神的情况下,很清楚将会有很多修改方式和变化形式。选择和描述该实施例是为了更好解释本发明的原理和实际应用,并且使得本领域普通技术人员中的其他人能够理解用于各种实施例的本发明,因为各种实施例适于所想到的特定用途。
因此,已经详细并参照实施例描述了本申请的方法,清楚的是,在不脱离附后权利要求书所限定的本发明的范围的情况下可以有修改形式和变化形式。
Claims (22)
1.一种缩放方法,包括:
通过计算设备,确定限定时间段内多级应用的预测工作负载;
通过计算设备,确定所述预测工作负载的应用容量的变化;以及
通过计算设备,针对所述应用容量的变化,动态选择缩放策略,所述缩放策略包括垂直缩放和水平缩放。
2.根据权利要求1所述的方法,其中,所述缩放策略包括实现多个执行所述多级应用的虚拟机和实现至少一个具有较低资源分配的虚拟机,所述多个虚拟机的每一个具有通常等同地配置的资源分配。
3.根据权利要求2所述的方法,其中,如果所述应用容量的变化小于所述具有较低资源分配的虚拟机的剩余容量,则选择所述缩放策略包括垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配。
4.根据权利要求3所述的方法,其中,如果所述应用容量的变化大于所述具有较低资源分配的虚拟机的剩余容量,则选择所述缩放策略包括垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配以及水平地缩放包括实现其资源分配低于所述通常等同地配置的资源分配的新虚拟机的应用。
5.根据任意前述权利要求所述的方法,其中,动态选择缩放策略包括至少部分基于所预测工作负载连续选择缩放策略。
6.根据权利要求1-4中任意一个所述的方法,其中,确定预测工作负载至少部分基于历史工作负载需求。
7.根据权利要求1-4中任意一个所述的方法,其中,动态选择缩放策略包括缩放与所述多级应用的确定级相关联的资源。
8.一种计算机程序产品,包括计算机可读介质,其上存储有多个指令,这些指令在被处理器执行时使得处理器执行一些操作,这些操作包括:
确定限定时间段内多级应用的预测工作负载;
确定所述预测工作负载的应用容量的变化;以及
针对所述应用容量的变化,动态选择缩放策略,所述缩放策略包括垂直缩放和水平缩放。
9.根据权利要求8所述的计算机程序产品,其中,所述缩放策略包括实现多个执行所述多级应用的虚拟机和实现至少一个具有较低资源分配的虚拟机,所述多个虚拟机的每一个具有通常等同地配置的资源分配。
10.根据权利要求9所述的计算机程序产品,其中,如果所述应用容量的变化小于所述具有较低资源分配的虚拟机的剩余容量,则用于选择所述缩放策略的指令包括用于垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配的指令。
11.根据权利要求10所述的计算机程序产品,其中,如果所述应用容量的变化大于所述具有较低资源分配的虚拟机的剩余容量,则用于选择所述缩放策略的指令包括用于垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配以及水平地缩放包括实现其资源分配低于所述通常等同地配置的资源分配的新虚拟机的应用的指令。
12.根据任意前述权利要求所述的计算机程序产品,其中,用于动态选择缩放策略的指令包括用于至少部分基于所预测工作负载连续选择缩放策略的指令。
13.根据权利要求8-11中任意一个所述的计算机程序产品,其中,确定预测工作负载至少部分基于历史工作负载需求。
14.根据权利要求8-11中任意一个所述的计算机程序产品,其中,用于动态选择缩放策略的指令包括用于缩放与所述多级应用的确定级相关联的资源的指令。
15.一种系统,包括:
处理器;
与处理器连接的存储器体系结构;
可由所述处理器和存储器体系结构执行的第一软件模块,该第一软件模块配置为确定限定时间段内多级应用的预测工作负载;
可由所述处理器和存储器体系结构执行的第二软件模块,该第二软件模块配置为确定所述预测工作负载的应用容量的变化;以及
可由所述处理器和存储器体系结构执行的第三软件模块,该第三软件模块配置为针对所述应用容量的变化,动态选择缩放策略,所述缩放策略包括垂直缩放和水平缩放。
16.根据权利要求15所述的系统,其中,所述缩放策略包括实现多个执行所述多级应用的虚拟机和实现至少一个具有较低资源分配的虚拟机,所述多个虚拟机的每一个具有通常等同地配置的资源分配。
17.根据权利要求16所述的系统,其中,如果所述应用容量的变化小于所述具有较低资源分配的虚拟机的剩余容量,则被配置为选择所述缩放策略的第三软件模块还被配置为垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配。
18.根据权利要求17所述的系统,其中,如果所述应用容量的变化大于所述具有较低资源分配的虚拟机的剩余容量,则被配置为选择所述缩放策略的第三软件模块还被配置为垂直地将所述具有较低资源分配的虚拟机扩大到所述通常等同地配置的资源分配以及水平地缩放包括实现其资源分配低于所述通常等同地配置的资源分配的新虚拟机的应用。
19.根据任意前述权利要求所述的系统,其中,被配置为动态选择缩放策略的第三软件模块还被配置为至少部分基于所预测工作负载连续选择缩放策略。
20.根据权利要求15-18中任意一个所述的系统,其中,被配置确定预测工作负载的第一软件模块被配置为至少部分基于历史工作负载需求确定预测工作负载。
21.根据权利要求15-18中任意一个所述的系统,其中,被配置为动态选择缩放策略的第三软件模块还被配置为缩放与所述多级应用的确定级相关联的资源。
22.一种缩放方法,包括:
通过计算设备,确定限定时间段内多级应用的预测工作负载;
通过计算设备,确定所述预测工作负载的应用容量的变化;以及
通过计算设备,针对所述应用容量的变化,动态选择缩放策略,所述缩放策略包括实现多个执行所述多级应用的虚拟机和实现至少一个具有较低资源分配的虚拟机,所述多个虚拟机的每一个具有通常等同地配置的资源分配。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/340,985 US8756609B2 (en) | 2011-12-30 | 2011-12-30 | Dynamically scaling multi-tier applications vertically and horizontally in a cloud environment |
US13/340,985 | 2011-12-30 | ||
PCT/CN2012/084552 WO2013097552A1 (en) | 2011-12-30 | 2012-11-14 | Dynamically scaling multi-tier applications in a cloud environment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104025055A true CN104025055A (zh) | 2014-09-03 |
CN104025055B CN104025055B (zh) | 2017-06-23 |
Family
ID=48696038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280065441.9A Active CN104025055B (zh) | 2011-12-30 | 2012-11-14 | 动态缩放云环境中的多级应用 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8756609B2 (zh) |
CN (1) | CN104025055B (zh) |
DE (1) | DE112012005529T5 (zh) |
WO (1) | WO2013097552A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108475207A (zh) * | 2016-01-26 | 2018-08-31 | 华为技术有限公司 | 云应用的联合自动缩放 |
CN109313572A (zh) * | 2016-05-17 | 2019-02-05 | 亚马逊科技有限公司 | 通用自动缩放 |
CN109791630A (zh) * | 2017-01-09 | 2019-05-21 | 华为技术有限公司 | 用于云自动缩放应用的动作空间缩减 |
US20220138015A1 (en) * | 2020-11-04 | 2022-05-05 | International Business Machines Corporation | Shared enterprise cloud |
CN116737256A (zh) * | 2016-02-22 | 2023-09-12 | 斯诺普西斯公司 | 自动调整计算系统的方法、计算系统和计算机可读介质 |
Families Citing this family (84)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8756307B1 (en) * | 2007-07-30 | 2014-06-17 | Hewlett-Packard Development Company, L.P. | Translating service level objectives to system metrics |
US8793766B2 (en) * | 2012-03-13 | 2014-07-29 | International Business Machines Corporation | Method and apparatus for security-aware elasticity of application and services |
US9590879B2 (en) * | 2012-03-21 | 2017-03-07 | Tier 3, Inc. | Cloud application scaling framework |
EP2828742A4 (en) | 2012-03-22 | 2016-05-18 | Tier 3 Inc | SUPPLY IN FLEXIBLE MEMORY |
US9069606B2 (en) * | 2012-05-08 | 2015-06-30 | Adobe Systems Incorporated | Autonomous application-level auto-scaling in a cloud |
US9027024B2 (en) * | 2012-05-09 | 2015-05-05 | Rackspace Us, Inc. | Market-based virtual machine allocation |
US10057179B2 (en) * | 2012-07-20 | 2018-08-21 | Hewlett Packard Enterprise Development Company Lp | Policy based scaling of network resources |
CN103793276A (zh) * | 2012-10-31 | 2014-05-14 | 英业达科技有限公司 | 负载预测方法与电子装置 |
US10127084B2 (en) * | 2012-11-15 | 2018-11-13 | Red Hat Israel, Ltd. | Pre-provisioning resources for composite applications |
US9608933B2 (en) * | 2013-01-24 | 2017-03-28 | Hitachi, Ltd. | Method and system for managing cloud computing environment |
US9817699B2 (en) | 2013-03-13 | 2017-11-14 | Elasticbox Inc. | Adaptive autoscaling for virtualized applications |
US9542294B2 (en) * | 2013-07-09 | 2017-01-10 | International Business Machines Corporation | Method to apply perturbation for resource bottleneck detection and capacity planning |
CN103365727B (zh) * | 2013-07-09 | 2017-02-15 | 南京大学 | 一种云计算环境中的主机负载预测方法 |
US9727355B2 (en) * | 2013-08-23 | 2017-08-08 | Vmware, Inc. | Virtual Hadoop manager |
US9386086B2 (en) | 2013-09-11 | 2016-07-05 | Cisco Technology Inc. | Dynamic scaling for multi-tiered distributed systems using payoff optimization of application classes |
US10552745B2 (en) * | 2013-10-18 | 2020-02-04 | Netflix, Inc. | Predictive auto scaling engine |
CN103559072B (zh) * | 2013-10-22 | 2016-08-17 | 无锡中科方德软件有限公司 | 虚拟机双向自动伸缩服务实现方法及其系统 |
US9727332B2 (en) * | 2013-11-22 | 2017-08-08 | International Business Machines Corporation | Information technology resource management |
US9729466B2 (en) * | 2013-11-22 | 2017-08-08 | International Business Machines Corporation | Information technology resource management |
US9246840B2 (en) | 2013-12-13 | 2016-01-26 | International Business Machines Corporation | Dynamically move heterogeneous cloud resources based on workload analysis |
US9495238B2 (en) | 2013-12-13 | 2016-11-15 | International Business Machines Corporation | Fractional reserve high availability using cloud command interception |
US20150172204A1 (en) * | 2013-12-13 | 2015-06-18 | International Business Machines Corporation | Dynamically Change Cloud Environment Configurations Based on Moving Workloads |
US9576039B2 (en) | 2014-02-19 | 2017-02-21 | Snowflake Computing Inc. | Resource provisioning systems and methods |
US10545917B2 (en) | 2014-02-19 | 2020-01-28 | Snowflake Inc. | Multi-range and runtime pruning |
US9432267B2 (en) | 2014-03-12 | 2016-08-30 | International Business Machines Corporation | Software defined infrastructures that encapsulate physical server resources into logical resource pools |
US9722945B2 (en) | 2014-03-31 | 2017-08-01 | Microsoft Technology Licensing, Llc | Dynamically identifying target capacity when scaling cloud resources |
US9842039B2 (en) * | 2014-03-31 | 2017-12-12 | Microsoft Technology Licensing, Llc | Predictive load scaling for services |
WO2015163915A1 (en) * | 2014-04-25 | 2015-10-29 | Hewlett-Packard Development Company, L.P. | Optimizing scaling based on real user experience |
US20150341229A1 (en) * | 2014-05-20 | 2015-11-26 | Krystallize Technologies, Inc | Load generation application and cloud computing benchmarking |
US9356883B1 (en) | 2014-05-29 | 2016-05-31 | Amazon Technologies, Inc. | Allocating cloud-hosted application resources using end-user metrics |
US9882836B2 (en) * | 2014-06-03 | 2018-01-30 | International Business Machines Corporation | Adjusting cloud resource allocation |
US10129112B2 (en) | 2014-08-14 | 2018-11-13 | At&T Intellectual Property I, L.P. | Workflow-based resource management |
US9547534B2 (en) * | 2014-10-10 | 2017-01-17 | International Business Machines Corporation | Autoscaling applications in shared cloud resources |
CN105610592A (zh) * | 2014-10-30 | 2016-05-25 | 中兴通讯股份有限公司 | 一种部署虚拟核心网的方法和装置 |
US10171379B2 (en) * | 2014-11-23 | 2019-01-01 | International Business Machines Corporation | Dynamic service level agreement (SLA) adjustment based upon application capabilities |
CN105700955A (zh) * | 2014-11-28 | 2016-06-22 | 英业达科技有限公司 | 服务器系统的资源分配方法 |
US10355934B2 (en) * | 2014-12-03 | 2019-07-16 | Amazon Technologies, Inc. | Vertical scaling of computing instances |
EP3035619B1 (en) * | 2014-12-15 | 2019-02-13 | Alcatel Lucent | A method and system for scaling and a telecommunications network |
DE102015015196A1 (de) * | 2014-12-16 | 2016-06-16 | Canon Kabushiki Kaisha | Verwaltungssystem und Steuerungsverfahren für Verwaltungssystem |
US9785474B2 (en) | 2015-07-23 | 2017-10-10 | International Business Machines Corporation | Managing a shared pool of configurable computing resources using a set of scaling factors and a set of workload resource data |
US10073880B2 (en) | 2015-08-06 | 2018-09-11 | International Business Machines Corporation | Vertical tuning of distributed analytics clusters |
US10169086B2 (en) | 2015-09-13 | 2019-01-01 | International Business Machines Corporation | Configuration management for a shared pool of configurable computing resources |
EP3188017A1 (en) | 2015-12-29 | 2017-07-05 | Harmonic Inc. | Scheduler of processes having timed predictions of computing loads |
EP4357922A3 (en) * | 2016-01-18 | 2024-06-26 | Huawei Technologies Co., Ltd. | System and method for cloud workload provisioning |
US10498857B2 (en) * | 2016-03-29 | 2019-12-03 | Amazon Technologies, Inc. | System interaction monitoring and component scaling |
US10362141B1 (en) * | 2016-03-29 | 2019-07-23 | Amazon Technologies, Inc. | Service group interaction management |
EP3226134B1 (en) * | 2016-04-01 | 2021-02-24 | Alcatel Lucent | A method and system for scaling resources, and a computer program product |
CN109075994B (zh) | 2016-04-28 | 2022-04-05 | 斯诺弗雷克公司 | 多集群仓库 |
US10152357B1 (en) * | 2016-05-02 | 2018-12-11 | EMC IP Holding Company LLC | Monitoring application workloads scheduled on heterogeneous elements of information technology infrastructure |
US10437780B2 (en) | 2016-07-14 | 2019-10-08 | Snowflake Inc. | Data pruning based on metadata |
US10193762B2 (en) * | 2016-08-11 | 2019-01-29 | Rescale, Inc. | Dynamic optimization of simulation resources |
US10387198B2 (en) | 2016-08-11 | 2019-08-20 | Rescale, Inc. | Integrated multi-provider compute platform |
US20180176089A1 (en) * | 2016-12-16 | 2018-06-21 | Sap Se | Integration scenario domain-specific and leveled resource elasticity and management |
US10324765B2 (en) * | 2017-01-20 | 2019-06-18 | Microsoft Technology Licensing, Llc | Predicting capacity of shared virtual machine resources |
EP3602292A4 (en) * | 2017-03-24 | 2020-11-04 | Nokia Technologies Oy | METHODS AND DEVICES FOR MULTI-LEVEL VIRTUALIZED NETWORK FUNCTIONAL SCALING |
WO2018207152A1 (en) * | 2017-05-12 | 2018-11-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Systems and methods for generation and automated usage of characterization metadata for application deployment and scaling |
US10496150B2 (en) | 2017-07-13 | 2019-12-03 | Red Hat, Inc. | Power consumption optimization on the cloud |
US11030069B2 (en) | 2017-09-08 | 2021-06-08 | International Business Machines Corporation | Multi-layer autoscaling for a scale-up cloud server |
US9882784B1 (en) | 2017-09-26 | 2018-01-30 | Tesuto Llc | Holistic validation of a network via native communications across a mirrored emulation of the network |
US10608890B2 (en) | 2017-09-26 | 2020-03-31 | Tesuto Inc. | Holistic validation of a network via native communications across a mirrored emulation of the network |
US10893000B2 (en) | 2017-11-21 | 2021-01-12 | International Business Machines Corporation | Diagonal scaling of resource allocations and application instances in a distributed computing environment |
US10812407B2 (en) | 2017-11-21 | 2020-10-20 | International Business Machines Corporation | Automatic diagonal scaling of workloads in a distributed computing environment |
US10721179B2 (en) | 2017-11-21 | 2020-07-21 | International Business Machines Corporation | Adaptive resource allocation operations based on historical data in a distributed computing environment |
US10635501B2 (en) | 2017-11-21 | 2020-04-28 | International Business Machines Corporation | Adaptive scaling of workloads in a distributed computing environment |
US10733015B2 (en) | 2017-11-21 | 2020-08-04 | International Business Machines Corporation | Prioritizing applications for diagonal scaling in a distributed computing environment |
US10887250B2 (en) | 2017-11-21 | 2021-01-05 | International Business Machines Corporation | Reducing resource allocations and application instances in diagonal scaling in a distributed computing environment |
US10862774B2 (en) * | 2018-05-29 | 2020-12-08 | Capital One Services, Llc | Utilizing machine learning to proactively scale cloud instances in a cloud computing environment |
EP3591526A1 (de) * | 2018-07-05 | 2020-01-08 | Siemens Aktiengesellschaft | Verfahren zum skalieren einer applikation in einer platform as a service, paas, -plattform |
US10620987B2 (en) | 2018-07-27 | 2020-04-14 | At&T Intellectual Property I, L.P. | Increasing blade utilization in a dynamic virtual environment |
US11379254B1 (en) * | 2018-11-18 | 2022-07-05 | Pure Storage, Inc. | Dynamic configuration of a cloud-based storage system |
JP7081514B2 (ja) * | 2019-01-30 | 2022-06-07 | 日本電信電話株式会社 | オートスケール型性能保証システム及びオートスケール型性能保証方法 |
JP7331386B2 (ja) * | 2019-03-05 | 2023-08-23 | 日本電気株式会社 | ジョブ制御システム、方法、及びプログラム |
US11228643B2 (en) * | 2019-06-04 | 2022-01-18 | Capital One Services, Llc | System and method for fast application auto-scaling |
CN114930293A (zh) * | 2019-06-12 | 2022-08-19 | Snyk有限公司 | 预测性自动扩展和资源优化 |
WO2020258098A1 (en) * | 2019-06-26 | 2020-12-30 | Orange | Deploying computing tasks on client computing apparatus |
US11036608B2 (en) | 2019-09-27 | 2021-06-15 | Appnomic Systems Private Limited | Identifying differences in resource usage across different versions of a software application |
US11843525B2 (en) * | 2019-11-19 | 2023-12-12 | Vmware, Inc. | System and method for automatically scaling virtual machine vertically using a forecast system within the computing environment |
US11200091B2 (en) * | 2020-02-03 | 2021-12-14 | Dell Products L.P. | Adaptive memory optimization for thin clients |
US11392418B2 (en) | 2020-02-21 | 2022-07-19 | International Business Machines Corporation | Adaptive pacing setting for workload execution |
US11803414B2 (en) * | 2021-01-28 | 2023-10-31 | Red Hat, Inc. | Diagonal autoscaling of serverless computing processes for reduced downtime |
US12014196B2 (en) | 2021-03-22 | 2024-06-18 | Kyndryl, Inc. | Architecture generation for standard applications |
CN113225211B (zh) * | 2021-04-27 | 2022-09-02 | 中国人民解放军空军工程大学 | 细粒度的服务功能链扩展方法 |
DE102022201291A1 (de) | 2022-02-08 | 2023-08-10 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren und Vorrichtung zum Betreiben einer Cloud-Applikation und zum Auswählen einer Skalierungstrategie |
CN115686827A (zh) * | 2022-09-30 | 2023-02-03 | 上海慧程工程技术服务有限公司 | 基于容器的工业物联网边缘计算资源分配方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040210871A1 (en) * | 2003-04-16 | 2004-10-21 | Fujitsu Limited | Apparatus for adjusting use resources of system and method thereof |
CN101635635A (zh) * | 2009-08-25 | 2010-01-27 | 北京原力创新科技有限公司 | 云模式流媒体服务平台 |
US20100088150A1 (en) * | 2008-10-08 | 2010-04-08 | Jamal Mazhar | Cloud computing lifecycle management for n-tier applications |
CN101917418A (zh) * | 2010-07-30 | 2010-12-15 | 中兴通讯股份有限公司 | 通过无线应用协议访问云服务器的方法及wap服务器 |
US20110022861A1 (en) * | 2009-07-21 | 2011-01-27 | Oracle International Corporation | Reducing power consumption in data centers having nodes for hosting virtual machines |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4035600B2 (ja) | 2002-05-22 | 2008-01-23 | 国立大学法人 東京大学 | イマチニブに対する感受性の判定方法 |
US7886055B1 (en) | 2005-04-28 | 2011-02-08 | Hewlett-Packard Development Company, L.P. | Allocating resources in a system having multiple tiers |
US7437730B2 (en) | 2003-11-14 | 2008-10-14 | International Business Machines Corporation | System and method for providing a scalable on demand hosting system |
US8566835B2 (en) | 2007-12-13 | 2013-10-22 | Hewlett-Packard Development Company, L.P. | Dynamically resizing a virtual machine container |
US7925785B2 (en) | 2008-06-27 | 2011-04-12 | Microsoft Corporation | On-demand capacity management |
CN102004671B (zh) | 2010-11-15 | 2013-03-13 | 北京航空航天大学 | 一种云计算环境下数据中心基于统计模型的资源管理方法 |
CN102279771B (zh) | 2011-09-02 | 2013-07-10 | 北京航空航天大学 | 一种虚拟化环境中自适应按需资源分配的方法及系统 |
-
2011
- 2011-12-30 US US13/340,985 patent/US8756609B2/en not_active Expired - Fee Related
-
2012
- 2012-03-27 US US13/431,751 patent/US8756610B2/en not_active Expired - Fee Related
- 2012-11-14 DE DE112012005529.2T patent/DE112012005529T5/de not_active Ceased
- 2012-11-14 WO PCT/CN2012/084552 patent/WO2013097552A1/en active Application Filing
- 2012-11-14 CN CN201280065441.9A patent/CN104025055B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040210871A1 (en) * | 2003-04-16 | 2004-10-21 | Fujitsu Limited | Apparatus for adjusting use resources of system and method thereof |
US20100088150A1 (en) * | 2008-10-08 | 2010-04-08 | Jamal Mazhar | Cloud computing lifecycle management for n-tier applications |
US20110022861A1 (en) * | 2009-07-21 | 2011-01-27 | Oracle International Corporation | Reducing power consumption in data centers having nodes for hosting virtual machines |
CN101635635A (zh) * | 2009-08-25 | 2010-01-27 | 北京原力创新科技有限公司 | 云模式流媒体服务平台 |
CN101917418A (zh) * | 2010-07-30 | 2010-12-15 | 中兴通讯股份有限公司 | 通过无线应用协议访问云服务器的方法及wap服务器 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108475207A (zh) * | 2016-01-26 | 2018-08-31 | 华为技术有限公司 | 云应用的联合自动缩放 |
CN108475207B (zh) * | 2016-01-26 | 2021-10-26 | 华为技术有限公司 | 云应用的联合自动缩放 |
CN116737256A (zh) * | 2016-02-22 | 2023-09-12 | 斯诺普西斯公司 | 自动调整计算系统的方法、计算系统和计算机可读介质 |
CN109313572A (zh) * | 2016-05-17 | 2019-02-05 | 亚马逊科技有限公司 | 通用自动缩放 |
CN109791630A (zh) * | 2017-01-09 | 2019-05-21 | 华为技术有限公司 | 用于云自动缩放应用的动作空间缩减 |
US20220138015A1 (en) * | 2020-11-04 | 2022-05-05 | International Business Machines Corporation | Shared enterprise cloud |
US11907766B2 (en) * | 2020-11-04 | 2024-02-20 | International Business Machines Corporation | Shared enterprise cloud |
Also Published As
Publication number | Publication date |
---|---|
DE112012005529T5 (de) | 2014-10-02 |
CN104025055B (zh) | 2017-06-23 |
US8756610B2 (en) | 2014-06-17 |
US20130174149A1 (en) | 2013-07-04 |
US20130174146A1 (en) | 2013-07-04 |
WO2013097552A1 (en) | 2013-07-04 |
US8756609B2 (en) | 2014-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104025055A (zh) | 动态缩放云环境中的多级应用 | |
Tong et al. | A hierarchical edge cloud architecture for mobile computing | |
Addya et al. | Simulated annealing based VM placement strategy to maximize the profit for Cloud Service Providers | |
Chen et al. | A multi-objective optimization for resource allocation of emergent demands in cloud computing | |
Maurya et al. | Energy conscious dynamic provisioning of virtual machines using adaptive migration thresholds in cloud data center | |
Yousefipour et al. | Energy and cost‐aware virtual machine consolidation in cloud computing | |
Wang et al. | Dynamically hierarchical resource-allocation algorithm in cloud computing environment | |
Xu et al. | Migration cost and energy-aware virtual machine consolidation under cloud environments considering remaining runtime | |
Dong et al. | Energy efficient vm placement supported by data analytic service | |
Riahi et al. | A multi-objective decision support framework for virtual machine placement in cloud data centers: a real case study | |
George et al. | A review of different techniques in cloud computing | |
US20120254400A1 (en) | System to improve operation of a data center with heterogeneous computing clouds | |
Remesh Babu et al. | Service‐level agreement–aware scheduling and load balancing of tasks in cloud | |
Shruthi et al. | The resource allocation using weighted greedy knapsack based algorithm in an educational fog computing environment | |
Ajmera et al. | Energy-efficient virtual machine scheduling in IaaS cloud environment using energy-aware green-particle swarm optimization | |
Luo et al. | Improving performance by network-aware virtual machine clustering and consolidation | |
Byatarayanapura Venkataswamy et al. | ChicWhale optimization algorithm for the VM migration in cloud computing platform | |
Hirashima et al. | Proactive-reactive auto-scaling mechanism for unpredictable load change | |
CN107872405A (zh) | 分布式带宽分配和调节 | |
Kumar et al. | QoS‐aware resource scheduling using whale optimization algorithm for microservice applications | |
Anan et al. | SLA-based optimization of energy efficiency for green cloud computing | |
Bhattacherjee et al. | A review on energy efficient resource management strategies for cloud | |
Leite et al. | Power‐aware server consolidation for federated clouds | |
Rezai et al. | Energy aware resource management of cloud data centers | |
Fard et al. | Energy-aware and proactive host load detection in virtual machine consolidation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |