CN103365725B - 在多个云之间动态分配工作负荷部署单元的方法和系统 - Google Patents
在多个云之间动态分配工作负荷部署单元的方法和系统 Download PDFInfo
- Publication number
- CN103365725B CN103365725B CN201310113260.5A CN201310113260A CN103365725B CN 103365725 B CN103365725 B CN 103365725B CN 201310113260 A CN201310113260 A CN 201310113260A CN 103365725 B CN103365725 B CN 103365725B
- Authority
- CN
- China
- Prior art keywords
- cloud
- functional requirement
- deployment unit
- context
- deployment
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/829—Topology based
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1036—Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/60—Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
-
- 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/501—Performance criteria
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及在多个云之间动态分配工作负荷部署单元的方法和系统。一种在多个云之间有选择地分配多个部署单元的方法。所述方法可包括识别工作负荷的第一部署单元的第一上下文,和识别工作负荷的第二部署单元的第二上下文。根据第一上下文,能够识别满足由第一上下文指示的至少一个要求的多个云中的第一个云,第一部署单元可被自动分配给第一个云。根据第二上下文,能够识别满足由第二上下文指示的至少一个要求的多个云中的第二个云,其中第一个云不满足由第二上下文指示的要求,以及第二部署单元可被自动分配给第二个云。
Description
技术领域
在本说明书内公开的一个或多个实施例涉及云计算,更具体地说,涉及云计算环境中的工作负荷的部署。
背景技术
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。在这点上,可通过网络,比如专用网络和/或公共网络(例如因特网),以实用程序的形式,把共享资源提供给计算机和其它设备。资源可包括计算/处理、软件应用、数据存取、数据管理和数据存储。最终用户不必知道云基础架构的具体位置或其它细节。不过,最终用户可通过web浏览器或者轻量级桌面或移动应用,访问基于云的应用,而商业软件和数据可被保存在云中。
发明内容
在本说明书内公开的一个或多个实施例涉及云计算,更具体地说,涉及云计算环境中的工作负荷的部署。
一个实施例包括在多个云之间有选择地分配多个部署单元的方法。所述方法可包括识别工作负荷的第一部署单元的第一上下文,和识别工作负荷的第二部署单元的第二上下文。根据第一上下文,能够识别多个云中满足由第一上下文指示的至少一个要求的第一个云,第一部署单元可被自动分配给第一个云。根据第二上下文,能够识别多个云中满足由第二上下文指示的至少一个要求的第二个云,其中第一个云不满足由第二上下文指示的要求,以及第二部署单元可被自动分配给第二个云。
另一个实施例可包括在多个云之间有选择地分配多个部署单元的方法。所述方法可包括识别工作负荷的第一部署单元的第一上下文,和识别工作负荷的第二部署单元的第二上下文,其中第一上下文指示与第一部署单元相关的至少一个要求,而第二上下文指示与第二部署单元相关的至少一个要求。所述方法还可包括进行第一个云的第一审计,以对于相应的第一和第二上下文中的每一个,确定第一个云是否满足由该上下文指示的要求,和进行第二个云的审计,以对于相应的第一和第二上下文中的每一个,确定第二个云是否满足由该上下文指示的要求。根据第一和第二审计,可以自动创建部署计划。部署计划可识别第一部署单元将被分配给至少第一个云和第二个云中的哪个云,和第二部署单元将被分配给至少第一个云和第二个云中的哪个云。根据部署计划,第一部署单元可被自动分配给第一个云,而第二部署单元可被自动分配给第二个云。
另一个实施例可包括具有处理器和存储器的系统。处理器可被配置成启动如在本说明书内说明的可执行操作和/或功能。
另一个实施例可包括在多个云之间有选择地分配多个部署单元的计算机程序产品。计算机程序产品可包括在其上保存有程序代码的计算机可读存储介质,当被执行时,所述程序代码配置处理器,以执行在本发明内说明的各种功能和/或操作。
附图说明
图1是图解说明按照本发明的一个实施例的云计算节点的计算机系统/服务器的框图。
图2描述按照本发明的一个实施例的云计算环境。
图3描述按照本发明的一个实施例,由云计算环境提供的功能抽象层。
图4描述按照本发明的一个实施例,包含工作负荷的部署单元可被分配给的多个云的系统。
图5是图解说明按照本发明的另一个实施例,在多个云之间有选择地分配多个部署单元的方法的流程图。
具体实施方式
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。在这点上,这里使用的术语“云”意味包含借助适当的通信网络互连,并且从客户端的角度来看,一起表现为单个资源的多个节点的计算基础架构。尽管对客户端来说,云表现为单个资源,不过借助云的各个节点,云能够向客户端提供许多不同的功能,比如数据处理、数据存储、服务、应用等。例如,对客户端来说,云可表现为单个服务器,尽管实际上云可包含多个服务器、存储系统、连网组件、服务、应用程序等,如这里将说明的一样。因而,这里可把云称为“主机”。
现在参见图1,图中示出了云计算节点的例子的方框图。云计算节点100只是适当的云计算节点的一个例子,并不意图暗示对这里说明的本发明的实施例的使用范围或功能性的任何限制。无论如何,云计算节点100能够被实现和/或完成上面陈述的任意功能。
云计算节点100可包括处理系统/服务器110,处理系统/服务器110可与许多其它通用或专用计算系统环境或结构一起工作。适合于与处理系统/服务器110一起使用的公知计算系统、环境和/或结构的例子包括但不限于个人计算机系统、服务器计算机系统、控制节点、存储区域网(SAN)控制器、瘦客户端、厚客户端、手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机系统、大型计算机系统、和包括任意上述系统或设备等的分布式云计算环境。
可在由计算机系统或其它处理系统执行的计算机系统可执行指令,比如程序模块的一般语境中描述处理系统/服务器110。通常,程序模块可包括执行特定任务或者实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等等。可在其中利用通过通信网络链接的远程处理设备执行任务的分布式云计算环境中,实践处理系统/服务器110。在分布式云计算环境中,程序模块可以位于包括内存存储设备在内的本地和远程计算机系统存储介质中。
如图1中所示,以通用计算设备的形式表示云计算节点100中的处理系统/服务器110。处理系统/服务器110的组件可包括但不限于一个或多个处理器或处理单元116、系统存储器128、和耦接包括系统存储器128在内的各个系统组件和处理器116的总线118。
总线118代表任意几种总线结构中的一个或多个,包括存储总线或存储控制器、外围总线、加速图形端口、和利用各种总线架构任意之一的处理器或局域总线。例如这种架构包括但不限于工业标准架构(ISA)总线、微通道架构(MCA)总线、增强ISA(EISA)总线、视频电子标准协会(VESA)局域总线、和外围组件互连(PCI)总线。
处理系统/服务器110一般包括各种计算机可读存储介质。这种介质可以是处理系统/服务器110可访问的任何可用介质,并且它包括易失性和非易失性介质、可拆卸和不可拆卸介质。系统存储器128可包括非易失性存储器形式,比如随机存取存储器(RAM)130和/或高速缓冲存储器132的计算机可读存储介质。处理系统/服务器110还可包括其它可拆卸/不可拆卸、易失性/非易失性计算机可读存储介质。例如,可以提供存储系统134,以便读取和写入至少一个非易失性计算机可读存储介质。计算机可读存储介质的例子包括但不限于包含非易失性磁性介质(例如,“硬盘驱动器”或者“HDD”)的数据存储设备,包含非易失性固态介质(例如,“固态驱动器”或者“SSD”)的数据存储设备,包含非易失性磁光介质的数据存储设备等等。尽管未示出,不过可以提供用于读取和写入可拆卸的非易失性磁盘(例如,“软盘”)的磁盘驱动器,用于读取或写入可拆卸的非易失性光盘,比如CD-ROM、DVD-ROM或者其它光学介质的光盘驱动器,用于读取或写入可拆卸的非易失性固态驱动器的固态驱动器。在这种情况下,它们都可通过一个或多个数据介质接口,比如光纤通道接口、串行高级技术附件(SATA)接口、光纤通道接口、小型计算机系统接口(SCSI)接口、串行连接SCSI(SAS)接口等,连接到总线118。
存储器128可包括至少一个计算机程序产品,所述计算机程序产品包括具有计算机可读程序代码的计算机可读存储介质。“计算机可读存储介质”本质上可以是非临时性的。计算机可读程序代码可包括一组(例如,至少一个)程序模块142,所述程序模块142被配置成实现本发明的实施例的功能。像操作系统、一个或多个应用程序、其它程序模块和程序数据一样,具有一组(至少一个)程序模块142的程序/实用程序140例如也可被保存在存储器128中(但不限于此)。操作系统、一个或多个应用程序程序、其它程序模块、和程序数据、或者它们的某种组合都可包括连网环境的实现。程序模块142通常实现这里说明的本发明的实施例的功能和/或方法。
处理系统/服务器110还可与一个或多个外部设备114,比如键盘、指示设备、显示器124等;使用户能够与处理系统/服务器110相互作用的一个或多个设备;和/或使处理系统/服务器110能够与一个或多个其它计算设备通信的任何设备(例如,网卡、调制解调器等)通信。这样的通信可通过输入/输出(I/O)接口122发生。此外,处理系统/服务器110可通过网络适配器120,与一个或多个网络比如局域网(LAN)、普通的广域网(WAN)、和/或公共网络(例如,因特网)通信。如上所述,网络适配器120可通过总线118与处理系统/服务器110的其它组件通信。应明白尽管未示出,不过其它硬件和/或软件组件可以和处理系统/服务器110一起使用。例子包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器、和数据档案存储系统等等。
现在参见图2,描述了例证的云计算环境200。如图所示,云计算环境200包括一个或多个云计算节点100,云消费者使用的本地计算设备例如个人数字助理(PDA)或者蜂窝电话机202、桌上型计算机(或工作站)204、膝上型计算机206、和/或汽车计算机系统208可与之通信。计算节点100可以相互通信。在一个或多个网络比如如上所述的私有云、共同体云、公共云或混合云或者它们的组合中,计算节点可被物理或虚拟地分组(未示出)。这使云计算环境200可以提供云消费者不需要为其在本地计算设备保持资源的基础架构服务、平台服务和/或软件服务。应理解图2中所示的计算设备202-208的类型只是例证性的,计算节点100和云计算环境200可通过任意类型的网络和/或网络可寻址连接(例如,利用web浏览器),与任何类型的计算机化设备通信。
现在参见图3,示出了云计算环境200(图2)提供的一组功能抽象层300。事先应理解图3中所示的组件、层和功能只是例证性的,并且本发明的实施例并不局限于此。如同所述那样,提供以下各层和相应的功能:
硬件和软件层302可包括硬件组件和软件组件。硬件组件的例子包括但不限于大型机,在一个例子中是系统;基于RISC(精简指令集计算机)架构的服务器,在一个例子中是IBM系统;IBM系统;IBM Blade系统;存储系统(例如,存储阵列、网络附加存储器(NAS)等等);和连网组件。连网组件可包括各种路由器、交换机、网络适配器等中的任意之一。
软件组件的例子包括网络应用服务器软件,在一个例子中是IBM应用服务器软件;和RAID阵列控制软件,在一个例子中是可在IBM SVC Storage Engine上运行的IBM SAN卷控制器(IBM,zSeries,pSeries,xSeries,BladeCenter,WebSphere和DB2是在全球许多地区注册的国际商用机器公司的商标)。软件组件还可包括数据库软件,所述数据库软件包含与云计算环境的配置相关的数据。
虚拟化层304可提供抽象层,从所述抽象层,可以提供虚拟实体的以下例子:虚拟服务器;虚拟存储器;虚拟网络,包括虚拟专用网络;虚拟应用和操作系统;和虚拟客户端。
在一个例子中,管理层306可提供下面说明的功能。资源供给提供用于在云计算环境内完成任务的计算资源和其它资源的动态获得。存储管理可管理云计算环境内的虚拟存储器。用户访问入口为消费者和系统管理员提供对云计算环境的访问。服务级别管理提供云计算资源分配和管理,以致满足要求的服务级。服务级协议(SLA)规划和履行按照SLA提供未来预期需要的云计算资源的预先安排和获得。
工作负荷层308可提供云计算环境可被用于的工作负荷。可从工作负荷层308提供的工作负荷和功能的例子包括但不限于映射和导航、软件开发和生命期管理、数据分析处理、事务处理和数据客户端。此外,工作负荷层308可包括适合于部署在云计算环境中的任何其它应用和/或工作负荷,本发明并不局限于这一点。
图4描述按照本发明的一个实施例,包含工作负荷410的部署单元412可被有选择地分配给的多个云402、404的系统400。操作中,客户端430可把工作负荷410传送给包含至少一个处理器和至少一个存储器的处理系统,比如服务器432。在这点上,可按照图1的处理系统/服务器110的描述实现服务器432,不过服务器432不必是云的节点(尽管它可以是云的节点)。在用户(即,人)的要求下,或者在运行于客户端430或服务器432上的自动化进程的要求下,客户端430可把工作负荷410传送给服务器432。
这里使用的术语“客户端”意味按客户机/服务器关系,驻留在客户端的处理设备或系统,比如工作站、桌上型计算机、移动计算机、平板计算机等。在一个实施例中,服务器432可通过适当的通信网络,例如诸如因特网之类的公共网络和/或诸如局域网(LAN)、广域网(WAN)之类的专用网络,通信链接到云402、404。在另一个实施例中,服务器432可以是在云402或云404内的节点。例如,服务器432可托管客户端或用户访问入口,通过该访问入口客户端430能够与服务器432接口以提供工作负荷410。不管服务器432是否是云节点,客户端430都可通过公共网络和/或专用网络通信链接到服务器432。
这里使用的术语“工作负荷”意味将用一个或多个计算资源进行的工作单元。工作负荷410可包含多个部署单元(DU)412。这里使用的术语“部署单元”意味工作负荷的资产。例如,部署单元412可以是可执行应用、进程或函数、聚合数据等等。例如,工作负荷410可包括作为可执行应用的部署单元412,和包含由所述应用执行的数据(例如一个或多个数据表)的部署单元412。不过,本发明并不局限于这些具体例子。
部署单元412可被存留到云402、404(例如,保存到计算机可读存储介质),或者可在不被存留的情况下由云402、404处理。例如,可执行应用程序可被存留到云402、404,不过并非必需如此。类似地,在一些情况下,数据可由云402、404处理,从而产生传送给服务器432和/或客户端430的结果,不过这样的数据不需要被存留到云402、404。例如,数据可被保存到云节点内的本地存储器,并且一旦生成了结果就可被清除。在其它情况下,数据可被存留到云402、404,取决于对这样的数据规定的要求。
上下文420可与各个部署单元412关联。例如,部署单元412可包括提供上下文420的元数据,或者客户端430可响应与部署单元相关的一个或多个用户输入或者一个或多个数据文件,使上下文420与相应的部署单元关联。上下文420可与部署单元412的功能要求或者部署单元412的非功能要求相联系。这里使用的术语“功能要求”意味为了使部署单元在云内运行而需要满足的要求。这里使用的术语“非功能要求”意味为了使部署单元得以在云内运行不需要满足,但是仍然要由云满足的要求。
例如,功能要求可指定为了处理和/或保存部署单元412而必需的资源。非功能要求例如可指定与云安全、云性能等相关的要求。与云安全相关的要求可包括但不限于加密协议、通信协议(例如,隧道协议)、登录程序、具体的安全软件、防火墙配置等。与云性能相关的要求可包括但不限于处理能力、内存容量、内存传输速率、存储器容量、存储器传输速率、存储器等待时间、网络带宽、网络等待时间、服务级别协议等等。
根据与各个部署单元412相关的上下文420,服务器432可审计多个云402、404,以确定云402、404是否满足由各个部署单元的相应上下文420指示的要求。例如,审计可识别哪些云402、404满足上下文420中的相应上下文。为了进行审计,服务器432可访问并处理与云402、404相关的服务级别协议,访问和处理与云402、404相关的位置模型,询问云402、404等等。服务级别协议可指示相应的云提供的最低服务级别,包括性能参数、安全实现等等。位置模型可提供和相应云实际提供的服务级别,包括性能参数、安全实现等等有关的文件编制。
在一些情况下,不止一个云402、404可满足对特定部署单元,比如第一部署单元414的需求。服务器432可处理次要考虑因素,以确定将选择哪个云402、404接收第一部署单元414的分配。例如,服务器432可考虑由相应的云402、404提供的服务的价格,或者提供最理想的性能特性的云,并(从满足要求的云402、404中)选择使用费用最低的和/或提供最佳性能的云402。因而,服务器432可把第一部署单元414分配和传送给云402,云402可在云402的一个或多个节点之间部署第一部署单元414。
在另一个例子中,根据审计,服务器432可确定云402不满足由与第二部署单元416相关的上下文420指示的所有要求,不过云404确实满足这些要求。因而,服务器432可把第二部署单元416分配和传送给云404,云404可在云404的一个或多个节点之间部署第二部署单元416。当然,另外的部署单元412可被部署到云402、云404,或者一个或多个其它云(未示出)。
从客户端430的角度来看,部署单元412可被分配给的多个云402、404可一起表现为单个资源,例如表现为单个云。换句话说,客户端430可要求服务器432把工作负荷部署到资源,服务器432可自动把部署单元412分配给各个云402、404。
在服务器432在多个云402、404之间分配部署单元412之前,或者当服务器432在多个云402、404之间分配部署单元412时,服务器432可自动创建部署计划440,部署计划440识别部署单元412中的各个部署单元要被分配给,或者被分配给(从而部署到)哪些云。部署计划440还可识别何时将把部署单元412分配给某些云402、404。例如,未被存留到云402、404的工作负荷可能对时间敏感,某些云402、404可能在一天中的某些时候,在一周或一月的某些天等等,提供更高的性能。因而,部署计划440可向特定的云402、404指出部署单元412将被分配给哪个云,以及该部署单元将在何时被分配给该云402、404。在这点上,部署计划440可指出在一天的某个时间,把部署单元412分配给云402,而在一天的不同时间,把部署单元412分配给云404。
服务器432可本地保持部署计划440,例如保持在服务器432内的或者以其它方式通信链接到该服务器的计算机可读存储介质上,或者把部署计划440分配给云402、404中的一个或多个,在这种情况下,服务器可本地保存指示部署计划440被分配给哪个云402、404的数据。部署计划440可被体现为例如数据库内的数据表、散列表,或者用任何其它适当的文件结构体现。当需要处理或者访问工作负荷410或者一个或多个部署单元412时,服务器432可访问部署计划440。可在服务器432的要求下,在客户端430的要求下,或者在另一个服务器或客户端的要求下,启动这样的处理或访问。
一个或多个云402、404提供的服务和/或云402、404的性能能力会随时间变化。因而,可以实现审计程序以询问部署单元412被分配给的云402、404,从而确定它们的当前安全策略和/或性能特性,当合适时,例如如果安全策略和/或性能特性不再满足由与部署单元相关的上下文指示的功能和/或非功能要求,那么服务器432可根据所述查询的结果,自动重新分配部署单元412中的一个或多个。当服务器432重新分配部署单元412中的一个或多个时,服务器432可自动更新部署计划440。
图5是图解说明按照本发明的另一个实施例,在多个云之间有选择地分配多个部署单元的方法500的流程图。在步骤502,可以识别要在一个或多个云之间分配的工作负荷。例如,可从客户端或服务器,例如通过客户端或用户访问入口接收工作负荷。在步骤504,可识别工作负荷内的部署单元。
在判定框506,可确定工作负荷是否包含任何执行部署单元。这里使用的术语“执行部署单元”意味包含与将如何、何时或何处(即,在何种设备或系统上)执行该工作负荷相关的指令的部署单元。如果工作负荷包含一个或多个执行部署单元,那么在步骤508,服务器可识别与执行部署单元中的第一执行部署单元相关的上下文,并用文件记录该上下文。在判定框510,服务器可确定工作负荷是否包含一个或多个另外的执行部署单元。如果是,那么处理可返回步骤508,服务器可识别与下一个执行部署单元相关的上下文,并用文件记录该上下文。处理可再次进入判定框510,并继续下去直到在工作负荷中,未识别出另外的执行部署单元为止,此时处理可进入判定框512。
在判定框512,可确定工作负荷是否包含任何安装部署单元。这里使用的术语“安装部署单元”意味包含与工作负荷,例如操作系统、软件栈等的操作相关的信息,数据和/或程序/应用,以及将如何、何时或何处(即,在何种设备或系统上)放置(例如,保存)和/或安装所述工作负荷的部署单元。如果工作负荷包含一个或多个安装部署单元,那么在步骤514,服务器可识别与安装部署单元中的第一安装部署单元相关的上下文,并用文件记录该上下文。在判定框516,服务器可确定工作负荷是否包含一个或多个另外的安装部署单元。如果是,那么处理可返回步骤514,服务器可识别与下一个安装部署单元相关的上下文,并用文件记录该上下文。处理可再次进入判定框516,并继续下去,直到在工作负荷中,未识别出另外的安装部署单元为止,此时处理可进入判定框518。
在判定框518,可确定工作负荷是否包含任何数据部署单元。这里使用的术语“数据部署单元”意味包含直接与该工作负荷相关并且将被处理的数据,以及将如何、何时或何处(即,在何种设备或系统上)放置(即,保存)所述数据的部署单元。如果工作负荷包含一个或多个数据部署单元,那么在步骤520,服务器能够识别与数据部署单元中的第一数据部署单元相关的上下文,并用文件记录该上下文。在判定框522,服务器可确定工作负荷是否包含一个或多个另外的数据部署单元。如果是,那么处理可返回步骤520,服务器可识别与下一个数据部署单元相关的上下文,并用文件记录该上下文。处理可再次进入判定框522,并继续下去,直到在工作负荷中,未识别出另外的数据部署单元为止,此时处理可进入步骤524。
这里应注意,参考图5说明的部署单元的类型只是可与工作负荷相关的部署单元的类型的例子。本发明并不局限于这些具体例子。例如,表现部署单元或者任何其它部署单元可以与工作负荷相关,这样的部署单元在本发明的范围之内。
在步骤524,服务器可自动进行可用云的审计,以根据文件记录的部署单元的上下文,确定哪些云适合于接收各个部署单元的分配。如上所述,审计可识别各个云的功能和非功能能力,以及与其使用相关的价格和/或其它成本。在步骤526,根据识别的各个部署单元的上下文,和从进行的审计获得的信息,服务器可自动创建云部署计划,云部署计划指示各个云中的哪些云满足各个上下文中的相应上下文,和各个相应的部署单元将被分配给多个云中的哪个云。在步骤528,根据云部署计划,服务器可自动在可用云的各个云之间,自动分配部署单元。例如,根据部署计划,可以选择第一个云接收第一部署单元,从而第一部署单元可被部署到第一个云。此外,根据部署计划,可以选择第二个云接收第二部署单元,第一部署单元可被部署到第二个云,诸如此类。
在本说明书中,相同的附图标记用于表示相同的项目。附图中的流程图和方框图图解说明按照本发明的各个实施例的系统、方法和计算机程序产品的各种可能实现的体系结构、功能和操作。在这方面,流程图或方框图中的每个方框可代表包含实现指定逻辑功能的一个或多个可执行指令的模块、程序段或一部分代码。另外应注意,在一些备选实现中,在方框中表示的功能可不按照附图中所示的顺序发生。例如,接连表示的两个方框事实上可以基本同时地执行,或者各个块有时可按照相反的顺序执行,取决于所涉及的功能。另外要注意,方框图和/或流程图中的每个方框,以及方框图和/或流程图中的各个方框的组合可用实现指定功能或动作的基于专用硬件的系统,或者专用硬件和计算机指令的组合来实现。
这里使用的术语只是用于说明具体的实施例,并不意图限制本发明。这里使用的单数形式“一”、“一个”、“该”意图还包括复数形式,除非上下文明确地另有所示。另外要明白当用在本说明书中时,术语“包括”、“包含”指定所陈述的特征、整数、步骤、操作、部件和/或组件的存在,不过并不排除一个或多个其它特征、整数、步骤、操作、部件、组件和/或它们的组合的存在或增加。
此外,这里使用的序数词(例如、第一、第二、第三、第四、第五等等)区分一个云、部署单元、上下文、审计等与另一个云、部署单元、上下文、审计等。从而,这里使用的序数词未必按序数列指示特定位置。例如,识别为“第二部署单元”的部署单元可在识别为“第一部署单元”的部署单元之前出现在在工作负荷中。此外,一个或多个部署单元可出现在第一部署单元和第二部署单元之间。
本说明书中对“一个实施例”,“实施例”或类似语言的引用意味关于该实施例说明的特定特征、结构或特性包含在本说明书内公开的至少一个实施例中。从而,出现在本说明书中各个地方的短语“在一个实施例中”,“在实施例中”和类似语言可以但未必都指的是相同实施例。
这里使用的用语“多个”被定义为两个或者不止两个。这里使用的用语“另一个”被定义为至少第二个或者更多个。这里使用的用语“耦接”被定义为连接,不论是无任何居间元件地直接连接,还是有一个或多个居间元件地间接连接,除非另有说明。两个元件还可通过通信通道、通路、网络或系统,机械地、电气地或者通信链接地耦接。这里使用的用语“和/或”指的是并且包含相关的列举项目中的一个或多个的所有可能组合。另外应明白,尽管这里可利用术语第一、第二等来描述各个元件,不过这些元件不应受这些术语限制,因为这些术语只是用于区分一个元件和另一个元件,除非另有说明,或者上下文另有所示。
取决于上下文,术语“如果…”可被解释成意味“当…时”或者“在…时候”或者“响应于确定…”或者“响应于检测到…”。类似地,取决于上下文,短语“如果确定…”或者“如果检测到[规定的条件或事件]”可被解释成意味“当确定…时”或者“响应于确定…”或者“当检测到[规定的条件或事件]时”或者“响应于检测到[规定的条件或事件]”。
以下权利要求中的所有装置或步骤加功能要素的对应结构、材料、动作和等同物意图包括与明确主张的其它要求保护的要素结合地实现功能的任何结构、材料或动作。在本说明书内公开的实施例的描述是出于举例说明的目的给出的,而不是穷尽的,也不意图局限于披露的形式。对本领域的普通技术人员来说,许多修改和变化是显而易见的,而不脱离本发明的实施例的范围和精神。选择和说明实施例是为了更好地解释本发明的原理和实际应用,和使本领域的其他普通技术人员能够理解本发明的关于具有适合于预期的特定应用的各种修改的各个实施例的各种安排。
Claims (19)
1.一种在多个云之间有选择地分配多个部署单元的方法,所述方法包括:
识别指示工作负荷的第一部署单元的第一功能要求或非功能要求的第一上下文,其中第一部署单元是工作负荷的第一资产,和识别指示工作负荷的第二部署单元的第二功能要求或非功能要求的第二上下文,其中第二部署单元是工作负荷的第二资产;
根据第一上下文,识别多个云中满足由第一上下文指示的第一功能要求或非功能要求的第一个云,和借助处理器把第一部署单元自动分配给第一个云;和
根据第二上下文,识别多个云中满足由第二上下文指示的第二功能要求或非功能要求的第二个云,其中第一个云不满足由第二上下文指示的第二功能要求或非功能要求,以及把第二部署单元自动分配给第二个云。
2.按照权利要求1所述的方法,还包括:
至少部分根据第一上下文和第二上下文,自动创建部署计划,所述部署计划识别第一部署单元被分配给至少第一个云和第二个云中的哪个云,以及第二部署单元被分配给至少第一个云和第二个云中的哪个云。
3.按照权利要求2所述的方法,还包括:
进行第一个云的第一审计,以确定第一个云是否满足由第一上下文指示的第一功能要求或非功能要求,以及第一个云是否满足由第二上下文指示的第二功能要求或非功能要求,其中,进行第一审计包括处理与第一个云相关联的第一位置模型;和
进行第二个云的第二审计,以确定第二个云是否满足由第一上下文指示的第一功能要求或非功能要求,以及第二个云是否满足由第二上下文指示的第二功能要求或非功能要求,其中,进行第二审计包括处理与第二个云相关联的第二位置模型;
其中自动创建部署计划还基于第一审计和第二审计的结果。
4.按照权利要求3所述的方法,其中:
把第一部署单元自动分配给第一个云包括根据部署计划选择第一个云;和
把第二部署单元自动分配给第二个云包括根据部署计划选择第二个云。
5.按照权利要求1所述的方法,其中,
识别指示工作负荷的第一部署单元的第一功能要求或非功能要求的第一上下文包含识别与第一部署单元相关联的、指示第一部署单元的第一功能要求的元数据,以及
识别指示工作负荷的第二部署单元的第二功能要求或非功能要求的第二上下文包含识别与第二部署单元相关联的、指示第二部署单元的第二功能要求的元数据。
6.按照权利要求5所述的方法,其中第一部署单元的第一功能要求和第二部署单元的第二功能要求分别是为了使第一部署单元和第二部署单元在云内运行而需要满足的要求。
7.按照权利要求1所述的方法,其中,
识别指示工作负荷的第一部署单元的第一功能要求或非功能要求的第一上下文包含识别与第一部署单元相关联的、指示第一部署单元的第一非功能要求的元数据,以及
识别指示工作负荷的第二部署单元的第二功能要求或非功能要求的第二上下文包含识别与第二部署单元相关联的、指示第二部署单元的第二非功能要求的元数据。
8.按照权利要求7所述的方法,其中第一部署单元的第一非功能要求和第二部署单元的第二非功能要求都是安全要求。
9.按照权利要求1所述的方法,还包括:
在相应的第一和第二部署单元已被分配给相应的第一个云和第二个云之后,确定第一个云是否继续满足由第一上下文指示的第一功能要求或非功能要求;
当第一个云不满足由第一上下文指示的第一功能要求或非功能要求时,根据第一上下文,识别满足由第一上下文指示的第一功能要求或非功能要求的至少一个其它云;和
把第一部署单元自动分配给所述其它云。
10.一种在多个云之间有选择地分配多个部署单元的方法,所述方法包括:
识别指示工作负荷的第一部署单元的第一功能要求或非功能要求的第一上下文,其中第一部署单元是工作负荷的第一资产,和识别指示工作负荷的第二部署单元的第二功能要求或非功能要求的第二上下文,其中第二部署单元是工作负荷的第二资产;
进行第一个云的第一审计,以确定第一个云是否满足由该第一上下文指示的第一功能要求或非功能要求,以及确定第一个云是否满足由第二上下文指示的第二功能要求或非功能要求;
进行第二个云的第二审计,以确定第二个云是否满足由该第一上下文指示的第一功能要求或非功能要求,以及确定第二个云是否满足由第二上下文指示的第二功能要求或非功能要求;
根据第一和第二审计,借助处理器自动创建部署计划,所述部署计划识别第一部署单元将被分配给至少第一个云和第二个云中的哪个云,和第二部署单元将被分配给至少第一个云和第二个云中的哪个云;和
根据部署计划,把第一部署单元自动分配给第一个云,以及把第二部署单元自动分配给第二个云。
11.一种在多个云之间有选择地分配多个部署单元的系统,包括:
配置成识别指示工作负荷的第一部署单元的第一功能要求或非功能要求的第一上下文和识别指示工作负荷的第二部署单元的第二功能要求或非功能要求的第二上下文的设备,其中第一部署单元是工作负荷的第一资产,第二部署单元是工作负荷的第二资产;
配置成根据第一上下文识别多个云中满足由第一上下文指示的第一功能要求或非功能要求的第一个云,并把第一部署单元自动分配给第一个云的设备;和
配置成根据第二上下文识别多个云中满足由第二上下文指示的第二功能要求或非功能要求的第二个云,其中第一个云不满足由第二上下文指示的第二功能要求或非功能要求,并把第二部署单元自动分配给第二个云的设备。
12.按照权利要求11所述的系统,还包括:
配置成至少部分根据第一上下文和第二上下文,自动创建部署计划的设备,所述部署计划识别第一部署单元被分配给至少第一个云和第二个云中的哪个云,和第二部署单元被分配给至少第一个云和第二个云中的哪个云。
13.按照权利要求12所述的系统,还包括:
配置成进行第一个云的第一审计,以确定第一个云是否满足由第一上下文指示的第一功能要求或非功能要求、以及第一个云是否满足由第二上下文指示的第二功能要求或非功能要求的设备,其中,进行第一审计包括处理与第一个云相关联的第一位置模型;和
配置成进行第二个云的第二审计,以确定第二个云是否满足由第一上下文指示的第一功能要求或非功能要求、以及第二个云是否满足由第二上下文指示的第二功能要求或非功能要求的设备,其中,进行第二审计包括处理与第二个云相关联的第二位置模型;
其中自动创建部署计划还以基于第一审计和第二审计的结果。
14.按照权利要求13所述的系统,其中
把第一部署单元自动分配给第一个云包括根据部署计划选择第一个云;和
把第二部署单元自动分配给第二个云包括根据部署计划选择第二个云。
15.按照权利要求11所述的系统,其中配置成识别指示工作负荷的第一部署单元的第一功能要求或非功能要求的第一上下文和识别指示工作负荷的第二部署单元的第二功能要求或非功能要求的第二上下文的设备还被配置成识别与第一部署单元相关联的、指示第一部署单元的第一功能要求的元数据,以及识别与第二部署单元相关联的、指示第二部署单元的第二功能要求的元数据。
16.按照权利要求15所述的系统,其中第一部署单元的第一功能要求和第二部署单元的第二功能要求分别是为了使第一部署单元和第二部署单元在云内运行而需要满足的要求。
17.按照权利要求11所述的系统,其中配置成识别指示工作负荷的第一部署单元的第一功能要求或非功能要求的第一上下文和识别指示工作负荷的第二部署单元的第二功能要求或非功能要求的第二上下文的设备还被配置成识别与第一部署单元相关联的、指示第一部署单元的第一非功能要求的元数据,以及识别与第二部署单元相关联的、指示第二部署单元的第二非功能要求的元数据。
18.按照权利要求17所述的系统,其中第一部署单元的第一非功能要求和第二部署单元的第二非功能要求都是安全要求。
19.按照权利要求11所述的系统,还包括:
配置成在相应的第一和第二部署单元已被分配给相应的第一和第二个云之后,确定第一个云是否继续满足由第一上下文指示的第一功能要求或非功能要求的设备;
配置成当第一个云不满足由第一上下文指示的第一功能要求或非功能要求时,根据第一上下文,识别满足由第一上下文指示的第一功能要求或非功能要求的至少一个其它云的设备;和
配置成把第一部署单元自动分配给所述其它云的设备。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/441,512 US9071613B2 (en) | 2012-04-06 | 2012-04-06 | Dynamic allocation of workload deployment units across a plurality of clouds |
US13/441,512 | 2012-04-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103365725A CN103365725A (zh) | 2013-10-23 |
CN103365725B true CN103365725B (zh) | 2017-04-26 |
Family
ID=49293214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310113260.5A Active CN103365725B (zh) | 2012-04-06 | 2013-04-03 | 在多个云之间动态分配工作负荷部署单元的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (3) | US9071613B2 (zh) |
CN (1) | CN103365725B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9086929B2 (en) | 2012-04-06 | 2015-07-21 | International Business Machines Corporation | Dynamic allocation of a workload across a plurality of clouds |
US9071613B2 (en) | 2012-04-06 | 2015-06-30 | International Business Machines Corporation | Dynamic allocation of workload deployment units across a plurality of clouds |
US9501303B1 (en) | 2013-09-04 | 2016-11-22 | Express Scripts, Inc. | Systems and methods for managing computing resources |
US9483811B2 (en) * | 2014-01-06 | 2016-11-01 | Microsoft Technology Licensing, Llc | Division of processing between systems based on external factors |
US9608876B2 (en) | 2014-01-06 | 2017-03-28 | Microsoft Technology Licensing, Llc | Dynamically adjusting brand and platform interface elements |
US9501808B2 (en) | 2014-01-06 | 2016-11-22 | Microsoft Technology Licensing, Llc | Division of processing between systems based on business constraints |
US10621505B2 (en) | 2014-04-17 | 2020-04-14 | Hypergrid, Inc. | Cloud computing scoring systems and methods |
US9727439B2 (en) | 2014-05-28 | 2017-08-08 | Vmware, Inc. | Tracking application deployment errors via cloud logs |
US9712604B2 (en) | 2014-05-30 | 2017-07-18 | Vmware, Inc. | Customized configuration of cloud-based applications prior to deployment |
US9146721B1 (en) | 2014-05-30 | 2015-09-29 | Vmware, Inc. | Installation of a software agent via an existing template agent |
EP3149603B1 (en) * | 2014-05-30 | 2020-12-30 | VMware, Inc. | Customized configuration of cloud-based applications prior to deployment |
US9652211B2 (en) | 2014-06-26 | 2017-05-16 | Vmware, Inc. | Policy management of deployment plans |
US10037202B2 (en) | 2014-06-03 | 2018-07-31 | Microsoft Technology Licensing, Llc | Techniques to isolating a portion of an online computing service |
US11228637B2 (en) | 2014-06-26 | 2022-01-18 | Vmware, Inc. | Cloud computing abstraction layer for integrating mobile platforms |
US9639691B2 (en) | 2014-06-26 | 2017-05-02 | Vmware, Inc. | Dynamic database and API-accessible credentials data store |
EP3021251A1 (en) | 2014-11-14 | 2016-05-18 | Hewlett-Packard Development Company, L.P. | Dynamically adjusting a model for a security operations center |
US10432707B2 (en) | 2016-03-02 | 2019-10-01 | International Business Machines Corporation | Optimization of integration flows in cloud environments |
US10152357B1 (en) | 2016-05-02 | 2018-12-11 | EMC IP Holding Company LLC | Monitoring application workloads scheduled on heterogeneous elements of information technology infrastructure |
US10042673B1 (en) * | 2016-05-02 | 2018-08-07 | EMC IP Holdings Company LLC | Enhanced application request based scheduling on heterogeneous elements of information technology infrastructure |
US10901798B2 (en) | 2018-09-17 | 2021-01-26 | International Business Machines Corporation | Dependency layer deployment optimization in a workload node cluster |
EP3671379B1 (de) * | 2018-12-19 | 2023-07-26 | Francotyp-Postalia GmbH | Authentisierungs-system und authentisierungs-verfahren zur durchführung eines arbeitsprozesses an einem objekt |
US10944816B2 (en) | 2019-06-20 | 2021-03-09 | International Business Machines Corporation | Application placing and scaling |
US11057491B1 (en) * | 2020-07-17 | 2021-07-06 | Snowflake Inc. | Remote execution using a global identity |
US11765039B2 (en) * | 2020-08-13 | 2023-09-19 | Grass Valley Canada | System and method for optimizing deployment of a processing function in a media production workflow |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102232282A (zh) * | 2010-10-29 | 2011-11-02 | 华为技术有限公司 | 一种实现数据中心资源负载均衡的方法及装置 |
Family Cites Families (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7574496B2 (en) * | 2001-11-30 | 2009-08-11 | Surgient, Inc. | Virtual server cloud interfacing |
US6990666B2 (en) * | 2002-03-18 | 2006-01-24 | Surgient Inc. | Near on-line server |
US6856991B1 (en) * | 2002-03-19 | 2005-02-15 | Cisco Technology, Inc. | Method and apparatus for routing data to a load balanced server using MPLS packet labels |
US7577722B1 (en) | 2002-04-05 | 2009-08-18 | Vmware, Inc. | Provisioning of computer systems using virtual machines |
US7406691B2 (en) | 2004-01-13 | 2008-07-29 | International Business Machines Corporation | Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment |
US7562143B2 (en) | 2004-01-13 | 2009-07-14 | International Business Machines Corporation | Managing escalating resource needs within a grid environment |
US7441241B2 (en) | 2004-05-20 | 2008-10-21 | International Business Machines Corporation | Grid non-deterministic job scheduling |
US7712100B2 (en) | 2004-09-14 | 2010-05-04 | International Business Machines Corporation | Determining a capacity of a grid environment to handle a required workload for a virtual grid job request |
US7668741B2 (en) | 2005-01-06 | 2010-02-23 | International Business Machines Corporation | Managing compliance with service level agreements in a grid environment |
US7590623B2 (en) | 2005-01-06 | 2009-09-15 | International Business Machines Corporation | Automated management of software images for efficient resource node building within a grid environment |
US7502850B2 (en) | 2005-01-06 | 2009-03-10 | International Business Machines Corporation | Verifying resource functionality before use by a grid job submitted to a grid environment |
US7571120B2 (en) | 2005-01-12 | 2009-08-04 | International Business Machines Corporation | Computer implemented method for estimating future grid job costs by classifying grid jobs and storing results of processing grid job microcosms |
US7472079B2 (en) | 2005-01-12 | 2008-12-30 | International Business Machines Corporation | Computer implemented method for automatically controlling selection of a grid provider for a grid job |
US20110016214A1 (en) * | 2009-07-15 | 2011-01-20 | Cluster Resources, Inc. | System and method of brokering cloud computing resources |
US9015324B2 (en) * | 2005-03-16 | 2015-04-21 | Adaptive Computing Enterprises, Inc. | System and method of brokering cloud computing resources |
US7814495B1 (en) | 2006-03-31 | 2010-10-12 | V Mware, Inc. | On-line replacement and changing of virtualization software |
US8019683B1 (en) | 2007-11-02 | 2011-09-13 | At&T Mobility Ii Llc | Intelligent charging for services |
US7917617B1 (en) | 2008-08-14 | 2011-03-29 | Netapp, Inc. | Mitigating rebaselining of a virtual machine (VM) |
US8069242B2 (en) * | 2008-11-14 | 2011-11-29 | Cisco Technology, Inc. | System, method, and software for integrating cloud computing systems |
WO2010099513A2 (en) * | 2009-02-27 | 2010-09-02 | Coach Wei | Adaptive network with automatic scaling |
US8433749B2 (en) * | 2009-04-15 | 2013-04-30 | Accenture Global Services Limited | Method and system for client-side scaling of web server farm architectures in a cloud data center |
US9501329B2 (en) * | 2009-05-08 | 2016-11-22 | Rackspace Us, Inc. | Methods and systems for cloud computing management |
US9104407B2 (en) * | 2009-05-28 | 2015-08-11 | Red Hat, Inc. | Flexible cloud management with power management support |
US20110016473A1 (en) | 2009-07-20 | 2011-01-20 | Srinivasan Kattiganehalli Y | Managing services for workloads in virtual computing environments |
US20110078303A1 (en) * | 2009-09-30 | 2011-03-31 | Alcatel-Lucent Usa Inc. | Dynamic load balancing and scaling of allocated cloud resources in an enterprise network |
US20110126197A1 (en) | 2009-11-25 | 2011-05-26 | Novell, Inc. | System and method for controlling cloud and virtualized data centers in an intelligent workload management system |
US20110126168A1 (en) | 2009-11-25 | 2011-05-26 | Crowdsource Technologies Ltd. | Cloud plarform for managing software as a service (saas) resources |
JP4939594B2 (ja) * | 2009-11-30 | 2012-05-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | プライマリクラウドが提供したサービスレベルの実績値又は更新されたプリファレンス情報に基づいて、サービスレベルアグリーメントを動的に決定してサービスを提供することができるクラウドシステムを構成する装置、方法及びコンピュータプログラム |
US9104438B2 (en) | 2009-12-03 | 2015-08-11 | International Business Machines Corporation | Mapping computer desktop objects to cloud services within a cloud computing environment |
US8924559B2 (en) | 2009-12-03 | 2014-12-30 | International Business Machines Corporation | Provisioning services using a cloud services catalog |
US9009294B2 (en) | 2009-12-11 | 2015-04-14 | International Business Machines Corporation | Dynamic provisioning of resources within a cloud computing environment |
US9389895B2 (en) | 2009-12-17 | 2016-07-12 | Microsoft Technology Licensing, Llc | Virtual storage target offload techniques |
US8458688B2 (en) | 2009-12-28 | 2013-06-04 | International Business Machines Corporation | Virtual machine maintenance with mapped snapshots |
US8984503B2 (en) | 2009-12-31 | 2015-03-17 | International Business Machines Corporation | Porting virtual images between platforms |
WO2011091056A1 (en) | 2010-01-19 | 2011-07-28 | Servicemesh, Inc. | System and method for a cloud computing abstraction layer |
US8806014B2 (en) * | 2010-03-19 | 2014-08-12 | Novell, Inc. | Techniques for intelligent service deployment |
US20110258317A1 (en) | 2010-04-19 | 2011-10-20 | Microsoft Corporation | Application sla based dynamic, elastic, and adaptive provisioning of network capacity |
US9207993B2 (en) * | 2010-05-13 | 2015-12-08 | Microsoft Technology Licensing, Llc | Dynamic application placement based on cost and availability of energy in datacenters |
US8880700B2 (en) * | 2010-05-28 | 2014-11-04 | Red Hat, Inc. | Delivery of user-controlled resources in cloud environments via a resource specification language wrapper |
US9442771B2 (en) | 2010-11-24 | 2016-09-13 | Red Hat, Inc. | Generating configurable subscription parameters |
US9563479B2 (en) * | 2010-11-30 | 2017-02-07 | Red Hat, Inc. | Brokering optimized resource supply costs in host cloud-based network using predictive workloads |
US8924562B2 (en) | 2011-06-16 | 2014-12-30 | Verizon Patent And Licensing Inc. | Dynamic policy generation and assignment |
US8849976B2 (en) * | 2011-09-26 | 2014-09-30 | Limelight Networks, Inc. | Dynamic route requests for multiple clouds |
US9003502B2 (en) | 2012-03-19 | 2015-04-07 | Empire Technology Development Llc | Hybrid multi-tenancy cloud platform |
US9071613B2 (en) | 2012-04-06 | 2015-06-30 | International Business Machines Corporation | Dynamic allocation of workload deployment units across a plurality of clouds |
US9086929B2 (en) | 2012-04-06 | 2015-07-21 | International Business Machines Corporation | Dynamic allocation of a workload across a plurality of clouds |
-
2012
- 2012-04-06 US US13/441,512 patent/US9071613B2/en not_active Expired - Fee Related
-
2013
- 2013-04-03 CN CN201310113260.5A patent/CN103365725B/zh active Active
-
2015
- 2015-05-07 US US14/706,556 patent/US10069761B2/en active Active
-
2018
- 2018-09-03 US US16/120,394 patent/US11431651B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102232282A (zh) * | 2010-10-29 | 2011-11-02 | 华为技术有限公司 | 一种实现数据中心资源负载均衡的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US11431651B2 (en) | 2022-08-30 |
US20180375796A1 (en) | 2018-12-27 |
CN103365725A (zh) | 2013-10-23 |
US20150244646A1 (en) | 2015-08-27 |
US9071613B2 (en) | 2015-06-30 |
US10069761B2 (en) | 2018-09-04 |
US20130268674A1 (en) | 2013-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103365725B (zh) | 在多个云之间动态分配工作负荷部署单元的方法和系统 | |
CN104205056B (zh) | 跨多个云的工作负荷的动态分配的方法和系统 | |
CN103729250B (zh) | 用于选择被配置为满足一组要求的数据节点的方法和系统 | |
CN103718164B (zh) | 虚拟计算机和服务 | |
CN103814358B (zh) | 服务器群内的虚拟机放置 | |
CN103368767B (zh) | 用于在容许故障的因特网云上部署软件应用的方法和系统 | |
CN103853596B (zh) | 用于在工作组之间迁移虚拟机的方法和系统 | |
CN105446793B (zh) | 迁移虚拟资产的方法和设备 | |
CN104067265B (zh) | 用于支持在云中的安全应用部署的系统和方法 | |
CN103299274B (zh) | 确定运行图像的最佳计算环境的系统和方法 | |
CN103946831B (zh) | 用于模板的成本感知的选择以供应共享资源的系统和方法 | |
CN103310132B (zh) | 网络化计算环境中的软件许可管理的方法和系统 | |
CN104424013A (zh) | 在计算环境中部署虚拟机的方法和设备 | |
CN105359088B (zh) | 使用动态生成的虚拟磁盘内容优化供应时间的方法 | |
CN104937544B (zh) | 用于计算任务结果的方法、计算机可读介质和计算机系统 | |
CN106020940A (zh) | 用于确定数据集的放置的存储层级的方法和系统 | |
CN103238138A (zh) | 用于云环境中的分区部署/重部署的网络接口 | |
CN103914511B (zh) | 选择用于云存储的图像或者视频文件 | |
CN107924293A (zh) | 写时拷贝重定向 | |
CN105684357A (zh) | 虚拟机中地址的管理 | |
CN104731658A (zh) | 供应和合并共享资源以最大化资源可用性的方法和系统 | |
CN105938525B (zh) | 虚拟机设备的基于目录的发现 | |
CN103294556B (zh) | 用于主机系统准入控制的方法和系统 | |
US11573946B2 (en) | Management of memory usage using usage analytics | |
CN109906597A (zh) | 向和从云网络中存储和取回受限制的数据集和非受限制的数据集 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |