CN103649941A - 云上的应用资源管理器 - Google Patents
云上的应用资源管理器 Download PDFInfo
- Publication number
- CN103649941A CN103649941A CN201280033898.1A CN201280033898A CN103649941A CN 103649941 A CN103649941 A CN 103649941A CN 201280033898 A CN201280033898 A CN 201280033898A CN 103649941 A CN103649941 A CN 103649941A
- Authority
- CN
- China
- Prior art keywords
- cloud
- application
- resource manager
- resource
- computer
- 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.)
- Pending
Links
Images
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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5019—Workload prediction
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
应用资源管理器获得对在云上运行的应用的即将发生的需求的预测。所述云包括基础架构即服务云和平台即服务云中的至少一个。所述应用资源管理器基于所述预测而确定所述云的专用于所述应用的资源需要被扩展或收缩。响应于所述确定,执行扩展和收缩所述云的专用于所述应用的所述资源中的一个。
Description
技术领域
本发明涉及电气、电子和计算机技术,更具体地说,涉及云计算等。
背景技术
基础架构即服务(IaaS)和平台即服务(PaaS)云提供基本能力以便快速部署(供应)映像、在不使用映像时隐藏映像,并且可能实时或准实时更改分配给映像的资源。但是,这不会直接应用于应用层(在此可互换称为工作负载层),即在应用层上,仍然需要人为观察利用率并决定何时以及如何可以针对应用扩展或收缩基础架构。以下应用除外:仅在相对短的时间内部署然后完全取消,如开发和测试应用。实际上,当前考虑目前最常见的应用在IaaS和PaaS云上运行。
软件即服务(SaaS)云在应用层上工作,但非常明确地针对特定应用类型构建,这些应用类型例如包括IBM LotusLive解决方案(位于美国纽约阿蒙克的国际商业机器公司的商标)或者从位于美国加利福尼亚旧金山的Salesforce_dot_com,Inc.获得的那些应用(“_dot_”代替“.”以避免包括浏览器可执行代码)。
还存在需要以特定的新程序设计模型和语言对应用进行编码的高级云,例如Amazon Web Services(位于美国华盛顿西雅图的Amazon WebServices LLC的标志)、Microsoft Azure(位于美国华盛顿雷德蒙德的微软公司的标志)和Hadoop(从Apache软件基金会获得)。
发明内容
本发明的原理提供用于云上的应用资源管理器的技术。在一个方面,一种示例性方法包括以下步骤:由应用资源管理器获得对在云上运行的应用的即将发生的需求的预测。所述云包括基础架构即服务云和平台即服务云中的至少一个。其它步骤包括由所述应用资源管理器基于所述预测而确定所述云的专用于所述应用的资源需要被扩展或收缩;以及响应于所述确定步骤,执行扩展和收缩所述云的专用于所述应用的所述资源中的一个。
在另一个方面,一种示例性系统包括云;所述云包括基础架构即服务云和平台即服务云中的至少一个。所述系统中还包括在所述云上运行的至少一个应用,以及应用资源管理器。所述应用资源管理器获得对所述应用的即将发生的需求的预测;基于所述预测而确定所述云的专用于所述应用的资源需要被扩展或收缩;以及响应于所述确定,执行扩展和收缩所述云的专用于所述应用的所述资源中的一个。
如在此使用的,“促进”操作包括执行所述操作,使得所述操作更容易,有助于执行所述操作,或者导致执行所述操作。因此,作为实例而非限制,在一个处理器上执行的指令可以促进在远程处理器上执行的指令所执行的操作,方法是发送适当的数据或命令以便导致或帮助执行所述操作。为了避免疑义,其中操作者通过执行操作之外的方法促进所述操作,然而所述操作由某个实体或实体组合执行。
本发明的一个或多个实施例或其元素可以以计算机产品的形式实现,所述计算机产品包括计算机可读存储介质,所述计算机可读存储介质具有计算机可用程序代码以便执行指示的方法步骤。此外,本发明的一个或多个实施例或其元素可以以系统(或装置)的形式实现,所述系统包括存储器和至少一个处理器,所述至少一个处理器耦合到所述存储器并且可操作以便执行示例性方法步骤。更进一步,在另一个方面,本发明的一个或多个实施例或其元素可以以装置的形式实现,以便执行在此描述的一个或多个方法步骤;所述装置可以包括(i)硬件模块(多个),(ii)软件模块(多个),或者(iii)硬件和软件模块的组合;(i)-(iii)中的任何一个都实现在此给出的特定技术,并且所述软件模块存储在计算机可读存储介质(或多个此类介质)中。
本发明的技术可以提供大量有利的技术效果。例如,一个或多个实施例可以提供以下一个或多个优点:
●当有关应用及其底层IT基础架构的要求更改时,缩短设置时间
●更高的可靠性
●避免浪费未充分使用的处理器的能力,因为可以很容易地增加和/或减少资源量
从以下将结合附图阅读的对本发明的示例性实施例的详细描述,本发明的这些和其它特性和优点将变得显而易见。
附图说明
图1示出根据本发明的一个实施例的云计算节点;
图2示出根据本发明的一个实施例的云计算环境;
图3示出根据本发明的一个实施例的抽象模型层;
图4是根据本发明的一个方面的概述系统框图;
图5是根据本发明的一个方面的详细系统框图;以及
图6示出根据本发明的一个方面的应用资源管理器的示例性组件。
具体实施方式
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其它基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。
现在参考图1,其中显示了云计算节点的一个例子。图1显示的云计算节点10仅仅是适合的云计算节点的一个示例,不应对本发明实施例的功能和使用范围带来任何限制。总之,云计算节点10能够被用来实现和/或执行以上所述的任何功能。
云计算节点10具有计算机系统/服务器12,其可与众多其它通用或专用计算系统环境或配置一起操作。众所周知,适于与计算机系统/服务器12一起操作的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任意系统或设备的分布式云计算技术环境,等等。
计算机系统/服务器12可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括执行特定的任务或者实现特定的抽象数据类型的例程、程序、目标程序、组件、逻辑、数据结构等。计算机系统/服务器12可以在通过通信网络链接的远程处理设备执行任务的分布式云计算环境中实施。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算机系统存储介质上。
如图1所示,云计算节点10中的计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理器16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA(EISA)总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是能够被计算机系统/服务器12访问的任意可获得的介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以还包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。如下面进一步示出和描述的,存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它组件通信。应当明白,尽管图中未示出,其它硬件和/或软件组件可以与计算机系统/服务器12一起操作,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
现在参考图2,其中显示了示例性的云计算环境50。如图所示,云计算环境50包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云计算节点10,本地计算设备例如可以是个人数字助理(PDA)或移动电话54A,台式电脑54B、笔记本电脑54C和/或汽车计算机系统54N。云计算节点10之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云计算节点10进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境50提供的基础架构即服务(IaaS)、平台即服务(PaaS)和/或软件即服务(SaaS)。应当理解,图2显示的各类计算设备54A-N仅仅是示意性的,云计算节点10以及云计算环境50可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。
现在参考图3,其中显示了云计算环境50(图2)提供的一组功能抽象层。首先应当理解,图3所示的组件、层以及功能都仅仅是示意性的,本发明的实施例不限于此。如图3所示,提供下列层和对应功能:
硬件和软件层60包括硬件和软件组件。硬件组件的例子包括:主机,例如 系统;基于RISC(精简指令集计算机)体系结构的服务器,例如IBM 系统;IBM 系统;IBM 系统;存储器件;网络和网络组件。软件组件的例子包括:网络应用服务器软件,例如IBM应用服务器软件;数据库软件,例如IBM数据库软件。(IBM,zSeries,pSeries,xSeries,BladeCenter,WebSphere以及DB2是国际商业机器公司在全世界各地的注册商标)。
虚拟层62提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器、虚拟存储、虚拟网络(包括虚拟私有网络)、虚拟应用和操作系统,以及虚拟客户端。
在一个示例中,管理层64可以提供下述功能:资源供应功能:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负载层66提供云计算环境可能实现的功能的示例。在该层中,可提供的工作负载或功能的示例包括:地图绘制与导航;软件开发及生命周期管理;虚拟教室的教学提供;数据分析处理;交易处理;以及移动桌面。
一个或多个实施例有利地在云(例如IaaS或PaaS云)上实现应用资源管理器。
如上所述,基础架构即服务(IaaS)和平台即服务(PaaS)云提供基本能力以便快速部署(供应)映像、在不使用映像时隐藏映像,并且可能实时或准实时更改分配给映像的资源。但是,这不会直接应用于应用层(在此可互换称为工作负载层66),即在应用层66上,仍然需要人为观察利用率并决定何时以及如何可以针对应用扩展或收缩基础架构。以下应用除外:仅在相对短的时间内部署然后完全取消,如开发和测试应用。实际上,当前考虑目前最常见的应用在IaaS和PaaS云上运行。
注意,IaaS和PaaS云中的虚拟层和管理层62和64仅管理硬件并且可能管理基本软件,然而它们不管理工作负载。因此,迄今为止仍然单独管理工作负载,并且通常需要人为干预。
还如上所述,软件即服务(SaaS)云在应用层上工作,但非常明确地针对特定应用类型构建,这些应用类型例如包括IBM LotusLive解决方案(位于美国纽约阿蒙克的国际商业机器公司的商标)或者从位于美国加利福尼亚旧金山的Salesforce_dot_com,Inc.获得的那些应用(“_dot_”代替“.”以避免包括浏览器可执行代码)。
此外,如上所述,还具有需要以特定的新程序设计模型和语言对应用进行编码的高级云,例如Amazon Web Services(位于美国华盛顿西雅图的Amazon Web Services LLC的标志)、Microsoft Azure(位于美国华盛顿雷德蒙德的微软公司的标志)和Hadoop(从Apache软件基金会获得)。
一个或多个实施例有利地使具有波动或仅增加资源需求的基本不变的普通应用很容易地使用IaaS或PaaS平台能力。
值得注意的是,还存在针对网格上下文中的动态基础架构的现有工作,但网格没有与IaaS和PaaS云相同类型的接口以便供应和管理映像,因此网格的应用管理问题不同于云。同样,较旧的大型分布式基础架构项目(例如IBM的Oceano计算实用工具动力装置项目)并不与云中的底层单独层60、62、64协同工作。
现在参考图4的简单系统概述,一个或多个实施例采用添加到IaaS或PaaS云10的普通系统的应用资源管理器组件401以及应用组件403。该应用资源管理器根据应用需要扩展和收缩云资源。
为了执行这些任务,应用资源管理器与底层IaaS或PaaS云的管理接口(即,管理层64的上部接口)交互,同时应用使用云提供的映像和其它资源。在此,单词“映像”用于IaaS云提供的纯操作系统映像以及PaaS云提供的包括中间件的映像。就图3而言,IaaS映像是虚拟服务器,并且通常具有可用、易于供应的映像目录、对应于该目录的映像文件,以及已经供应并且正在运行的实际实例映像。管理层64的资源供应组件将目录提供给层66的潜在工作负载、包含映像文件,并导致在虚拟层62中建立实例映像(虚拟服务器)。当理解该过程时,我们有时仅谈论“映像”。在供应给应用的映像之上,具有普通应用组件的代码、数据、配置等。换言之,工作负载的未通过云管理层供应的部分(多个)组成应用组件。
应用资源管理器使用的管理接口可以包含OSS方面(操作支持系统,例如,到资源供应组件的直接接口)和BSS方面(业务支持服务,例如,到定价组件的接口,如果在进行其它供应时需要其它支付协议)。所有这些方面可以通过用户门户过滤,但我们在此假设这也包含API(应用编程接口)、网络服务接口等以便由来自工作负载层66的自动程序使用,或者工作负载层66的程序可直接访问到单独组件(例如资源供应)的接口。
应用资源管理器401可以从应用所有者513(在此使用的名称用于被授权预测应用需求的人员,以便将该角色与普通用户515区分开来—参见图5)了解即将发生的需求,或者可以从云管理获得的报告得出当前利用率和趋势,以及通过观察应用得出当前利用率和趋势。应用资源管理器401还可以了解基础架构故障,并且对它们做出反应以便达到特定可用性目标。
如果在最低程度上在至少某些实施例中需求更改,则应用资源管理器供应或隐藏映像或者更改其资源属性,例如虚拟存储或虚拟网络带宽分配。可选地,在供应的情况下,它还在新映像上供应应用级别软件和/或数据。
因此,一个或多个实施例提供一种系统,所述系统包括云10、至少一个应用组件403和应用资源管理器401,其中应用资源管理器针对应用组件扩展和/或收缩云资源以便满足应用资源需要。
在一个或多个实施例中,应用资源管理器使用IaaS或PaaS云的服务。有关这些组件及其交互的更多详细信息在图5中示出,图5提供更详细的系统概述。
应该注意,应用资源管理器401本身可能在云10上运行,也可能不在云10上运行。应用方框511是虚拟的;它指示应用资源管理器属于特定应用并且应知晓应用结构。
继续参考图5,应用所有者513通过应用管理接口(在图3中,这是工作负载层66的上部接口,即,应用/工作负载与其用户交互的位置)与应用资源管理器401交互。应用资源管理器401与应用511关联,并且执行普通应用用户515使用的应用软件517的设置,以及监视应用软件517和对应的映像519。映像成为云运行时环境521的一部分。方框521基本上类似于图3中的虚拟层62(或层60连同62一起),而云管理平台523类似于层64。云管理平台523管理云运行时环境521,环境521通过合适的供应接口(即,到资源供应组件的接口,直接或中间通过BSS接口和/或用户门户)与应用资源管理器401交互,并且云管理平台523还为应用资源管理器401提供利用率和故障报告(这些云例如来自图3的计量组件或服务水平管理组件)。
在一个或多个实施例中,应用资源管理器(例如401)的结构可以如图6中所示,其中组件提供以下示例性功能:
策略631确定长期目标,例如,可以作为应用的服务级别目标(而不是云的服务级别目标)给出的性能和可用性目标;换言之,这些是层66的目标,而不是层64的目标(作为该层实现的服务水平管理组件和SLA计划组件)。还可以将应用所有者的短期目标(例如那些与增加的性能需要的近期预测相关的目标)表达为策略。
管理组件633获得策略以及它从应用和云了解的内容,并且确定操作。这些操作具体包括向云供应、隐藏或取消供应请求,以及云管理平台允许的任何其它操作,例如扩展和收缩映像资源、实时迁移到不同服务器,或者从云中选择更高的服务级别(这例如可以包括更好的性能保证以及更高的可用性或可靠性保证)。
控制组件635例如通过应用编程接口(API)或网络服务接口交互,将来自管理组件的抽象请求转换为与云管理平台的具体交互。这种交互可以是多步骤序列,并且可能包括OSS和BSS级别步骤,例如选择映像大小以及选择支付方法或现有帐号。
解释组件637与控制组件相反,解释来自云的报告,例如有关应用自己的映像和其它虚拟资源以及整体云的利用率信息,或者故障报告。
将控制组件和解释组件与管理组件分开的优点是应用资源管理器变得更易于适应不同的云。在图6的实例中,应用资源管理器被允许直接与应用组件交互,因为它特定于该应用。
现在将针对应用管理器的某些可能功能,提供其它非限制性的示例性详细信息。
关于监视,在某些实例中,应用管理器可以在应用的用户接口处(其中例如可以应用应用服务水平协议(SLA)),监视应用组件403及其利用率,以及监视单独组件(例如517、519);具体地说,那些部署在不同映像上的组件。应用管理器还可以通过云接口(即,从523)获得有关其云映像的当前利用率的信息,和/或可以通过云接口获得有关云的当前整体利用率的信息—这可能令人关注以便预测获得更多资源的效果(在资源被共享的情况下)。
此外,关于监视,在某些实例中,应用管理器可以(从523)获得有关其自己的映像故障的信息,以及云的总体可靠性;可以使用基于利用率趋势的预测来估计未来需求(例如,预测每月峰值,或者预测需求的整体缓慢增加);以及/或者可以不时地通过发现工具重新验证应用结构(进一步在别处讨论,并且可互换称为“重新发现”)。这些操作应用于应用的映像519和应用软件517,因为应用的用户515还可以具有特定权限以便进行更改。发现工具还可以有助于查找应用级别性能参数,例如当前数据库大小。
关于目标,在某些实例中,应用管理器可以从应用所有者获得短期目标,这些目标对于当前性能而言是绝对或相对的。这些目标通常指整体应用(例如,交易吞吐量或对最终用户的响应时间),而不是指单独映像上的单独应用软件组件的性能。此外,应用管理器可以从应用所有者获得高级目标(长期策略),以便例如始终提供特定SLA,或者始终具有特定数量的空间以用于突然更改;以及/或者它可以获得成本目标或限制,以便例如始终选择最廉价的整体资源集以提供所需的SLA,或者始终提供最好的可能性能(但最高到特定成本限制为止)。
关于可能的决策,在某些实例中,应用管理器可以决定扩展和/或收缩分配给单独云映像的资源,这些云映像分配给应用。取决于云,这可以在适当的位置完成,或者通过将对应的应用组件517迁移到更大的映像519来完成。此外,应用管理器可以针对应用的使用而决定供应、删除或隐藏全部云映像。在这种情况下,它还应在这些云映像上部署适当的应用软件。在这点上,应用管理器可以保留一个或多个黄金映像以用于该目的,即,已经包含应用的所有可重复部分的静止映像;以及/或者还可以使用迁移工具部署对应于当前整体应用状态的软件配置。
此外,关于可能的决策,在某些实例中,应用管理器可以决定请求其它存储和/或网络资源,前提是云单独提供这些选择;可以决定如果它无法实现其当前策略或请求,则向用户发出警告;以及/或者可以定期或者在请求时向用户通知应用级别情况。
关于决策,在某些实例中,应用管理器可以通过采用优化求解器工具进行决策,或者它可以直接包含决策代码。如果云具有动态定价模式(例如,在周末成本较低),则它可以基于动态云成本进行决策。如果应用包含并非时间关键的方面并且可以在资源更便宜的时间内执行,则使用动态云成本尤其有用。
应该注意,在至少某些实例中,策略可以通过数据文件等中的参数实现,其中可以指定允许值和其它变量而不必更改底层编码;即,指定允许值或值范围的数据结构。
关于策略方框631,在一个或多个实例中,同样确定目标或要求,或者有时确定在特定情况下应该发生什么。具体地说,它可以包含应用级别的策略(即,正式的目标和要求),例如应用级别交易的多少延迟可接受,距离可能针对多少个长时间运行的作业仍未完成而获得的最后期限有多近,或者预计多少负载(例如,在月末)。它有时还可以包含基础架构级别策略,例如应该始终提供多少数量的空闲存储,对于一段持续时间应允许虚拟机(VM)具有什么级别的利用率,等等。
管理方框633包括逻辑,该逻辑从策略631读取值,并且(例如,在应用级别从探测等,以及在解释方框637从云报告或映像级别监视)获得有关系统中发生什么的数据输入,然后使策略631执行操作。实例包括确定应该分配、隐藏VM或者在其它VM上启动服务;判定是否应该增加VM的存储器和/或CPU分配;判定是否应该增加和/或减少存储;等等。
控制方框635提供到不同体系架构的接口;例如,如果云仅为vmware,则它将与vmrun接口交互以便控制虚拟机。即,控制模块635转换来自管理模块633的指令,以便管理云资源的资源供应模块(参见图3中的层64)等可以理解这些指令。
关于解释方框637,同样提供到不同云体系架构的接口;例如,如果云仅为VMware,则它可以解释来自vmware接口的性能报告;以及/或者提取能够在VM内部运行的探测。在某些实例中,云可以提供映像的CPU利用率(例如参见图3的层64中的计量和定价)。管理方框633将通知解释方框637它需要所有映像的CPU利用率,方框637将转换该通知并为计量和定价方框提供所需的命令,并且将特定于云的结果转换为通用格式。在某些实例中,ARM401与它在自己的层(除了或代替云接口)上管理的映像建立连接,以便例如监视应用级别延迟(即,普通应用用户515必须等待多长时间才获得结果)或者了解长时间运行的应用的状态。在这些情况下,应用软件517可以提供IP监听服务或网络管理接口,并且应用管理器建立对应的连接并发送对应的管理查询。
在某些实例中,ARM401在普通映像上具有帐户,并且可以使用同一帐户登录到普通映像并执行合适的命令,以便直接从映像读出CPU利用率。在某些情况下,可以对应用进行编程以便响应合适的查询,例如在最近10分钟内执行多少个交易。
为了避免疑义,“应用”在此上下文中指执行最终需要的功能(并且未由云提供)的代码,例如WEBSPHERE软件中的JAVA代码,或者DB2软件中的特定数据库模式,或者通常为这些类型代码的组合,例如提供购物车应用或差旅报告应用需要的所有代码块。探测是与其它软件通信以便获得所需值的软件块,其不同于热电偶之类的物理探测。
作为详细但非限制性实例,考虑具有(通常多个)网络服务器、应用服务器和数据库的三层体系架构。需要将针对最终用户请求的平均延迟保持在特定阈值之下。延迟可以由任何元件过载导致。需要测量延迟以便响应请求(应用特定的,例如http服务器响应请求需要多长时间)。
在该实例中,策略方框631定义多少延迟应该可用于响应入站请求,并且可能定义系统的正常状态应该是什么。解释方框637与提供有关单独组件的信息的探测通过接口连接。管理方框633使用策略方框631和来自解释方框637的数据以及与应用软件的直接通信而做出决策,例如增加处理入站请求的VM数量以降低延迟(如果延迟过高),从而可能确定3个层中的哪个层是瓶颈并需要增加。管理方框633与控制方框635通过接口连接以便指示云克隆现有主模板VM并使其在线,然后负责将适当的数据放在云上并将其绑定到应用,以便它可以承担负载。
相反,如果延迟远低于界限并且VM数量多于正常稳定状态数量(按照策略631),则管理633可以指示控制635缓慢关闭VM,并且负责例如通过修改应用级别负载平衡器策略而重设应用,使剩余VM处理所有工作负载。
作为有关该非限制性实例的进一步详细信息,策略631定义多少延迟应该可用于响应入站请求以及系统的正常状态应该是什么:
average_latency{
period=1min
max_latency=500ms
}
这将设置以下策略:一分钟内的平均延迟不应该高于500毫秒。通常,如果高于该值,则应该分配更多机器。如上讨论的,管理模块633中的逻辑从探测获得数据,检查策略631,并且如果违反任何策略,则采取适当的操作;将实现相同操作的指令发送到控制方框635,指令在控制方框635转换,也如以上所述。
管理方框633还可以针对每个单独的应用软件组件517运行微测试。
管理方框633然后可选地实施逻辑以便尝试确定什么层导致延迟。它能够在每个层上执行微基准测试,这不会影响任何其它层。例如,它可以从网络服务器取回静态网页以便仅测量网络服务器的延迟。它可以针对应用服务器执行不命中数据库的简单查询,以及简单的数据库查询。这些查询使它能够确定哪个组件过载以及解释方框637提供的VM级别测量,并且因此确定哪个组件需要增加大小。在这点上,注意可以单独使用测量,可以单独使用微基准测试,或者可以同时使用这两者。此外,微基准测试例如可以基于运行良好的系统上的预测试以便了解所需值。
例如,如果管理方框633确定网络服务器前端过载并且最佳决策是添加更多的前端,则它将指示控制方框635分配新的虚拟机,然后将任何必需的其它软件和应用数据放在该虚拟机上并将该虚拟机集成到应用中。
如果云仅是VMware,则控制方框635将网络服务器前端的黄金主虚拟机复制到新虚拟机。它然后使用VMware API的RegisterVm()功能将虚拟机添加到虚拟机基础架构。添加之后,控制方框635使用API连接到新虚拟机并使用其Start()方法引导机器。管理方框633然后将该虚拟机添加到处理前端职责的机器集群。在更简单的实例中,可以增加机器的大小。
在另一个非限制性实例中,考虑监视存储利用率。策略631定义应该提供多少数量的空闲存储以及多少是过多的空闲存储。解释方框637与普通接口(du、df、quota、…)通过接口连接以便确定空闲空间的数量。管理方框633使用这些信息判定是否提供了足够的空闲空间(或过多的空闲空间)。管理方框633根据策略指示控制方框635分配更多的空闲空间(或减少空闲空间)。合适的命令可以采取“increase-disk<image id><disk id><size>”的形式。
例如,某些虚拟机可能能够运行一个或多个服务,具体取决于虚拟机的负载。在某些实例中,然后可以监视虚拟机负载(从虚拟机基础架构),并且在每个虚拟机中具有探测以便监视单独服务的资源利用率(CPU、I/O),从而了解每个单独服务使用多少资源。
策略631可以确定应该允许虚拟机在多少持续负载下运行,以及在虚拟机上运行的单独服务应该允许多少持续负载。解释方框637与虚拟机基础架构负载监视(整体虚拟机负载)和虚拟机内部的探测(以便监视每个单独服务的OS级别负载测量)通过接口连接。管理方框633可以进行决策以分离虚拟机,以便如果单独虚拟机上的负载过高,则可以在独立虚拟机上运行单独服务,如果负载减少,则可以将单独服务再次组合在一起。它与控制方框635通过接口连接以便根据需要启动新虚拟机或关闭现有虚拟机,以及关闭或启动在单独虚拟机上运行的服务。
在另一个非限制性实例中,考虑增加虚拟机的存储器和CPU利用率。策略631确定应在单个机器上允许多少持续存储器和CPU负载。解释方框637获得CPU利用率和空闲存储器的报告,并且将其提供给管理方框633。管理方框633可以确定增加(或减少)单独虚拟机的CPU和存储器分配。它指示控制方框635执行该操作。控制方框635可以关闭虚拟机(如果需要,某些虚拟机支持热插拔CPU),重新配置虚拟机以便增加CPU数量和分配的存储器,并且使用虚拟机体系架构的接口(例如:在vmware:vmrun;以及手动或通过API编辑虚拟机的配置文件)重新启动虚拟机。
在更进一步的非限制性实例中,考虑指定每月的允许停机时间的情况。应用管理器可以记录一个月内到目前为止的总停机时间;如果它注意到接近允许的限制,则将使用控制组件635对其它资源进行排序。
以下是用于供应服务器和增加存储的非限制性的示例性实际命令:
provision<template/base id name><new id name>>
increase-disk<id name><size>
给出到目前为止的讨论,应该理解,一般地说,根据本发明的一个方面的示例性方法包括以下步骤:由应用资源管理器401获得对在云10上运行的应用403、511的即将发生的需求的预测。所述云是基础架构即服务云和/或平台即服务云。其它步骤包括由应用资源管理器401基于所述预测而确定云10的专用于所述应用的资源需要被扩展或收缩。进一步的步骤包括响应于确定步骤,根据具体情况执行(或至少指定如何执行)扩展或收缩所述云的专用于所述应用的资源。
即将发生的需求的预测例如可以从应用所有者513处获得。在其它实例中,即将发生的需求的预测可以通过应用资源管理器401本身获得,其基于对应用403、511以及来自云10的云管理接口的数据的观察而得出预测。
如果确定云的专用于应用的资源需要被收缩,则应用资源管理器401可以在云中隐藏未使用的映像。在这点上,应该注意,在决策时这些映像可能没有完全未使用。例如,可能具有包含五个映像的集群,并且每个映像目前仅使用50%,所以决定减少至四个或甚至三个映像。隐藏时,所述映像实际上应该未使用,从这种意义上说,发往它/它们的请求现在定向到其它位置。例如,在用于给定集群的负载平衡器的情况下,应用资源管理器401将更改负载平衡器的策略,以便现在仅将请求发送到其余三个或四个映像(的应用组件)。
如果确定云的专用于应用的资源需要被扩展,则应用资源管理器401可以在云中供应新映像。在某些情况下,这可以包括应用资源管理器在新映像上供应应用级别软件和/或数据。
如所说明的,在某些情况下,应用资源管理器401在云10上运行。在其它实例中,应用资源管理器在除云之外的计算资源上运行。
在某些情况下,确定步骤包括找到最经济高效的方式以便满足预测的即将发生的需求。
应该注意,可以按照性能和/或可用性指定预测的即将发生的需求。
还应该注意,在某些实例中,应用管理器有时重新发现应用,即发现(例如,通过发现工具)服务器管理器直接针对应用软件517和/或底层映像519进行的更改(而不是根据本发明的一个或多个实施例的使用应用管理器工具进行的更改)。
此外,给出到目前为止的讨论,应该理解,一般地说,根据本发明的一个方面的示例性系统包括云10。所述云是基础架构即服务云和/或平台即服务云。还包括在云上运行的至少一个应用403、511以及应用资源管理器401。应用资源管理器401获得对应用403、511的即将发生的需求的预测;基于所述预测而确定云10的专用于应用403、511的资源需要被扩展或收缩;以及响应于所述确定而根据具体情况执行扩展或收缩云的专用于应用的资源。
即将发生的需求的预测例如可以从应用所有者513处获得。在其它实例中,云10可以包括云管理接口,并且应用资源管理器通过基于对应用和来自云的云管理接口的数据的观察得出预测而获得预测。在这点上,应该注意,云管理平台523提供云管理接口,即以下平台:其包含代码等,但云的用户通常无法例如仅通过网页访问代码,用户可以在网页中查看其当前映像并且输入“provision one more image for me(为我再供应一个映像)”或“extend the resources of this image by X(通过X扩展该映像的资源)”。网页是接口,并且在一个或多个实施例中,它具有编程版本的程序以便进行相同的输入。
云的专用于应用的资源例如可以包括映像。在某些情况下,当应用资源管理器确定云的专用于应用的资源需要被收缩时,应用资源管理器通过隐藏未使用的映像来执行收缩。
在某些情况下,应用资源管理器确定云的专用于应用的资源需要被扩展,并且应用资源管理器通过在云中供应新映像来执行扩展。如所说明的,在某些情况下,这可以包括应用资源管理器在新映像上供应应用级别软件和/或数据。
还如所说明的,应用资源管理器可以在云上运行,或者在除云之外的其它计算资源上运行;在某些实例中,这些资源还形成系统的一部分。应该理解,服务器12尽管被指示为云10的云资源,但同样表示可以在其上实现应用资源管理器401云的非云计算资源。此外,除云之外的其它计算资源还可以包括管理器401在不同于它所管理的云上运行的情况。
如图6中所示,在某些情况下,应用资源管理器依次包括管理部分633和控制部分635。在这些情况下,应用资源管理器的管理部分可以是基于预测而确定云的专用于应用的资源需要被扩展或收缩的组件;以及应用资源管理器的控制部分可以是响应于所述确定而执行扩展或收缩云的专用于应用的资源的组件。
示例性系统和制品详细信息
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
本发明的一个或多个实施例或其元素可以以装置的形式实现,所述装置包括存储器和至少一个处理器,至少一个处理器耦合到存储器并且可操作以执行示例性方法步骤。
一个或多个实施例可以使用在通用计算机或工作站上运行的软件。参考图1,这种实现例如可以采用处理器16、存储器28以及到显示器24和外部设备(多个)14(例如键盘、指点设备等)的输入/输出接口22。术语“处理器”如在此使用的,旨在包括任何处理设备,例如包括CPU(中央处理单元)和/或其它形式处理电路的处理设备。进一步,术语“处理器”可以指多个单独的处理器。术语“存储器”旨在包括与处理器或CPU关联的存储器,例如RAM(随机存取存储器)30、ROM(只读存储器)、固定存储器件(例如,硬盘驱动器34)、可移动存储器件(例如,软盘)、闪存等。此外,词组“输入/输出接口”如在此使用的,旨在构想例如到一个或多个用于将数据输入到处理单元的机构(例如,鼠标)以及到一个或多个用于提供与处理单元关联的结果的机构(例如,打印机)的接口。处理器16、存储器28和输入/输出接口22例如可以通过总线18互连,作为数据处理单元12的一部分。还可以例如通过总线18为网络接口20(例如网卡,其可以用于与计算机网络连接)以及介质接口(例如软盘或CD-ROM驱动器,其可以用于与合适的介质连接)提供合适的互连。
因此,如在此描述的,包括用于执行本发明方法的指令或代码的计算机软件可以被存储在一个或多个关联的存储器件(例如,ROM、固定或可移动存储器)中,并且当准备使用时,被部分或全部加载(例如,加载到RAM中)并由CPU实现。这种软件可以包括但不限于固件、驻留软件、微代码等。
适合于存储和/或执行程序代码的数据处理系统将包括至少一个通过系统总线18直接或间接连接到存储元件28的处理器16。存储元件可以包括在程序代码的实际执行期间采用的本地存储器、大容量存储装置以及提供至少某些程序代码的临时存储以减少必须在执行期间从大容量存储装置检索代码的次数的高速缓存存储器32。
输入/输出或I/O设备(包括但不限于键盘、显示器、指点设备等)可以直接或通过中间I/O控制器与系统相连。
网络适配器20也可以被连接到系统以使数据处理系统能够通过中间专用或公共网络变得与其它数据处理系统或远程打印机或存储器件相连。调制解调器、电缆调制解调器和以太网卡只是当前可用的网络适配器类型中的少数几种。
如在此(包括权利要求)使用的,“服务器”包括运行服务器程序的物理数据处理系统(例如,如图1中所示的系统12)。应该理解,这种物理服务器可以包括也可以不包括显示器和键盘。
如所说明的,本发明的各个方面可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是—但不限于—电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括例如在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括—但不限于—电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括—但不限于—无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的各个方面的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言,或者诸如Perl之类的脚本语言。在某些实例中,优化求解器可以用作子组件,例如ILOG CPLEX(用于线性编程、混合整数编程和二次编程的高性能数学编程求解器,从位于美国纽约阿蒙克的国际商业机器公司获得)。一般地说,程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一个或多个实施例中,代码的重要部分是与应用资源管理器关联的部分;它可以在云中或外部运行。在至少某些情况下,更可能在服务器上而不是最终用户机器上(如果有的话,在应用所有者的最终用户机器上),但应用所有者从膝上型电脑等运行它也是可能的。
在此参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其它设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article ofmanufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
附图中的流程图和框图显示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
应该注意,在此描述的任何方法都可以包括提供一种系统的额外步骤,所述系统包括包含在计算机可读存储介质中的不同软件模块;所述模块例如可以包括在此处描述的框图和/或流程图中所示的任何或全部元素;作为实例而非限制,图6中示出应用资源管理器模块,其具有一个或多个子模块,例如策略子模块、管理子模块、控制子模块和解释子模块。然后可以使用所述系统的不同软件模块和/或子模块(如上所述,在一个或多个硬件处理器(例如16)上执行)执行方法步骤。进一步,计算机程序产品可以包括计算机可读存储介质,其具有适合于实现以便执行在此描述的一个或多个方法步骤的代码,这些方法步骤包括为所述系统供应不同软件模块。在某些情况下,在至少一个硬件处理器上执行的管理子模块执行确定步骤,在至少一个硬件处理器上执行的控制子模块执行扩展和收缩。获得步骤通常可以被认为由应用资源管理器模块执行;其中从应用所有者获得预测,可以使用策略子模块,同时应用资源管理器本身从应用和/或云管理接口中的数据得出预测,可以采用解释子模块。
在任何情况下,应当理解,在此示出的组件可以以各种形式的硬件、软件或它们的组合来实现;例如,专用集成电路(多个)(ASIC)、功能电路、一个或多个具有关联存储器的经过适当编程的通用数字计算机等。给予了在此提供的本发明的教导后,相关技术领域的普通技术人员将能够构想本发明的组件的其它实现。
在此使用的术语只是为了描述特定的实施例并且并非旨在作为本发明的限制。如在此使用的,单数形式“一”、“一个”和“该”旨在同样包括复数形式,除非上下文明确地另有所指。还将理解,当在此说明书中使用时,术语“包括”和/或“包含”指定了声明的特性、整数、步骤、操作、元素和/或组件的存在,但是并不排除一个或多个其它特性、整数、步骤、操作、元素、组件和/或其组合的存在或增加。
以下的权利要求中的对应结构、材料、操作以及所有功能性限定的装置或步骤的等同替换,旨在包括任何用于与在权利要求中具体指出的其它元件相组合地执行该功能的结构、材料或操作。出于示例和说明目的给出了对本发明的描述,但所述描述并非旨在是穷举的或是将本发明限于所公开的形式。在不偏离本发明的范围和精神的情况下,对于所属技术领域的普通技术人员来说许多修改和变化都将是显而易见的。实施例的选择和描述是为了最佳地解释本发明的原理和实际应用,并且当适合于所构想的特定使用时,使得所属技术领域的其它普通技术人员能够理解本发明的具有各种修改的各种实施例。
Claims (25)
1.一种方法,包括:
由应用资源管理器获得对在云上运行的应用的即将发生的需求的预测,所述云包括基础架构即服务云和平台即服务云中的至少一个;
由所述应用资源管理器基于所述预测而确定所述云的专用于所述应用的资源需要被扩展或收缩;以及
响应于所述确定步骤,执行扩展和收缩所述云的专用于所述应用的所述资源中的一个。
2.根据权利要求1的方法,其中所述获得包括从应用所有者获得所述预测。
3.根据权利要求1的方法,其中所述获得包括所述应用资源管理器基于对以下至少一项的观察而得出所述预测:
所述应用;以及
来自所述云的云管理接口的数据。
4.根据权利要求1的方法,其中所述确定包括确定所述云的专用于所述应用的所述资源需要被收缩,并且其中所述执行包括通过在所述云中隐藏未使用的映像来执行收缩。
5.根据权利要求1的方法,其中所述确定包括确定所述云的专用于所述应用的所述资源需要被扩展,并且其中所述执行包括通过在所述云中供应新的映像来执行所述扩展。
6.根据权利要求5的方法,还包括所述应用资源管理器在所述新的映像上供应应用级别软件和数据中的至少一个。
7.根据权利要求1的方法,还包括以下操作中的至少一个:
在所述云上运行所述应用资源管理器;以及
在除所述云之外的计算资源上运行所述应用资源管理器。
8.根据权利要求1的方法,其中所述确定包括找到一种最经济高效的方式来满足所预测的即将发生的需求。
9.根据权利要求1的方法,其中在所述获得步骤中,按照性能和可用性中的至少一个来指定所预测的即将发生的需求。
10.根据权利要求1的方法,还包括所述应用资源管理器定期运行发现工具以检测以下至少一项的更改:
所述应用;以及
所述云的专用于所述应用的所述资源。
11.根据权利要求1的方法,还包括提供一种系统,其中所述系统包括不同软件模块,每个所述不同软件模块包含在计算机可读存储介质中,并且其中所述不同软件模块包括应用资源管理器模块、管理子模块和控制子模块;
其中:
由在至少一个硬件处理器上执行的所述应用资源管理器模块执行所述获得;
由在所述至少一个硬件处理器上执行的所述管理子模块执行所述确定;以及
由在所述至少一个硬件处理器上执行的所述控制子模块执行所述扩展和收缩中的一个。
12.根据权利要求11的方法,其中:
所述不同软件模块进一步包括策略子模块和解释子模块;
由在所述至少一个硬件处理器上执行的所述管理子模块通过实施所述策略子模块的至少一个策略并基于来自所述解释子模块的利用率信息和故障报告中的至少一个,执行所述确定。
13.一种系统,包括:
云,所述云包括基础架构即服务云和平台即服务云中的至少一个;
在所述云上运行的至少一个应用;以及
应用资源管理器;
其中所述应用资源管理器:
获得对所述应用的即将发生的需求的预测;
基于所述预测而确定所述云的专用于所述应用的资源需要被扩展或收缩;以及
响应于所述确定,执行扩展和收缩所述云的专用于所述应用的所述资源中的一个。
14.根据权利要求13的系统,其中所述应用资源管理器从应用所有者获得所述预测。
15.根据权利要求13的系统,其中所述云包括云管理接口,并且其中所述应用资源管理器通过以下操作获得所述预测:基于对所述应用和来自所述云的所述云管理接口的数据的观察而得出所述预测。
16.根据权利要求13的系统,其中:
所述云的专用于所述应用的所述资源中的至少一些资源包括映像;
所述应用资源管理器确定所述云的专用于所述应用的所述资源需要被收缩;以及
所述应用资源管理器通过隐藏所述映像中的未使用映像来执行所述收缩。
17.根据权利要求13的系统,其中所述应用资源管理器确定所述云的专用于所述应用的所述资源需要被扩展,并且其中所述应用资源管理器通过在所述云中供应新的映像来执行所述扩展。
18.根据权利要求13的系统,其中:
所述应用资源管理器依次包括管理部分和控制部分;
所述应用资源管理器的所述管理部分基于所述预测而确定所述云的专用于所述应用的所述资源需要被扩展或收缩;以及
响应于所述确定,所述应用资源管理器的所述控制部分执行所述扩展和收缩所述云的专用于所述应用的所述资源中的一个。
19.一种应用资源管理器计算机程序产品,其包括计算机可读存储介质,所述计算机可读存储介质随其包含计算机可读程序代码,所述计算机可读程序代码包括:
被配置为执行以下操作的计算机可读程序代码:获得对在云上运行的应用的即将发生的需求的预测,所述云包括基础架构即服务云和平台即服务云中的至少一个;
被配置为执行以下操作的计算机可读程序代码:基于所述预测而确定所述云的专用于所述应用的资源需要被扩展或收缩;以及
被配置为执行以下操作的计算机可读程序代码:响应于所述确定,指定指令以便执行扩展和收缩所述云的专用于所述应用的所述资源中的一个。
20.根据权利要求19的计算机程序产品,其中被配置为获得所述预测的计算机可读程序代码包括被配置为从应用所有者获得所述预测的计算机可读程序代码。
21.根据权利要求19的计算机程序产品,其中被配置为获得所述预测的计算机可读程序代码包括被配置为基于对以下至少一项的观察而得出所述预测的计算机可读程序代码:
所述应用;以及
来自所述云的云管理接口的数据。
22.根据权利要求19的计算机程序产品,其中被配置为确定的所述计算机可读程序代码包括被配置为确定所述云的专用于所述应用的所述资源需要被收缩的计算机可读程序代码,并且其中所述指令指定通过在所述云中隐藏未使用的映像来执行收缩。
23.根据权利要求19的计算机程序产品,其中被配置为确定的所述计算机可读程序代码包括被配置为确定所述云的专用于所述应用的所述资源需要被扩展的计算机可读程序代码,并且其中所述指令指定通过在所述云中供应新的映像来执行所述扩展。
24.根据权利要求19的计算机程序产品,其中所述计算机可读程序代码包括不同软件模块,并且其中所述不同软件模块包括应用资源管理器模块、管理子模块和控制子模块;
其中:
所述应用资源管理器模块包括被配置为获得的所述计算机可读程序代码;
所述管理子模块包括被配置为确定的所述计算机可读程序代码;以及
所述控制子模块包括被配置为指定的所述计算机可读程序代码。
25.根据权利要求24的计算机程序产品,其中:
所述不同软件模块进一步包括策略子模块和解释子模块;
所述管理子模块通过实施所述策略子模块的至少一个策略并基于来自所述解释子模块的利用率信息和故障报告中的至少一个,执行所述确定。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/180,858 US20130019015A1 (en) | 2011-07-12 | 2011-07-12 | Application Resource Manager over a Cloud |
US13/180,858 | 2011-07-12 | ||
PCT/US2012/045882 WO2013009665A1 (en) | 2011-07-12 | 2012-07-08 | Application resource manager over a cloud |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103649941A true CN103649941A (zh) | 2014-03-19 |
Family
ID=47506432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280033898.1A Pending CN103649941A (zh) | 2011-07-12 | 2012-07-08 | 云上的应用资源管理器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20130019015A1 (zh) |
JP (1) | JP2014527221A (zh) |
CN (1) | CN103649941A (zh) |
DE (1) | DE112012002941T5 (zh) |
GB (1) | GB2506325A (zh) |
WO (1) | WO2013009665A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104102543A (zh) * | 2014-06-27 | 2014-10-15 | 北京奇艺世纪科技有限公司 | 一种云计算环境中负载调整的方法和装置 |
CN106022615A (zh) * | 2016-05-23 | 2016-10-12 | 成都镜杰科技有限责任公司 | 基于云计算的企业资源管理方法 |
CN106887166A (zh) * | 2017-02-20 | 2017-06-23 | 管斌彬 | 一种基于云平台的智慧学习系统 |
CN107888706A (zh) * | 2017-12-08 | 2018-04-06 | 平安科技(深圳)有限公司 | 云产品故障处理方法、装置、设备及计算机可读存储介质 |
CN110389817A (zh) * | 2018-04-20 | 2019-10-29 | 伊姆西Ip控股有限责任公司 | 多云系统的调度方法、装置和计算机程序产品 |
CN112400159A (zh) * | 2018-07-23 | 2021-02-23 | 国际商业机器公司 | 在数量动态更新中同时维护计算节点 |
CN112948091A (zh) * | 2021-03-24 | 2021-06-11 | 国网上海市电力公司 | 应用系统的迁移方法、装置、电子设备及存储介质 |
CN113312116A (zh) * | 2020-02-07 | 2021-08-27 | 秀铺菲公司 | 用于从应用托管基础设施卸载应用扩展脚本执行的系统和方法 |
Families Citing this family (107)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2583211B1 (en) | 2010-06-15 | 2020-04-15 | Oracle International Corporation | Virtual computing infrastructure |
US10715457B2 (en) | 2010-06-15 | 2020-07-14 | Oracle International Corporation | Coordination of processes in cloud computing environments |
US20130030857A1 (en) * | 2011-07-28 | 2013-01-31 | International Business Machines Corporation | Methods and systems for dynamically facilitating project assembly |
EP2748978B1 (en) | 2011-11-15 | 2018-04-25 | Nicira Inc. | Migrating middlebox state for distributed middleboxes |
US20130159494A1 (en) * | 2011-12-15 | 2013-06-20 | Cisco Technology, Inc. | Method for streamlining dynamic bandwidth allocation in service control appliances based on heuristic techniques |
EP2812809A4 (en) * | 2012-02-10 | 2016-05-25 | Oracle Int Corp | FRAMEWORK FOR CLOUD COMPUTING SERVICES |
US9311119B2 (en) * | 2012-05-30 | 2016-04-12 | Red Hat, Inc. | Reconfiguring virtual machines |
US8959513B1 (en) | 2012-09-27 | 2015-02-17 | Juniper Networks, Inc. | Controlling virtualization resource utilization based on network state |
JP2014171211A (ja) * | 2013-02-06 | 2014-09-18 | Ricoh Co Ltd | 情報処理システム |
US9817699B2 (en) | 2013-03-13 | 2017-11-14 | Elasticbox Inc. | Adaptive autoscaling for virtualized applications |
US10454999B2 (en) * | 2013-03-14 | 2019-10-22 | Red Hat, Inc. | Coordination of inter-operable infrastructure as a service (IAAS) and platform as a service (PAAS) |
US9473355B2 (en) * | 2013-03-14 | 2016-10-18 | Amazon Technologies, Inc. | Inferring application inventory |
CN103167037B (zh) * | 2013-03-15 | 2016-12-28 | 苏州九光信息科技有限公司 | 基于模块化的云计算系统 |
US9519653B2 (en) | 2013-04-01 | 2016-12-13 | Ctera Networks, Ltd. | Techniques for efficiently enforcing resource quotas in a multi-tenant cloud storage system |
US9729465B2 (en) | 2013-05-01 | 2017-08-08 | Red Hat, Inc. | Policy based application elasticity across heterogeneous computing infrastructure |
US20140351391A1 (en) * | 2013-05-26 | 2014-11-27 | Connectloud, Inc. | Method and Apparatus to Recommend a Workload Distribution Path Based on Resource Usage Pattern |
US20140351441A1 (en) * | 2013-05-26 | 2014-11-27 | Connectloud, Inc. | Method and Apparatus for SLA-aware System to Recommend Best Match for Cloud Resource Provisioning |
US20140351430A1 (en) * | 2013-05-26 | 2014-11-27 | Connectloud, Inc. | Method and Apparatus for Capacity-Aware System to Recommend Capacity Management Suggestions |
US20140351429A1 (en) * | 2013-05-26 | 2014-11-27 | Connectloud, Inc. | Method and Apparatus to Elastically Modify Size of a Resource Pool |
US9547835B2 (en) | 2013-08-20 | 2017-01-17 | International Business Machines Corporation | Modularly managed service platform |
CN105593835B (zh) * | 2013-10-03 | 2019-03-08 | 慧与发展有限责任合伙企业 | 通过主云服务管理器管理多个二级云 |
US9639817B2 (en) * | 2013-11-13 | 2017-05-02 | Google, Inc. | Remote metering for panelist web usage |
US9544385B1 (en) | 2014-02-24 | 2017-01-10 | Google Inc. | Providing second content items in association with first content items |
US20150264117A1 (en) * | 2014-03-14 | 2015-09-17 | Avni Networks Inc. | Processes for a highly scalable, distributed, multi-cloud application deployment, orchestration and delivery fabric |
US9680708B2 (en) | 2014-03-14 | 2017-06-13 | Veritas Technologies | Method and apparatus for cloud resource delivery |
US20150355927A1 (en) * | 2014-06-04 | 2015-12-10 | Yahoo! Inc. | Automatic virtual machine resizing to optimize resource availability |
US9760952B2 (en) | 2014-06-12 | 2017-09-12 | International Business Machines Corporation | Application service aggregation and management |
US9426034B2 (en) | 2014-06-16 | 2016-08-23 | International Business Machines Corporation | Usage policy for resource management |
US10671508B2 (en) | 2014-09-25 | 2020-06-02 | Hewlett Packard Enterprise Development Lp | Testing a cloud service |
US10009292B2 (en) * | 2014-10-03 | 2018-06-26 | International Business Machines Corporation | Cloud independent tuning service for autonomously managed workloads |
US11182280B2 (en) | 2014-10-13 | 2021-11-23 | Microsoft Technology Licensing, Llc | Application testing |
US10284664B2 (en) | 2014-10-13 | 2019-05-07 | Microsoft Technology Licensing, Llc | Application testing |
US9886267B2 (en) | 2014-10-30 | 2018-02-06 | Equinix, Inc. | Interconnection platform for real-time configuration and management of a cloud-based services exchange |
CN105991687B (zh) * | 2015-02-03 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 一种服务管理方法和装置 |
US10275749B2 (en) | 2015-03-20 | 2019-04-30 | International Business Machines Corporation | Tracking use of a virtualization service according to globalization characteristic based usage |
JP2016192661A (ja) * | 2015-03-31 | 2016-11-10 | 日本電気株式会社 | ネットワークシステム、ネットワーク制御方法および制御装置 |
JP2016192660A (ja) * | 2015-03-31 | 2016-11-10 | 日本電気株式会社 | ネットワークシステム、ネットワーク制御方法、制御装置および運用管理装置 |
US9942331B2 (en) | 2015-06-12 | 2018-04-10 | International Business Machines Corporation | Utilization of computing services |
US10243815B2 (en) * | 2015-06-29 | 2019-03-26 | Vmware, Inc. | Methods and systems to evaluate data center resource allocation costs |
CN105183820A (zh) * | 2015-08-28 | 2015-12-23 | 广东创我科技发展有限公司 | 一种支持多租户的大数据平台及租户访问方法 |
US10387209B2 (en) | 2015-09-28 | 2019-08-20 | International Business Machines Corporation | Dynamic transparent provisioning of resources for application specific resources |
US10200387B2 (en) * | 2015-11-30 | 2019-02-05 | International Business Machines Corporation | User state tracking and anomaly detection in software-as-a-service environments |
US10938665B2 (en) * | 2015-12-15 | 2021-03-02 | At&T Intellectual Property I, L.P. | Method and apparatus for creating a custom service |
US10394587B2 (en) | 2016-01-06 | 2019-08-27 | International Business Machines Corporation | Self-terminating or self-shelving virtual machines and workloads |
US10395195B2 (en) | 2016-01-08 | 2019-08-27 | International Business Machines Corporation | Provisioning virtual machines to optimize application licensing costs |
US10878079B2 (en) | 2016-05-11 | 2020-12-29 | Oracle International Corporation | Identity cloud service authorization model with dynamic roles and scopes |
US10581820B2 (en) | 2016-05-11 | 2020-03-03 | Oracle International Corporation | Key generation and rollover |
US9781122B1 (en) | 2016-05-11 | 2017-10-03 | Oracle International Corporation | Multi-tenant identity and data security management cloud service |
US9838376B1 (en) | 2016-05-11 | 2017-12-05 | Oracle International Corporation | Microservices based multi-tenant identity and data security management cloud service |
US10425386B2 (en) | 2016-05-11 | 2019-09-24 | Oracle International Corporation | Policy enforcement point for a multi-tenant identity and data security management cloud service |
US10454940B2 (en) | 2016-05-11 | 2019-10-22 | Oracle International Corporation | Identity cloud service authorization model |
US9838377B1 (en) | 2016-05-11 | 2017-12-05 | Oracle International Corporation | Task segregation in a multi-tenant identity and data security management cloud service |
US10341410B2 (en) | 2016-05-11 | 2019-07-02 | Oracle International Corporation | Security tokens for a multi-tenant identity and data security management cloud service |
US10313261B1 (en) * | 2016-06-15 | 2019-06-04 | Workday, Inc. | Tenant assignment system |
US10530578B2 (en) | 2016-08-05 | 2020-01-07 | Oracle International Corporation | Key store service |
US10255061B2 (en) | 2016-08-05 | 2019-04-09 | Oracle International Corporation | Zero down time upgrade for a multi-tenant identity and data security management cloud service |
US10721237B2 (en) | 2016-08-05 | 2020-07-21 | Oracle International Corporation | Hierarchical processing for a virtual directory system for LDAP to SCIM proxy service |
US10263947B2 (en) | 2016-08-05 | 2019-04-16 | Oracle International Corporation | LDAP to SCIM proxy service |
US10585682B2 (en) | 2016-08-05 | 2020-03-10 | Oracle International Corporation | Tenant self-service troubleshooting for a multi-tenant identity and data security management cloud service |
US10735394B2 (en) | 2016-08-05 | 2020-08-04 | Oracle International Corporation | Caching framework for a multi-tenant identity and data security management cloud service |
US10516672B2 (en) | 2016-08-05 | 2019-12-24 | Oracle International Corporation | Service discovery for a multi-tenant identity and data security management cloud service |
US10484382B2 (en) | 2016-08-31 | 2019-11-19 | Oracle International Corporation | Data management for a multi-tenant identity cloud service |
US10846390B2 (en) | 2016-09-14 | 2020-11-24 | Oracle International Corporation | Single sign-on functionality for a multi-tenant identity and data security management cloud service |
US10511589B2 (en) | 2016-09-14 | 2019-12-17 | Oracle International Corporation | Single logout functionality for a multi-tenant identity and data security management cloud service |
US10594684B2 (en) | 2016-09-14 | 2020-03-17 | Oracle International Corporation | Generating derived credentials for a multi-tenant identity cloud service |
US10484243B2 (en) | 2016-09-16 | 2019-11-19 | Oracle International Corporation | Application management for a multi-tenant identity cloud service |
US10567364B2 (en) | 2016-09-16 | 2020-02-18 | Oracle International Corporation | Preserving LDAP hierarchy in a SCIM directory using special marker groups |
US10616224B2 (en) | 2016-09-16 | 2020-04-07 | Oracle International Corporation | Tenant and service management for a multi-tenant identity and data security management cloud service |
US10445395B2 (en) | 2016-09-16 | 2019-10-15 | Oracle International Corporation | Cookie based state propagation for a multi-tenant identity cloud service |
US10791087B2 (en) | 2016-09-16 | 2020-09-29 | Oracle International Corporation | SCIM to LDAP mapping using subtype attributes |
US10341354B2 (en) | 2016-09-16 | 2019-07-02 | Oracle International Corporation | Distributed high availability agent architecture |
US10904074B2 (en) | 2016-09-17 | 2021-01-26 | Oracle International Corporation | Composite event handler for a multi-tenant identity cloud service |
US10261836B2 (en) | 2017-03-21 | 2019-04-16 | Oracle International Corporation | Dynamic dispatching of workloads spanning heterogeneous services |
KR101807806B1 (ko) * | 2017-05-02 | 2017-12-11 | 나무기술 주식회사 | 클라우드 플랫폼에서 어플리케이션을 컨테이너화하는 방법 |
US10454915B2 (en) | 2017-05-18 | 2019-10-22 | Oracle International Corporation | User authentication using kerberos with identity cloud service |
US10838840B2 (en) * | 2017-09-15 | 2020-11-17 | Hewlett Packard Enterprise Development Lp | Generating different workload types for cloud service testing |
US10348858B2 (en) | 2017-09-15 | 2019-07-09 | Oracle International Corporation | Dynamic message queues for a microservice based cloud service |
US11308132B2 (en) | 2017-09-27 | 2022-04-19 | Oracle International Corporation | Reference attributes for related stored objects in a multi-tenant cloud service |
US10834137B2 (en) | 2017-09-28 | 2020-11-10 | Oracle International Corporation | Rest-based declarative policy management |
US11271969B2 (en) | 2017-09-28 | 2022-03-08 | Oracle International Corporation | Rest-based declarative policy management |
US10705823B2 (en) | 2017-09-29 | 2020-07-07 | Oracle International Corporation | Application templates and upgrade framework for a multi-tenant identity cloud service |
CN108062225B (zh) * | 2017-11-27 | 2021-08-27 | 国云科技股份有限公司 | 一种多模板组合发布应用集群的方法 |
US11099964B2 (en) * | 2017-12-20 | 2021-08-24 | Pivotal Software, Inc. | Framework actuator integration |
US10715564B2 (en) | 2018-01-29 | 2020-07-14 | Oracle International Corporation | Dynamic client registration for an identity cloud service |
US11140096B2 (en) * | 2018-02-07 | 2021-10-05 | Cisco Technology, Inc. | Optimizing fog orchestration through edge compute resource reservation |
US10931656B2 (en) | 2018-03-27 | 2021-02-23 | Oracle International Corporation | Cross-region trust for a multi-tenant identity cloud service |
US10798165B2 (en) | 2018-04-02 | 2020-10-06 | Oracle International Corporation | Tenant data comparison for a multi-tenant identity cloud service |
US11165634B2 (en) | 2018-04-02 | 2021-11-02 | Oracle International Corporation | Data replication conflict detection and resolution for a multi-tenant identity cloud service |
US11258775B2 (en) | 2018-04-04 | 2022-02-22 | Oracle International Corporation | Local write for a multi-tenant identity cloud service |
US11012444B2 (en) | 2018-06-25 | 2021-05-18 | Oracle International Corporation | Declarative third party identity provider integration for a multi-tenant identity cloud service |
US10764273B2 (en) | 2018-06-28 | 2020-09-01 | Oracle International Corporation | Session synchronization across multiple devices in an identity cloud service |
JP2020030604A (ja) * | 2018-08-22 | 2020-02-27 | 富士通株式会社 | プラン提示プログラム、プラン提示方法、及び情報処理装置 |
US11693835B2 (en) | 2018-10-17 | 2023-07-04 | Oracle International Corporation | Dynamic database schema allocation on tenant onboarding for a multi-tenant identity cloud service |
US11321187B2 (en) | 2018-10-19 | 2022-05-03 | Oracle International Corporation | Assured lazy rollback for a multi-tenant identity cloud service |
US11651357B2 (en) | 2019-02-01 | 2023-05-16 | Oracle International Corporation | Multifactor authentication without a user footprint |
US11061929B2 (en) | 2019-02-08 | 2021-07-13 | Oracle International Corporation | Replication of resource type and schema metadata for a multi-tenant identity cloud service |
US11321343B2 (en) | 2019-02-19 | 2022-05-03 | Oracle International Corporation | Tenant replication bootstrap for a multi-tenant identity cloud service |
US11669321B2 (en) | 2019-02-20 | 2023-06-06 | Oracle International Corporation | Automated database upgrade for a multi-tenant identity cloud service |
US11423111B2 (en) | 2019-02-25 | 2022-08-23 | Oracle International Corporation | Client API for rest based endpoints for a multi-tenant identify cloud service |
US11792226B2 (en) | 2019-02-25 | 2023-10-17 | Oracle International Corporation | Automatic api document generation from scim metadata |
US11870770B2 (en) | 2019-09-13 | 2024-01-09 | Oracle International Corporation | Multi-tenant identity cloud service with on-premise authentication integration |
US11687378B2 (en) | 2019-09-13 | 2023-06-27 | Oracle International Corporation | Multi-tenant identity cloud service with on-premise authentication integration and bridge high availability |
US11611548B2 (en) | 2019-11-22 | 2023-03-21 | Oracle International Corporation | Bulk multifactor authentication enrollment |
EP3832464A1 (en) * | 2019-12-06 | 2021-06-09 | Tata Consultancy Services Limited | System and method for selection of cloud service providers in a multi-cloud |
CN111475295B (zh) * | 2020-04-03 | 2024-02-20 | 上海依图网络科技有限公司 | 软硬件分层管理方法、装置及计算机可读存储介质 |
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 |
ES2957182A1 (es) * | 2022-05-31 | 2024-01-12 | Pronoide S L | Sistema y metodo para la creacion de videos instructivos mediante el empleo de secuencias de comandos |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007035544A2 (en) * | 2005-09-15 | 2007-03-29 | 3Tera, Inc. | Apparatus, method and system for rapid delivery of distributed applications |
CN101968859A (zh) * | 2010-09-29 | 2011-02-09 | 用友软件股份有限公司 | 基于云计算环境的业务流程管理方法和系统 |
CN102004671A (zh) * | 2010-11-15 | 2011-04-06 | 北京航空航天大学 | 一种云计算环境下数据中心基于统计模型的资源管理方法 |
CN102111337A (zh) * | 2011-03-14 | 2011-06-29 | 浪潮(北京)电子信息产业有限公司 | 任务调度方法和系统 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0213073D0 (en) * | 2002-06-07 | 2002-07-17 | Hewlett Packard Co | Method of maintaining availability of requested network resources |
US20110016214A1 (en) * | 2009-07-15 | 2011-01-20 | Cluster Resources, Inc. | System and method of brokering cloud computing resources |
US20110110568A1 (en) * | 2005-04-08 | 2011-05-12 | Gregory Vesper | Web enabled medical image repository |
US8429630B2 (en) * | 2005-09-15 | 2013-04-23 | Ca, Inc. | Globally distributed utility computing cloud |
US8250215B2 (en) * | 2008-08-12 | 2012-08-21 | Sap Ag | Method and system for intelligently leveraging cloud computing resources |
US7996525B2 (en) * | 2008-12-31 | 2011-08-09 | Sap Ag | Systems and methods for dynamically provisioning cloud computing resources |
US8117317B2 (en) * | 2008-12-31 | 2012-02-14 | Sap Ag | Systems and methods for integrating local systems with cloud computing resources |
US9485117B2 (en) * | 2009-02-23 | 2016-11-01 | Red Hat, Inc. | Providing user-controlled resources for cloud computing environments |
WO2010127365A1 (en) * | 2009-05-01 | 2010-11-04 | Citrix Systems, Inc. | Systems and methods for establishing a cloud bridge between virtual storage resources |
US20100293147A1 (en) * | 2009-05-12 | 2010-11-18 | Harvey Snow | System and method for providing automated electronic information backup, storage and recovery |
US9703609B2 (en) * | 2009-05-29 | 2017-07-11 | Red Hat, Inc. | Matching resources associated with a virtual machine to offered resources |
US8121618B2 (en) * | 2009-10-28 | 2012-02-21 | Digimarc Corporation | Intuitive computing methods and systems |
US8615584B2 (en) * | 2009-12-03 | 2013-12-24 | International Business Machines Corporation | Reserving services within a cloud computing environment |
WO2011091056A1 (en) * | 2010-01-19 | 2011-07-28 | Servicemesh, Inc. | System and method for a cloud computing abstraction layer |
US8433802B2 (en) * | 2010-01-26 | 2013-04-30 | International Business Machines Corporation | System and method for fair and economical resource partitioning using virtual hypervisor |
US8660355B2 (en) * | 2010-03-19 | 2014-02-25 | Digimarc Corporation | Methods and systems for determining image processing operations relevant to particular imagery |
US20110313902A1 (en) * | 2010-06-18 | 2011-12-22 | International Business Machines Corporation | Budget Management in a Compute Cloud |
US7991632B1 (en) * | 2011-01-28 | 2011-08-02 | Fmr Llc | Method and system for allocation of resources in a project portfolio |
US20120265881A1 (en) * | 2011-04-14 | 2012-10-18 | Yuan Chen | Provisioning data center resources |
US8914513B2 (en) * | 2011-06-23 | 2014-12-16 | Cisco Technology, Inc. | Hierarchical defragmentation of resources in data centers |
-
2011
- 2011-07-12 US US13/180,858 patent/US20130019015A1/en not_active Abandoned
-
2012
- 2012-07-08 CN CN201280033898.1A patent/CN103649941A/zh active Pending
- 2012-07-08 GB GB1400744.7A patent/GB2506325A/en not_active Withdrawn
- 2012-07-08 JP JP2014520228A patent/JP2014527221A/ja active Pending
- 2012-07-08 DE DE112012002941.0T patent/DE112012002941T5/de not_active Withdrawn
- 2012-07-08 WO PCT/US2012/045882 patent/WO2013009665A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007035544A2 (en) * | 2005-09-15 | 2007-03-29 | 3Tera, Inc. | Apparatus, method and system for rapid delivery of distributed applications |
CN101968859A (zh) * | 2010-09-29 | 2011-02-09 | 用友软件股份有限公司 | 基于云计算环境的业务流程管理方法和系统 |
CN102004671A (zh) * | 2010-11-15 | 2011-04-06 | 北京航空航天大学 | 一种云计算环境下数据中心基于统计模型的资源管理方法 |
CN102111337A (zh) * | 2011-03-14 | 2011-06-29 | 浪潮(北京)电子信息产业有限公司 | 任务调度方法和系统 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104102543A (zh) * | 2014-06-27 | 2014-10-15 | 北京奇艺世纪科技有限公司 | 一种云计算环境中负载调整的方法和装置 |
CN104102543B (zh) * | 2014-06-27 | 2018-09-11 | 北京奇艺世纪科技有限公司 | 一种云计算环境中负载调整的方法和装置 |
CN106022615A (zh) * | 2016-05-23 | 2016-10-12 | 成都镜杰科技有限责任公司 | 基于云计算的企业资源管理方法 |
CN106022615B (zh) * | 2016-05-23 | 2020-05-19 | 上海中传网络技术股份有限公司 | 基于云计算的企业资源管理方法 |
CN106887166A (zh) * | 2017-02-20 | 2017-06-23 | 管斌彬 | 一种基于云平台的智慧学习系统 |
CN107888706B (zh) * | 2017-12-08 | 2020-04-17 | 平安科技(深圳)有限公司 | 云产品故障处理方法、装置、设备及计算机可读存储介质 |
CN107888706A (zh) * | 2017-12-08 | 2018-04-06 | 平安科技(深圳)有限公司 | 云产品故障处理方法、装置、设备及计算机可读存储介质 |
CN110389817A (zh) * | 2018-04-20 | 2019-10-29 | 伊姆西Ip控股有限责任公司 | 多云系统的调度方法、装置和计算机程序产品 |
CN112400159A (zh) * | 2018-07-23 | 2021-02-23 | 国际商业机器公司 | 在数量动态更新中同时维护计算节点 |
CN113312116A (zh) * | 2020-02-07 | 2021-08-27 | 秀铺菲公司 | 用于从应用托管基础设施卸载应用扩展脚本执行的系统和方法 |
CN113312116B (zh) * | 2020-02-07 | 2024-03-08 | 秀铺菲公司 | 用于从应用托管基础设施卸载应用扩展脚本执行的系统和方法 |
CN112948091A (zh) * | 2021-03-24 | 2021-06-11 | 国网上海市电力公司 | 应用系统的迁移方法、装置、电子设备及存储介质 |
CN112948091B (zh) * | 2021-03-24 | 2024-01-30 | 国网上海市电力公司 | 应用系统的迁移方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
GB201400744D0 (en) | 2014-03-05 |
DE112012002941T5 (de) | 2014-04-24 |
JP2014527221A (ja) | 2014-10-09 |
US20130019015A1 (en) | 2013-01-17 |
WO2013009665A1 (en) | 2013-01-17 |
GB2506325A (en) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103649941A (zh) | 云上的应用资源管理器 | |
CN103930863A (zh) | 可轻松云化的应用的基于发现的标识和迁移 | |
US8694822B2 (en) | Disaster recovery in a networked computing environment | |
CN103281344B (zh) | 用于混合云的服务使用的集成计量的方法和系统 | |
US8914469B2 (en) | Negotiating agreements within a cloud computing environment | |
JP5767646B2 (ja) | クラウド・サービス・カタログを用いたサービスの供給 | |
US8037187B2 (en) | Resource exchange management within a cloud computing environment | |
JP5946468B2 (ja) | イメージを実行するのに最適なコンピューティング環境の判断 | |
US9112733B2 (en) | Managing service level agreements using statistical process control in a networked computing environment | |
US8966175B2 (en) | Automated storage provisioning within a clustered computing environment | |
US11263052B2 (en) | Determining optimal compute resources for distributed batch based optimization applications | |
US9106675B2 (en) | Intelligent network storage planning within a clustered computing environment | |
CN104067265A (zh) | 用于支持在云中的安全应用部署的系统和方法 | |
US9229777B2 (en) | Dynamically relocating workloads in a networked computing environment | |
CN103858118A (zh) | 在网络计算环境中动态地获得计算资源 | |
CN103970607A (zh) | 使用等价集合来计算优化虚拟机分配的方法和装置 | |
CN103297496A (zh) | 用于云计算系统的增强存储配额管理的方法和系统 | |
CN105335207A (zh) | 用于管理虚拟机实例的方法和装置 | |
US9424403B2 (en) | Obtaining software asset insight by analyzing collected metrics using analytic services | |
CN103369021A (zh) | 用于网络化计算环境中的策略实现的系统和方法 | |
GB2496027A (en) | Event prediction and preemptive action for a networked computing environment | |
CN104216662A (zh) | 用于跨远程复制关系的卷布置的方法和系统 | |
da Silva Dias et al. | Providing IaaS resources automatically through prediction and monitoring approaches | |
US20140244311A1 (en) | Protecting against data loss in a networked computing environment | |
US9699114B1 (en) | Providing use of local or private cloud infrastructure resources to public cloud providers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140319 |