CN103226489A - 用于在计算环境中创建虚拟单元的方法和系统 - Google Patents

用于在计算环境中创建虚拟单元的方法和系统 Download PDF

Info

Publication number
CN103226489A
CN103226489A CN2013100353117A CN201310035311A CN103226489A CN 103226489 A CN103226489 A CN 103226489A CN 2013100353117 A CN2013100353117 A CN 2013100353117A CN 201310035311 A CN201310035311 A CN 201310035311A CN 103226489 A CN103226489 A CN 103226489A
Authority
CN
China
Prior art keywords
dummy unit
virtual
virtual system
dummy
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013100353117A
Other languages
English (en)
Other versions
CN103226489B (zh
Inventor
D·J·阿罗约
C·卡斯蒂洛
J·E·汉森
W·赛格穆勒
M·J·斯普莱泽尔
M·斯坦德
A·N·坦塔维
I·N·瓦雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103226489A publication Critical patent/CN103226489A/zh
Application granted granted Critical
Publication of CN103226489B publication Critical patent/CN103226489B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

提供了一种用于在计算环境中创建虚拟单元的技术。由处理器接收虚拟系统定义,其被用于为虚拟系统创建虚拟单元。虚拟系统中的虚拟单元之间的关系约束由处理器接收。虚拟单元之间的关系约束包括虚拟单元之间的通信链路要求和/或虚拟单元之间的位置要求。虚拟系统中的虚拟单元被处理器根据虚拟单元之间的关系约束而部署。

Description

用于在计算环境中创建虚拟单元的方法和系统
技术领域
示例性实施例涉及虚拟单元,更具体地,涉及云计算环境中虚拟单元之间的关系。
背景技术
公共设施(utility)/云计算将计算和存储资源作为类似于电网的“随需公共设施”传递到应用。公共设施计算模型由散步在局域网或广域网的计算和存储资源的分布式集合使能,即,联网的公共设施。例子包括在计算网格上运行的科学工作流和在数据中心操作的多层web服务(例如,电子商务网站)。公共设施设置为应用提供了若干益处:降低的基础设施和管理成本、更高的资源利用率以及随需分配资源以支持动态变化的需求的能力,这也导致了资本支出成本的降低。
虚拟机(VM)技术为联网的公共设施的高效管理提供了强大的机制。在VM的十年发展后,鲁棒而高效的VM系统可广泛获得,且正迅速变得到处存在。领先的VM系统支持实时迁移(live migration)、检查点/重启、以及服务器资源的以度量和计量的量的细粒度分配。这些能力为公共设施资源管理创造了丰富的决策空间,诸如智能基础设施应如何“转动旋钮”以将工作负载和资源请求映射到服务器网络上。
VM的智能供应对于满足系统性能目标(诸如满足应用服务水平协议(SLA))、优化应用执行时间以及最大化总体资源使用是必须的。但是,供应VM以满足这样的目的被认为是复杂的,因为应用行为由如下若干因素的相互作用决定:资源:被分配给应用的VM的数量,以及绑定(bound)到每个VM的底层资源(例如CPU、存储器、存储设备以及网络资源)的属性。数据:应用处理的数据的特点,诸如输入数据尺寸及其在存储服务器上的布局和分区。工作负载:在应用看来的工作负载的特点,例如请求到达率以及每个请求的服务需求。
发明内容
根据示例性实施例,提供了一种在计算环境中创建虚拟单元的方法。处理器接收虚拟系统定义,其被用于为虚拟系统创建虚拟单元,并接收虚拟系统中的虚拟单元之间的关系约束。虚拟单元之间的关系约束包括虚拟单元之间的通信链路要求和/或虚拟单元之间的位置要求。处理器根据虚拟单元之间的关系约束部署虚拟系统中的虚拟单元。
根据示例性实施例,提供了一种用于在计算环境中创建虚拟单元的系统。系统包括用于存储程序的存储器。系统包括功能地耦合到存储器并响应于程序中包含的计算机可执行指令的处理器。处理器接收虚拟系统定义,其被用于为虚拟系统创建虚拟单元,并接收虚拟系统中的虚拟单元之间的关系约束。虚拟单元之间的关系约束包括虚拟单元之间的通信链路要求和/或虚拟单元之间的位置要求。处理器根据虚拟单元之间的关系约束在虚拟系统中部署虚拟单元。
根据示例性实施例,提供了一种用于在计算环境中创建虚拟单元的计算机程序产品。所述计算机程序产品包括其上实施有计算机可读程序代码的计算机可读存储介质。计算机可读程序代码包括由处理器接收虚拟系统定义,其被用于用于为虚拟系统创建虚拟单元,并由处理器接收虚拟系统中的虚拟单元之间的关系约束。虚拟单元之间的关系约束包括虚拟单元之间的通信链路要求和/或虚拟单元之间的位置要求。计算机可读程序代码包括由处理器根据虚拟单元之间的关系约束在虚拟系统中部署虚拟单元。
根据示例性实施例,提供了一种用于在计算环境中创建虚拟单元的方法。处理器接收虚拟系统定义,其被用于用于为虚拟系统创建至少一个虚拟单元。所述处理器接收所述一个(或多个)虚拟单元与另一个虚拟系统的另一个虚拟单元和计算环境的组件中的至少一个之间的关系约束。处理器根据关系约束在虚拟系统中部署所述一个(或多个)虚拟单元。
通过本公开的技术实现额外的特征。根据其他实施例的其他的系统、方法、装置和/或计算机程序产品在此被详细描述,并被认为是所要求保护的发明的一部分。为了更好地理解示例性实施例和特点,参考描述和附图。
附图说明
在本发明结尾的权利要求中特别指出并清楚地要求保护被认为是本发明的主题。
本公开的前述和其他特点从以下结合附图的详细说明变得明显,在附图中:
图1示出了根据示例性实施例的云计算节点的例子的示意图。
图2示出了根据示例性实施例的云计算环境。
图3示出了根据示例性实施例的由云计算环境提供的一组功能性抽象层。
图4示出了根据示例性实施例的逻辑云架构的分层例子。
图5示出了根据示例性实施例的可操作地连接在虚拟系统中的虚拟单元的例子。
图6是根据示例性实施例的在逻辑云架构中的高级IaaS层的展开图的框图。
图7示出了根据示例性实施例的用于在云计算环境的虚拟系统中创建和部署虚拟单元的方法。
图8是根据示例性实施例的用于延伸到虚拟系统外的关系的关系约束的框图。
具体实施方式
示例性实施例被配置为(1)设计集成的虚拟基础设施系统,其从虚拟单元及其关系形成;(2)提供一种用于可被云用户获得的这样的虚拟系统的操作和管理(例如,通过应用编程接口(API))的方法;以及(3)提供一种用于将这样的集成虚拟基础设施系统显示在物理基础设施上的方法。
在云计算中,云提供者使得虚拟单元可被云用户获得以部署并运行其应用。这样的虚拟单元包括虚拟机、虚拟存储(存储器)、虚拟映像和虚拟网络。这些虚拟单元通过诸如物理服务器、存储服务器、通信链路和路由器等实际的物理资源单元上的虚拟化层被提供。通过到该虚拟化层的接口,云用户请求虚拟单元并将其连接以创建基础设施,在该基础设施中用户可运行其应用。可由云平台服务提供者提供特定的应用方案作为服务。云用户可能面对的问题是云用户获取单独的虚拟单元,而不能指定关于云用户正请求的虚拟单元的集合的要求。这样的要求的例子是虚拟机之间的通信带宽、对于虚拟机的可用性需求以及当虚拟单元集合被部署在物理基础设施中时,对于虚拟单元集合的特定拓扑要求。
在云用户身上放置了创建从单个虚拟单元建立的虚拟基础设施的负担。当前技术水平的现有方法是由某些云提供者做出一些可被云用户获得的预建立的虚拟基础设施,其承诺快速部署。这样的预建立的虚拟基础设施可能不满足用户要求。示例性实施例提供了无缝方案,其中关于虚拟基础设施的要求,诸如资源需求、单元间通信需求、位置关系以及高可用性,都自动地转换为集成虚拟基础设施。
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其它类型的计算环境来实现。关于云计算的进一步的信息可从Peter Mell和Tim Grace等人于2009年10月7日发表的“Draft NIST Working Definition of Cloud Computing”中发现,其全文通过引用结合于此。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型,如下所述。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理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总线、视频电子标准协会(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可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。计算节点10可包括可操作地相连以在云计算机环境50中发挥作用和操作的多个计算系统/服务器12。
现在参考图3,其中显示了云计算环境50(图2)提供的一组功能抽象层。首先应当理解,图3所示的组件、层以及功能都仅仅是示意性的,本发明的实施例不限于此。如图3所示,提供下列层和对应功能:
硬件和软件层60包括硬件和软件组件。硬件组件的例子包括:主机,例如系统;基于RISC(精简指令集计算机)体系结构的服务器,例如
Figure BDA00002792301500092
系统;
Figure BDA00002792301500093
系统;
Figure BDA00002792301500094
系统;存储设备;网络和网络组件。软件组件的例子包括:网络应用服务器软件,例如
Figure BDA00002792301500096
应用服务器软件;数据库软件,例如数据库软件。(IBM,zSeries,pSeries,xSeries,BladeCenter,WebSphere以及DB2是国际商业机器公司在全世界各地的注册商标)。
虚拟层62提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器、虚拟存储、虚拟网络(包括虚拟私有网络)、虚拟操作系统,以及虚拟客户端。
在一个示例中,管理层64可以提供下述功能:资源供应功能:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。管理层64还包括基于预测的服务分配模块。
工作负载层66提供云计算环境可能实现的功能的示例。在该层中,可提供的工作负载或功能的示例包括:地图绘制与导航;软件开发及生命周期管理;虚拟教室的教学提供;数据分析处理;以及交易处理。而且,其他类型的工作负载也可包括网络服务工作负载、诸如开账单和客户关系管理的企业应用、各种银行业务和财务应用等。
软件应用70包括一个或多个算法以实施示例性实施例。软件应用70可代表被配置为通过例如分布式计算网络而一起工作的一个或多个软件应用。软件应用70可耦合到和/或驻留在计算机系统/服务器12的存储器28中。软件应用70可包括程序/实用工具40的一个或多个程序模块42。而且,软件应用70可以是管理层64的一部分,且可运行在硬件和软件层60中的硬件上。而且,软件应用70被配置为实施一个或多个应用编程接口(API)。
图4示出了根据示例性实施例的逻辑云架构400的层级例子(其可被实施在云计算环境50中)。逻辑云架构400可包括软件即服务(SaaS)、平台即服务(PaaS)、基础设施即服务(IaaS)以及硬件(物理资源),如以上所讨论的。额外地,逻辑云架构400包括高级IaaS,其可被软件应用70实施。作为一个可选项,软件应用70也可包括和/或集成在标准IaaS的功能中。软件应用70被配置为根据虚拟单元间要求的关系约束(例如,以下图6中讨论的关系约束625)为云用户(在虚拟系统中)部署(即,建立)虚拟单元。而且,软件应用70被配置为提供图形用户界面(例如,诸如图6的图形用户界面620)和/或与其交互,在该图形用户界面中云用户可指定虚拟系统的虚拟单元并可指定虚拟系统中的每个虚拟单元间的关系约束。关系约束是规定两个或更多个虚拟单元间的(虚拟和/或物理)关系的策略。
图5示出了根据示例性实施例的虚拟系统500中的虚拟单元的例子。虚拟系统500可已被云用户指定且属于云用户(例如,经由图形用户界面620)。虚拟系统500可被供应并/或运行在在此讨论的(云计算环境50中的)硬件和软件层60的任何硬件和软件组件(物理资源)上,诸如计算机系统/服务器12上。
虚拟系统500可包括一组相关的虚拟单元。虚拟单元可以是虚拟机(VM)、虚拟映像、虚拟网络和虚拟存储卷。在图5中,虚拟单元包括虚拟机505a-d(统称为505),每个有其自己的虚拟映像510a-d(统称为510)。虚拟映像可以是运行在虚拟机上的操作系统、软件应用等。每个虚拟机505a-d可以通过各自的虚拟通信网络链路520a-d(统称为520)操作地连接到其虚拟存储器515a-d(统称为515)。虚拟机505a-d可以通过虚拟通信网络链路525a-d(统称为525)操作地连接。虚拟系统500可来自于中间件模式(pattern)的元数据。
现在参考图5和图6。图6是根据示例性实施例的逻辑云架构400中的(软件应用70的)高级IaaS层的展开图的框图600。高级IaaS层可包括标准IaaS层的功能。尽管为了简明没有在图6中示出,应用管理(SaaS)层、中间件管理(PaaS)层以及硬件管理层是框图600中的功能的一部分,如本领域技术人员所理解的。首先,计算机602上的云用户可在图形用户界面620中和/或对云计算环境50的管理者指定对于虚拟系统500的要求,以及关系约束625。软件应用70可经由中间件管理层提供、集成到图形用户界面620和/或与图形用户界面620通信,以接收对于虚拟系统500的规定。中间件管理(例如在计算机系统/服务器12上运行的一个或多个软件应用)可被配置为基于用户的规定/要求为云用户的虚拟系统500确定并创建模式定义。软件应用70利用用户的规定/要求来创建并部署虚拟机505、虚拟映像510、虚拟存储器515、虚拟通信网络链路520以及虚拟通信网络链路525。
当实施高级IaaS时,软件应用70可包括虚拟管理系统模块604、虚拟系统布置(placement)模块606、虚拟系统编制(orchestration)模块608以及虚拟系统监视模块610。而且,高级IaaS可包括状态和配置数据库612,其中软件应用70与其通信。
虚拟系统管理模块604了解对于云用户所需要的虚拟系统500的结构,并在状态和配置数据库612中维护该结构。虚拟系统布置模块606根据虚拟单元之间的关系约束625将虚拟系统500的虚拟单元505、510、515、520和525映射到云计算环境50中的(物理)硬件和软件资源。虚拟系统编制模块608与底层交互以在计算环境中的(物理)硬件和软件资源中创建、修改并销毁虚拟单元。虚拟系统编制模块608将虚拟单元的配置存储在状态和配置数据库612中。
返回参考图5,软件应用70被配置为从计算机602(如本领域技术人员所理解的,其可包括计算机系统/服务器12的特征)上的用户接收用于创建虚拟系统500的规定(即,需求),且软件应用70被配置为创建并部署虚拟系统500。基于由用户指定的需求,每个虚拟机505可包括其自己的计算机处理单元能力(例如,诸如处理速度)、随机存取存储器(RAM)大小、输入/输出(I/O)大小等。虚拟映像510可以是基于用户的规定分别运行在虚拟机505上的操作系统、软件应用、计算机进程等。
与云计算环境中的当前技术水平的现有系统不同,计算机602上的用户可指定每个虚拟机505和其虚拟存储器515之间的要求(即,关系约束625)。例如,在VM505和虚拟存储器515a之间,用户可指定且软件应用70创建具有特定带宽(和/或比特率)(例如,诸如1吉比特/秒)的虚拟通信网络链路502a。类似地,软件应用70被配置为提供并满足对于操作地连接VM505b-d及其各自的虚拟存储器515b-d的虚拟通信链路520b-520b的指定带宽(比特率)要求。
此外,用户可指定且软件应用70创建虚拟通信网络链路525a,其具有VM505a和VM505b之间的例如诸如1兆位/秒的特定带宽(和/或比特率),及/或具有用于在VM505a和VM505b之间传输X量(例如100)的包的不多于5毫秒的延迟。同样,软件应用70被配置为基于由计算机602上的用户经由图形用户界面620指定的关系约束625,提供并满足任意两个由其虚拟通信网络链路525a-d操作地连接的VM505a-d之间的指定带宽(比特率)和延迟要求。
而且,计算机602上的用户可指定每个虚拟机505和另一个虚拟机505之间的要求(即,关系约束625)。在这种情况下,在任意虚拟机505之间,用户可指定反搭配(anti-collocation)和/或搭配(collocation)约束,以及通信网络链路520和525的带宽和延迟约束。例如,计算机602上的用户可指定VM505b和VM505c将在虚拟系统500中是反搭配的(例如,在不同区域)。一旦接收到VM505b和VM505c之间的这种关系约束625,软件应用70被配置为在虚拟系统500内与VM505c分开和不同的区域布置/部署VM505b。云计算环境50中的区域可以是诸如云计算环境50中的(在不同位置的)服务器和存储设备的硬件设备的机架和/或机架组。软件应用70被配置为将VM505b布置/部署在(建筑物中的)云计算环境50的一面上的一个区域(例如机架和/或机架组),以及将VM505c布置/部署在云计算环境50的另一面上(例如,建筑物的另一边)的不同的区域(例如,另一个机架和/或机架组)。此外,云计算环境50中的区域可以是不同的地理位置,诸如彼此分离的不同的容纳了硬件和软件设备的建筑(诸如数据中心、服务器场等)、不同的城市、不同的州和不同的国家等。因此,软件应用70被配置为基于从用户接收到VM505b和VM505c之间的反搭配关系约束625,将VM505b布置/部署在云计算环境50中的地理位置的一个区域(例如,一个数据中心、城市和/或州),并将VM505c布置/部署在云计算环境50中的另一个地理位置(例如,不容的数据中心、城市和/或州)的另一个区域中。软件应用70被配置为基于由计算机602上的用户指定的任何虚拟机505之间的反搭配和/或搭配关系约束625,为每个VM505a-d确定合适的区域以部署每个VM。此外,云用户可指定用于特定虚拟机505的高可用性约束,且软件应用70接收并被配置为将用于指定虚拟机505的高可用性约束转换为虚拟机之间的反搭配关系约束。这样,为了满足VM505b和VM505c之间的高可用性关系约束,软件应用70自动地将这两个虚拟机505b和505c部署在云计算环境50中的不同区域(这可确保在一个区域变得不可操作的的情况下,它们的可用性)。
作为另一个例子,计算机602上的用户可指定VM505a和VM505d将在虚拟系统500中被搭配(例如,在相同的区域(或可能是邻近区域))。软件应用70被配置为一旦接收到VM505a和VM505d之间的这种关系约束625,将VM505a布置/部署在虚拟系统500中与VM505d相同的区域。在一种情况下,软件应用70被配置为将VM505a和VM505d布置/部署在云计算环境50中的相同区域(例如,相同的机架和/或机架组),其可以是云计算环境50中的建筑物的相同面。此外,软件应用70被配置为基于接收到VM505a和VM505d之间的搭配关系约束625,将VM505a和VM505d布置/部署在相同的区域中,该相同的区域可以是云计算环境50中的相同地理位置(例如,相同的数据中心、城市和/或州)。
而且,计算机602的用户可包括许可约束/要求625,当建造虚拟系统500时,该许可约束/要求可由软件应用70考虑并满足。许可要求可使得软件应用70将虚拟映像510a和510b分别布置在两个分开的虚拟机505a和505b上。此外,软件应用70可将许可要求转换为反搭配要求,这样虚拟机510a和510b被部署在分开的区域中(如以上讨论的)。
尽管在此用虚拟机505提供了例子,可由软件应用70对于虚拟单元的任意组合施加关系约束625。例如,关系约束625可被施加在两个或更多个虚拟映像之间、施加在虚拟映像和虚拟存储器之间、施加在虚拟机和虚拟存储器之间、以及施加在(两个或更多个虚拟单元的任意组合中的)任意虚拟单元之间。
而且,关于虚拟系统中一对虚拟单元之间的关系(通信)约束,已提到两种例子,即带宽(或容量)和延迟(延时)。更一般地说,可以有其他的包含性的通信网络性能度量,诸如例如与延迟和/或链路容量的概率分布有关的度量;这些度量也可被定义为关系约束。在一种情况中,延迟和带宽可以指这样的概率分布的平均。定义了延迟和容量的百分点和/或延迟和容量的标准偏差的度量,诸如涉及抖动的,将从概率分布度量得出;这些度量也可用来定义关系约束。尽管提供了关系约束的例子以便于理解,本公开并不限于此。
除了满足用于硬件和软件的资源要求以实例化虚拟系统500中的虚拟单元505、510、515和525外,软件应用70被配置为同时满足部署在云计算环境50中的虚拟系统500内的每个虚拟单元之间的多个关系约束/要求625。
用于输入规定和关系约束的图形用户界面620可单独由软件应用70和/或通过与额外的层(诸如应用管理层(SaaS)和中间件管理(PaaS)层)合作而被提供给计算机602。
例如在计算机系统/服务器12上的软件应用70可表示一个或多个API,其与由计算机602上的用户使用的图形用户界面620交互或提供计算机602上的用户使用的图形用户界面620。软件应用70是允许云用户创建虚拟系统定义的机制(这可以通过图形用户界面620),该虚拟系统定义被用作用于虚拟系统500的模式。例如,软件应用70被配置为允许由计算机602上的用户请求的以下各项(其被软件应用转换和实施到虚拟系统500中):
(1)创建虚拟系统定义。例如,用户可提供用于虚拟系统500中的虚拟单元的规定和关系约束625。
(2)修改虚拟系统定义,这包括添加、移除和/或修改虚拟单元和管理虚拟单元之间的关系(即,关系约束625)的策略。云用户也可修改、添加和/或移除一个或多个关系约束625,而不影响其他的关系约束625。
(3)销毁虚拟系统定义:例如,用户可将虚拟系统500从云计算环境50移除。
(4)结合和分割虚拟系统定义。为了由软件应用70执行,用户可合并多个虚拟系统定义(诸如合并用于构建虚拟系统500的虚拟系统定义和另一个虚拟系统定义)并/或通过例如将虚拟系统500分为更小的互连的多个虚拟系统创建多个子虚拟系统。而且,用户可在虚拟系统500中的虚拟单元之间创建客户端服务关系(例如,虚拟机之间的客户端-服务器关系)和对等关系。
软件应用70根据云用户的请求(其包括关系约束625)(结合IaaS层的标准功能),在虚拟系统500中部署虚拟单元505、510、515、520和525(的实例)。计算机系统/服务器12上的软件应用70(例如经由一个或多个API)可与图形用户界620交互和/或提供图形用户界面620,这样计算机602上的云用户可管理虚拟系统500(的实例)。例如,软件应用70被配置为管理已被建立的虚拟系统500,并允许计算机602上的用户请求以下各项(其被软件应用70转换并实施):
(1)部署虚拟系统实例:软件应用70(结合IaaS层的标准功能)获得虚拟系统500的虚拟系统定义并在虚拟资源上(例如,在硬件和软件层60的硬件和软件组件上)实例化虚拟系统500的虚拟单元。软件应用70通过标准发布机制使得虚拟系统定义可被云用户获得(公开地或私有地)。
(2)修改虚拟系统实例。软件应用70(例如通过云用户的请求)可通过添加、移除和/或修改虚拟单元和管理虚拟单元之间的关系的策略来改变虚拟系统500。
(3)销毁虚拟系统定义。
(4)结合和/或分割虚拟系统实例。软件应用70可将虚拟系统500结合到另一个虚拟系统(如虚拟系统500)。而且,软件应用70可将虚拟系统500分割为更小的虚拟系统。
参考图6,(软件应用70的)虚拟系统监视器610被配置为提供运行时布置调整以确保满足虚拟单元之间的关系约束。虚拟系统监视器610监视数据,这样软件应用70(以及/或计算机系统/服务器12上的管理员)可对虚拟系统500做出改变以适应工作负载的变化。
管理层64(以及/或软件应用70)可为了云计算环境50中的性能管理而被配置,以便通过使用迁移防止物理机器(硬件)以及网络中的热点。管理层64(例如,一个或多个软件应用70)可从一个或多个计算机系统/服务器12将虚拟单元迁移(和推荐迁移)到其他计算机系统/服务器12以改善虚拟单元的性能,和/或连续地满足关系约束625。而且,管理层64可为了云计算环境50中的功率管理而被配置。管理层64可使用云计算环境50中的硬件的过去经历来确定开启机器(诸如计算系统/服务器12中的一个)的成本。管理层64可被配置为接通或断开硬件的电源以缓解发热。
图7示出了根据示例性实施例的诸如计算机系统/服务器12的计算机上的软件应用70的一种方法,其用于在云计算环境50中创建并部署虚拟单元。
计算机系统/服务器12上的软件应用70被配置为在块705接收虚拟系统定义,其被用于为诸如虚拟系统500的虚拟系统创建虚拟单元。而且,软件应用70被配置为在块710接收虚拟系统500中的虚拟单元之间(诸如在各种组合中的虚拟单元505a-d、510a-d、515a-d、520a-d和525a-d之间)的关系约束625。虚拟单元之间的关系约束625可包括虚拟单元的通信链路要求和/或虚拟单元之间的位置要求。在块715,软件应用70被配置为根据由计算机602上的云用户指定的虚拟单元之间的关系约束625将虚拟单元部署在虚拟系统500中。
而且,根据虚拟单元之间的通信链路要求将虚拟单元部署在虚拟系统中可包括软件应用70满足虚拟单元之间的通信带宽要求和/或满足虚拟单元之间的延迟要求。满足虚拟单元之间的通信带宽要求和虚拟单元之间的延迟要求仅在云计算环境50中适用。即,(关系约束625的)通信带宽要求在虚拟系统500(其本身)中且不适用于例如用户的计算机602和计算系统/服务器12上的软件应用70之间的外部通信链路。而且,通信带宽要求可不适用于计算机602和其到计算环境50的通信链路之间。
根据虚拟单元之间的位置要求将虚拟单元部署在虚拟系统中可包括软件应用70满足两个或更多个虚拟单元之间的搭配要求和/或满足两个或更多个虚拟单元之间的反搭配要求。搭配要求可使得两个或更多个虚拟单元被实例化在同一区域中,且反搭配要求使得两个或更多个虚拟单元被实例化在分开的区域中。软件应用70被配置为提供机制以使用户指定被用于创建虚拟单元的虚拟系统定义,且该机制使用户指定虚拟系统中的虚拟单元之间的每个关系约束625。软件应用70被配置为将虚拟系统中的虚拟单元从一个或多个机器(例如计算机系统/服务器12)迁移(移动)到云计算环境50中的另一个机器(例如,不同的计算机系统/服务器12)以满足性能要求。
尽管在此描述了相同的虚拟系统中的虚拟单元之间(例如,虚拟系统500中的虚拟单元之间)的关系约束,提供这些例子是为了解释的目的且本公开不限于此。可以存在与虚拟系统500之外的虚拟单元的更一般的关系约束。
虚拟系统500之外的这些虚拟单元可以是例如(1)已被部署的虚拟单元(独立和/或其他虚拟系统的一部分)和/或(2)可在云计算环境50中访问的非虚拟单元(诸如由云提供者定义并直接可被云用户访问的组件和/或服务),其中部署也满足关系约束。在图8中提供了例子。图8是框图800,示出了具有以上讨论的各个虚拟单元的虚拟系统500、另一个虚拟系统805(其可具有与以上讨论的虚拟系统500类似的虚拟单元),以及由云计算环境50的云提供者提供的组件/服务810。组件/服务810可包括云计算环境50中的各种硬件组件,诸如服务器、存储设备、处理器等。而且,组件/服务810可包括由云提供者(云管理员)提供的各种服务,诸如查找服务等。关系约束815位于虚拟系统500中的任何一个或多个虚拟单元505-525和另外的虚拟系统805中的任何虚拟单元807之间。关系约束820位于任何一个或多个虚拟单元505-525和组件/服务810之间。关系约束815和820可包括在此讨论的任何类型的关系约束(例如,关系约束625)。尽管出于简明而未示出,各种虚拟(和物理的)通信链路可连接虚拟系统500、其他的虚拟系统805和组件/服务810,如本领域技术人员所理解并在此讨论的。
所属技术领域的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means)的制造品(manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
此处使用的术语仅是为了描述特定实施例,且不旨在限制本发明。如在此使用的,单数形式“一”、“一个”和“该”也旨在包括多数形式,除非上下文另有清楚的规定。还将理解,术语“包括”和/或“包含”,当在本说明中使用时,明确说明存在所陈述的特点、整体、步骤、操作、元件和/或组件,但不排除一个或多个其他的特点、整体、步骤、操作、元件、组件和/或其组的存在或添加。
以下权利要求中的所有装置或步骤加功能元件的相应的结构、材料、操作和等价物,旨在包括用于结合在权利要求中特意阐明的其他元件而执行该功能的任何结构、材料或操作。本发明的说明已出于解释和描述的目的被给示,但不旨在将本发明限制在公开的形式。许多修改和变化对于本领域普通技术人员来说是明显的,且不脱离本发明的精神和范围。选择并描述实施例是为了最好地解释本发明的原理和实际应用,且使得本领域普通技术人员能理解本发明的具有适用于所打算的特定用途的各种修改的各种实施例。
在此示出的流程图仅仅是一个例子。可对该图或在此描述的步骤(或操作)进行许多修改而不脱离本发明的精神。例如,这些步骤可以不同的顺序被执行,或可以添加、删除或修改步骤。所有这些变化都被认为是要求保护的本发明的一部分。
尽管已经描述了本发明的示例性实施例,将理解本领域技术技术人员可以现在和将来做出落在权利要求书的范围内的各种改善和改进。这些权利要求应被理解为保持对所描述的本发明的保护范围。

Claims (14)

1.一种用于在计算环境中创建虚拟单元的方法,包括:
由处理器接收虚拟系统定义,其被用于为虚拟系统创建虚拟单元;
由处理器接收所述虚拟系统中的虚拟单元之间的关系约束;
其中所述虚拟单元之间的关系约束包括所述虚拟单元之间的通信链路要求和所述虚拟单元之间的位置要求中的至少一个;以及
根据所述虚拟单元之间的关系约束由处理器在所述虚拟系统中部署所述虚拟单元。
2.如权利要求1所述的方法,还包括根据所述虚拟单元之间的通信链路要求在所述虚拟系统中部署所述虚拟单元,其包括所述处理器至少满足虚拟单元之间的通信带宽要求和满足虚拟单元之间的延迟要求中的一个。
3.如权利要求2所述的方法,其中满足虚拟单元之间的通信链路要求和虚拟单元之间的延迟要求仅适用于计算环境内部。
4.如权利要求1所述的方法,还包括根据虚拟单元之间的位置要求在虚拟系统中部署所述虚拟单元,所述虚拟单元包括处理器,其至少满足两个或更多个虚拟单元之间的搭配要求和满足两个或更多个虚拟单元之间的反搭配要求中的一个。
5.如权利要求4所述的方法,其中所述搭配要求使得两个或更多个虚拟单元在同一区域被例示;以及
其中所述反搭配要求使得两个或更多个虚拟单元在单独区域被例示。
6.如权利要求1所述的方法,还包括由处理器向用户提供机制用于指定用于创建虚拟单元的虚拟系统定义;以及
由处理器向用户提供机制用于指定虚拟系统中的虚拟单元之间的关系约束的每一个。
7.如权利要求1所述的方法,还包括将虚拟系统中的虚拟单元从计算环境的一个机器迁移到另一个机器以满足性能要求。
8.一种创建计算环境中虚拟单元的系统,包括:
存储器,被配置为存储程序;以及处理器,功能性地耦合到所述存储器,所述存储器响应于包含在所述程序中的计算机可执行指令并可操作以:
由处理器接收虚拟系统定义,其被用于为虚拟系统创建虚拟单元;
由处理器接收所述虚拟系统中的虚拟单元之间的关系约束;
其中所述虚拟单元之间的关系约束包括所述虚拟单元之间的通信链路要求和所述虚拟单元之间的位置要求中的一个;以及
根据所述虚拟单元之间的关系约束由处理器部署所述虚拟系统中的虚拟单元。
9.如权利要求8所述的系统,还包括根据所述虚拟单元之间的通信链路要求部署所述虚拟系统中的虚拟单元,其包括所述处理器至少满足虚拟单元之间的通信带宽要求和满足虚拟单元之间的延迟要求中的一个。
10.如权利要求9所述的系统,其中满足虚拟单元之间的通信链路要求和虚拟单元之间的延迟要求仅适用于计算环境内部。
11.如权利要求8所述的系统,还包括根据虚拟单元之间的位置要求在虚拟系统中部署所述虚拟单元,所述虚拟单元包括处理器,其至少满足两个或更多个虚拟单元之间的搭配要求和满足两个或更多个虚拟单元之间的反搭配要求中的一个。
12.如权利要求11所述的系统,其中所述搭配要求使得两个或更多个虚拟单元在同一区域被例示;以及
其中所述反搭配要求使得两个或更多个虚拟单元在单独区域被例示。
13.如权利要求8所述的系统,还包括由处理器向用户提供机制用于指定用于创建虚拟单元的虚拟系统定义;以及
由处理器向用户提供机制用于指定虚拟系统中的虚拟单元之间的关系约束的每一个。
14.如权利要求8所述的系统,还包括将虚拟系统中的虚拟单元从计算环境的一个机器迁移到另一个机器以满足性能要求。
CN201310035311.7A 2012-01-30 2013-01-29 用于在计算环境中创建虚拟单元的方法和系统 Expired - Fee Related CN103226489B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/361,170 2012-01-30
US13/361,170 US9038065B2 (en) 2012-01-30 2012-01-30 Integrated virtual infrastructure system

Publications (2)

Publication Number Publication Date
CN103226489A true CN103226489A (zh) 2013-07-31
CN103226489B CN103226489B (zh) 2016-12-28

Family

ID=48836951

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310035311.7A Expired - Fee Related CN103226489B (zh) 2012-01-30 2013-01-29 用于在计算环境中创建虚拟单元的方法和系统

Country Status (2)

Country Link
US (1) US9038065B2 (zh)
CN (1) CN103226489B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104219127A (zh) * 2014-08-30 2014-12-17 华为技术有限公司 一种虚拟网络实例的创建方法以及设备
CN104519096A (zh) * 2013-09-29 2015-04-15 国际商业机器公司 用于在云计算系统中部署服务的方法和系统
WO2015067144A1 (zh) * 2013-11-08 2015-05-14 华为技术有限公司 软件部署的方法和装置
WO2015127851A1 (en) * 2014-02-27 2015-09-03 Huawei Technologies Co., Ltd. System and method for creating service chains and virtual networks in the cloud
CN106445631A (zh) * 2016-08-26 2017-02-22 华为技术有限公司 一种布署虚拟机的方法、系统以及物理服务器
CN107548549A (zh) * 2015-04-27 2018-01-05 微软技术许可有限责任公司 分布式计算环境中的资源平衡
CN111522788A (zh) * 2019-02-01 2020-08-11 伊姆西Ip控股有限责任公司 处理访问请求和更新存储系统的方法、设备和程序产品
CN113535329A (zh) * 2021-07-23 2021-10-22 中国科学技术大学苏州高等研究院 一种多租户云中虚拟机的部署方法和装置
CN113985819A (zh) * 2020-07-09 2022-01-28 Abb瑞士股份有限公司 模块化装置的配置
CN115756861A (zh) * 2022-11-28 2023-03-07 北京百度网讯科技有限公司 分布式服务处理方法、装置、电子设备和存储介质

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140201017A1 (en) * 2008-06-19 2014-07-17 Servicemesh, Inc. Systems and methods for providing repeated use of computing resources
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
US9098345B2 (en) * 2012-02-01 2015-08-04 Softlayer Technologies, Inc. System and method for portable and flexible deployment of servers
US8335851B1 (en) * 2012-03-12 2012-12-18 Ringcentral, Inc. Network resource deployment for cloud-based services
US9860146B2 (en) * 2012-06-27 2018-01-02 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for estimating available capacity of a data transfer path
US9122873B2 (en) 2012-09-14 2015-09-01 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
US9069782B2 (en) 2012-10-01 2015-06-30 The Research Foundation For The State University Of New York System and method for security and privacy aware virtual machine checkpointing
US9021479B2 (en) * 2012-10-10 2015-04-28 International Business Machines Corporation Enforcing machine deployment zoning rules in an automatic provisioning environment
US9038086B2 (en) * 2012-11-15 2015-05-19 Bank Of America Corporation End to end modular information technology system
US9378064B2 (en) 2012-11-15 2016-06-28 Bank Of America Corporation Orchestration management of information technology
US9038068B2 (en) 2012-11-15 2015-05-19 Bank Of America Corporation Capacity reclamation and resource adjustment
US8978032B2 (en) 2012-11-15 2015-03-10 Bank Of America Corporation Host naming application programming interface
EP2775399A4 (en) 2012-12-26 2015-04-29 Huawei Tech Co Ltd METHOD FOR MANAGING VIRTUAL MACHINE SYSTEM RESOURCES, VIRTUAL MACHINE SYSTEM, AND APPARATUS
US9407676B2 (en) * 2013-11-25 2016-08-02 At&T Intellectual Property I, Lp Method and apparatus for distributing media content
US9936001B2 (en) * 2014-02-14 2018-04-03 Red Hat, Inc. Geographic placement of application components by a multi-tenant platform-as-a-service (PaaS) system
CN109101318B (zh) 2014-03-12 2022-04-05 华为技术有限公司 一种虚拟机迁移控制方法及装置
US10176005B2 (en) * 2014-03-31 2019-01-08 Cypherpath, Inc. Environment virtualization
KR20150137530A (ko) * 2014-05-30 2015-12-09 삼성에스디에스 주식회사 멀티 클라우드 배포 관리 시스템 및 방법
US10922666B1 (en) * 2014-06-23 2021-02-16 Amazon Technologies, Inc. Resource management for logical and physical availability zones of a provider network
US10230591B2 (en) * 2014-09-30 2019-03-12 Microsoft Technology Licensing, Llc Network resource governance in multi-tenant datacenters
GB2533098B (en) * 2014-12-09 2016-12-14 Ibm Automated management of confidential data in cloud environments
CN104679608A (zh) * 2015-02-09 2015-06-03 广州杰赛科技股份有限公司 一种基础设施虚拟化平台构建方法及其镜像管理结构
US10505862B1 (en) * 2015-02-18 2019-12-10 Amazon Technologies, Inc. Optimizing for infrastructure diversity constraints in resource placement
US11336519B1 (en) * 2015-03-10 2022-05-17 Amazon Technologies, Inc. Evaluating placement configurations for distributed resource placement
US10084648B2 (en) * 2015-03-12 2018-09-25 International Business Machines Corporation Creating new cloud resource instruction set architecture
US9888098B2 (en) 2015-06-15 2018-02-06 International Business Machines Corporation Orchestrating resources in a multilayer computing environment by sending an orchestration message between layers
US10200387B2 (en) * 2015-11-30 2019-02-05 International Business Machines Corporation User state tracking and anomaly detection in software-as-a-service environments
US10154091B1 (en) * 2015-12-28 2018-12-11 Amazon Technologies, Inc. Deploying infrastructure units according to resource hosting constraints
US10341371B2 (en) 2016-08-31 2019-07-02 Nicira, Inc. Identifying and handling threats to data compute nodes in public cloud
US10367757B2 (en) 2016-08-27 2019-07-30 Nicira, Inc. Extension of network control system into public cloud
US10699214B2 (en) * 2016-10-26 2020-06-30 International Business Machines Corporation Automatic identification and deployment of virtual sensor models
US10536340B1 (en) * 2016-11-22 2020-01-14 Amazon Technologies, Inc. Spread placement groups
WO2018095416A1 (zh) * 2016-11-24 2018-05-31 腾讯科技(深圳)有限公司 信息处理方法、装置及系统
JP2018173920A (ja) * 2017-03-31 2018-11-08 富士通株式会社 制御プログラム、制御方法および制御装置
US10805172B2 (en) * 2017-04-14 2020-10-13 At&T Intellectual Property I, L.P. Closed-loop deployment of virtual functions and cloud infrastructure
US10567482B2 (en) 2017-08-24 2020-02-18 Nicira, Inc. Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table
CN114584465A (zh) 2017-08-27 2022-06-03 Nicira股份有限公司 在公共云中执行在线服务
US10862753B2 (en) 2017-12-04 2020-12-08 Nicira, Inc. High availability for stateful services in public cloud logical networks
US10601705B2 (en) 2017-12-04 2020-03-24 Nicira, Inc. Failover of centralized routers in public cloud logical networks
US11343229B2 (en) 2018-06-28 2022-05-24 Vmware, Inc. Managed forwarding element detecting invalid packet addresses
US10491466B1 (en) * 2018-08-24 2019-11-26 Vmware, Inc. Intelligent use of peering in public cloud
US11196591B2 (en) 2018-08-24 2021-12-07 Vmware, Inc. Centralized overlay gateway in public cloud
US11374794B2 (en) 2018-08-24 2022-06-28 Vmware, Inc. Transitive routing in public cloud
TWI780372B (zh) * 2019-10-30 2022-10-11 緯創資通股份有限公司 設備佈建系統及其方法
US20220083888A1 (en) * 2020-09-11 2022-03-17 International Business Machines Corporation Mapping conditional execution logic to quantum computing resources
US11567887B2 (en) 2020-09-11 2023-01-31 International Business Machines Corporation Quantum controller fast path interface

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090070771A1 (en) * 2007-08-31 2009-03-12 Tom Silangan Yuyitung Method and system for evaluating virtualized environments
CN102045385A (zh) * 2010-10-21 2011-05-04 李斌 一种实现个人云计算系统及设备
CN102185928A (zh) * 2011-06-01 2011-09-14 广州杰赛科技股份有限公司 一种在云计算系统创建虚拟机的方法及云计算系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8886788B2 (en) * 2009-08-31 2014-11-11 Accenture Global Services Limited Enterprise-level management, control and information aspects of cloud console
US9098320B2 (en) * 2009-12-23 2015-08-04 Savvis Inc. Systems and methods for automatic provisioning of a user designed virtual private data center in a multi-tenant system
US20120054624A1 (en) * 2010-08-27 2012-03-01 Owens Jr Kenneth Robert Systems and methods for a multi-tenant system providing virtual data centers in a cloud configuration

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090070771A1 (en) * 2007-08-31 2009-03-12 Tom Silangan Yuyitung Method and system for evaluating virtualized environments
CN102045385A (zh) * 2010-10-21 2011-05-04 李斌 一种实现个人云计算系统及设备
CN102185928A (zh) * 2011-06-01 2011-09-14 广州杰赛科技股份有限公司 一种在云计算系统创建虚拟机的方法及云计算系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BENSON 等: "CloudNaaS: A Cloud Networking Platform for Enterprise Applications", 《PROCESSDING OF THE 2ND ACM SYMPOSIUM ON CLOUD COMPUTING》, 31 October 2011 (2011-10-31) *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104519096B (zh) * 2013-09-29 2018-02-06 国际商业机器公司 用于在云计算系统中部署服务的方法和系统
CN104519096A (zh) * 2013-09-29 2015-04-15 国际商业机器公司 用于在云计算系统中部署服务的方法和系统
WO2015067144A1 (zh) * 2013-11-08 2015-05-14 华为技术有限公司 软件部署的方法和装置
CN105960784A (zh) * 2014-02-27 2016-09-21 华为技术有限公司 用于在云中创建业务链和虚拟网络的系统和方法
RU2638733C1 (ru) * 2014-02-27 2017-12-15 Хуавей Текнолоджиз Ко., Лтд. Система и способ создания сервисных цепочек и виртуальных сетей в облаке
WO2015127851A1 (en) * 2014-02-27 2015-09-03 Huawei Technologies Co., Ltd. System and method for creating service chains and virtual networks in the cloud
CN104219127A (zh) * 2014-08-30 2014-12-17 华为技术有限公司 一种虚拟网络实例的创建方法以及设备
CN104219127B (zh) * 2014-08-30 2018-06-26 华为技术有限公司 一种虚拟网络实例的创建方法以及设备
US10623481B2 (en) 2015-04-27 2020-04-14 Microsoft Technology Licensing, Llc Balancing resources in distributed computing environments
CN107548549A (zh) * 2015-04-27 2018-01-05 微软技术许可有限责任公司 分布式计算环境中的资源平衡
CN106445631B (zh) * 2016-08-26 2020-02-14 华为技术有限公司 一种布署虚拟机的方法、系统以及物理服务器
CN106445631A (zh) * 2016-08-26 2017-02-22 华为技术有限公司 一种布署虚拟机的方法、系统以及物理服务器
CN111522788A (zh) * 2019-02-01 2020-08-11 伊姆西Ip控股有限责任公司 处理访问请求和更新存储系统的方法、设备和程序产品
US11681475B2 (en) 2019-02-01 2023-06-20 EMC IP Holding Company LLC Methods, devices, and a computer program product for processing an access request and updating a storage system
CN111522788B (zh) * 2019-02-01 2024-02-06 伊姆西Ip控股有限责任公司 处理访问请求和更新存储系统的方法、设备
CN113985819A (zh) * 2020-07-09 2022-01-28 Abb瑞士股份有限公司 模块化装置的配置
CN113535329A (zh) * 2021-07-23 2021-10-22 中国科学技术大学苏州高等研究院 一种多租户云中虚拟机的部署方法和装置
CN113535329B (zh) * 2021-07-23 2023-07-18 中国科学技术大学苏州高等研究院 一种多租户云中虚拟机的部署方法和装置
CN115756861A (zh) * 2022-11-28 2023-03-07 北京百度网讯科技有限公司 分布式服务处理方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
US9038065B2 (en) 2015-05-19
CN103226489B (zh) 2016-12-28
US20130198740A1 (en) 2013-08-01

Similar Documents

Publication Publication Date Title
CN103226489A (zh) 用于在计算环境中创建虚拟单元的方法和系统
CN105978704B (zh) 用于创建新的云资源指令集体系结构的系统和方法
CN103718164B (zh) 虚拟计算机和服务
JP6732798B2 (ja) コンピュートクラスタ内のリソースインスタンスグループの自動スケーリング
CN103365725B (zh) 在多个云之间动态分配工作负荷部署单元的方法和系统
CN103368767B (zh) 用于在容许故障的因特网云上部署软件应用的方法和系统
CN104052789B (zh) 用于虚拟联网系统的负载平衡的方法和系统
CN104205056B (zh) 跨多个云的工作负荷的动态分配的方法和系统
CN104603762B (zh) 利用并行文件访问协议的自动校准以及元数据管理支持对文件系统的共享存储的协调访问的方法及系统
US8914469B2 (en) Negotiating agreements within a cloud computing environment
CN103238138A (zh) 用于云环境中的分区部署/重部署的网络接口
CN104424013A (zh) 在计算环境中部署虚拟机的方法和设备
US20150178052A1 (en) Automated experimentation platform
CN107085524A (zh) 用于云环境中的保证的日志管理的方法和装置
CN104731658A (zh) 供应和合并共享资源以最大化资源可用性的方法和系统
CN103297496A (zh) 用于云计算系统的增强存储配额管理的方法和系统
CN102929685A (zh) 自动化基础架构供应
CN103299274A (zh) 确定运行图像的最佳计算环境
CN103970607A (zh) 使用等价集合来计算优化虚拟机分配的方法和装置
CN104580349A (zh) 安全云管理代理
CN102882947A (zh) 自动化的桌面服务供应
US11411921B2 (en) Enabling access across private networks for a managed blockchain service
CN103814358A (zh) 服务器群内的虚拟机放置
CN104253831A (zh) 一种用于在云计算环境中部署应用的方法和系统
CN102917018A (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161228

Termination date: 20210129