CN105308572A - 用差异盘改进的虚拟机部署 - Google Patents
用差异盘改进的虚拟机部署 Download PDFInfo
- Publication number
- CN105308572A CN105308572A CN201480031302.3A CN201480031302A CN105308572A CN 105308572 A CN105308572 A CN 105308572A CN 201480031302 A CN201480031302 A CN 201480031302A CN 105308572 A CN105308572 A CN 105308572A
- Authority
- CN
- China
- Prior art keywords
- main frame
- virtual machine
- base plate
- dish
- father
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
- G06F3/0641—De-duplication techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
Abstract
公开了一种确定在其上布置虚拟机的主机的方法。该方法包括确定要部署到主机的虚拟机将使用基于一个或多个基础盘的差异盘链。标识一个或多个主机,该一个或多个主机具有已经对该一个或多个主机可用的一个或多个基础盘。基于具有已经对该一个或多个主机可用的一个或多个基础盘的该一个或多个主机,选择该一个或多个主机中在其处布置虚拟机的一个主机。将虚拟机布置在所选择的主机处。
Description
背景
背景和相关领域
计算机和计算系统已经影响了现代生活的几乎每个方面。计算机通常涉及工作、休闲、保健、交通、娱乐、家政管理等等。
此外,计算系统功能还可以通过计算系统经由网络连接互连到其他计算系统的能力来增强。网络连接可包括,但不仅限于,经由有线或无线以太网的连接,蜂窝式连接,或者甚至通过串行、并行、USB或其它连接的计算机到计算机的连接。这些连接允许计算系统访问其他计算系统上的服务,并快速且有效地从其他计算系统接收应用数据。
计算系统的互连已经促进分布式计算系统,例如所谓的“云”计算系统。本说明书中,“云计算”可以是用于允许对可配置的计算资源(如网络、服务器、存储、应用、以及服务)的共享池进行无处不在的、方便的、按需的网络访问的系统或资源,这些计算资源可用减少的管理努力或服务提供者交互来快速地被供应和发行。云模型可以包括各种特性(例如,按需自服务、广泛网络接入、资源池、快速弹性、测量服务等等)、服务模型(例如,软件即服务(“SaaS”)、平台即服务(“PaaS”)、基础设施即服务(“IaaS”)和部署模型(例如,私有云、社区云、公共云、混合云等等)。
虚拟机(VM)的分布式部署,尤其是在大规模环境中,可能消耗巨量存储和网络资源。
在此所要求保护的本主题不限于解决任何缺点的实施例或仅在诸如以上所描述的那些之类的环境中操作的实施例。相反,提供这一背景仅仅是为了解说了可以在其中实践在此描述的一些实施例的一个示例性技术领域。
简要概述
本文示出的一个实施例包括一种可以在虚拟化网络计算环境中实践的方法。该方法包括用于确定在其上布置虚拟机的主机的动作。该方法包括确定要部署到主机的虚拟机将使用基于一个或多个基础盘的差异盘链。标识一个或多个主机,该一个或多个组件具有已经对该一个或多个主机可用的一个或多个基础盘。基于具有已经对该一个或多个主机可用的一个或多个基础盘的该一个或多个主机,选择该一个或多个主机中的要在其处布置虚拟机的一个主机。将虚拟机布置在所选择的主机处。
在另一实施例中,可以在虚拟化网络计算环境中实践一种方法。该方法包括用于为虚拟机提供盘的动作。该方法包括,对于要部署到主机的虚拟机,确定主机已经具有对该主机可用的一个或多个基础盘,这些基础盘可以用作要向虚拟机提供的盘的一个或多个基础盘。结果,该方法还包括确定不将要向虚拟机提供的盘复制到主机。使用一个或多个基础盘来创建差异盘以便在主机处为虚拟机提供盘。
提供本概述,以便以简化形式介绍下面在详细描述中进一步描述的概念的选集。本概述不旨在标识所要求保护的本主题的关键特征或必要特征,也不旨在用来帮助确定所要求保护的本主题的范围。
在下面的描述中将陈述附加特征和优点,且从该描述中将部分地明显看出或可以通过实践本文的教导来知悉这些附加特征和优点。可以通过在所附权利要求中具体指出的装置和组合来实现和获得本发明的特征和优点。从下列描述和所附权利要求将更完全地明显看出本发明的特征,或者可以通过实践下文中陈述的本发明来知悉本发明的特征。
附图简述
为了描述可以获得上面叙述的以及其他的优点和特征的方式,将参考在附图中解说了的特定实施例呈现以上简要描述的本主题的更具体描述。应理解,这些附图仅叙述典型实施例,且因而不应认为是限制本公开的范围,通过使用附图,将以附加的具体性和细节描述和解释各实施例,附图中:
图1解说了虚拟化结构,其中父盘在向其部署虚拟机的主机上可用;
图2解说了虚拟化结构,其中父盘对向其部署虚拟机的一组主机可用;
图3解说了用于确定是否将基础盘复制到主机的逻辑流;
图4解说了用于确定在其上布置虚拟机的主机的方法;以及
图5解说了用于为虚拟机提供盘的方法。
详细描述
计算功能的虚拟化变得越来越广泛。在虚拟化场景中,物理硬件支持虚拟硬件。例如,物理主机可以通过将物理机器的物理资源分配给在物理主机上主控的虚拟机来主控多个不同的虚拟机。例如,图1解说了主机102,主机102主控一组虚拟机104。主机102包括诸如处理硬件、存储器、存储等等之类的物理硬件。主机102可以将主机的物理资源分配给基于软件的虚拟机。在一些实施例中,这可以通过使用管理程序106来完成,管理程序106协调资源分配并维持该组虚拟机104中的各虚拟机之间的隔离。
在虚拟化结构100内通常可能存在对在结构100内部署和/或移动虚拟机的某种需求。另外,虚拟机通常具有一些基本相似性,但是也包括一些专有特征。例如,一组不同的虚拟机中的每一虚拟机可安装有相同的操作系统、驱动程序和一些常见软件。然而,虚拟机可各自安装有将每一机器彼此区分开来的一些个性化软件。
虚拟机可以将差异盘用于存储。差异盘是用来通过将对虚拟硬盘或客操作系统的改变存储在单独文件中来隔离这些改变的虚拟硬盘。差异盘与在创建差异盘时所选择的另一虚拟硬盘相关联。这种虚拟硬盘被称为“父”盘且差异盘是“子”盘。父盘可以是任何类型的虚拟硬盘。差异盘存储如果不是正在使用差异盘则将以其他方式对父盘做出的所有改变。差异盘提供保存改变而不改变父盘的进行中(ongoing)方式。当向差异盘写入数据时,差异盘动态地扩展,且可以增长为如同在创建父盘时为父盘所分配的最大大小那样大。
图1解说了在主机102处的父盘108和差异盘集合110的示例。因而,父盘108包括数据的某种初始状态,且对数据的改变被存储在集合110中的各差异盘中的一个或多个中。然而,一旦从父盘108创建差异盘,不再对父盘108做出改变。否则可能出现数据不一致。例如,假设虚拟机104-1使用差异盘110-1且虚拟机104-2使用差异盘110-2。在所解说的示例中,虚拟机104-1对数据做出的任何改变将对差异盘110-1做出。如果直接对父盘108做出改变,这将改变虚拟机104-2的数据状态。
然而,应明白,可以使用差异盘链。例如,差异盘可以基于一组基础盘,基础盘包括父盘和基于父盘或另一差异盘的一个或多个差异盘。然而,一旦差异盘有基于它的另一差异盘,该盘上的数据应不再改变。
可以明白,通过使用差异盘方案,可为虚拟机部署基本数据集,然后为该虚拟机部署特定数据。这使得虚拟机的部署和迁移更加容易。
在此公开的一些实施例可以使用差异盘来降低虚拟机的网络传输带宽要求和存储要求两者。例如,通过将预先缓存和共享的基础盘用于差异盘链,各实施例可以改进跨各主机的网络话务。另外或备选地,各实施例可以通过将共享基础盘用于差异盘链来改进主机上的存储。作为补充或替换,在多承租人环境中,各实施例可以跨各承租人透明地共享公共资源(例如基础盘)。作为补充或替换,通过将预先部署的缓存资源(例如基础盘)的可用性用作布置度量,各实施例可以实现虚拟机布置优化。作为替换或补充,各实施例可以改进跨全虚拟机生命周期的支持,包括布置、迁移和存储。作为替换或补充,各实施例可以从中央位置(虚拟机管理软件库)投机性地提供近乎即时的虚拟机部署(副本部分)。
现在解说附加的细节。各实施例跟踪虚拟机盘的身份,且在部署请求发生时,尝试将这种资源匹配到目标上的现有资源。如果目标已经具有作为二进制匹配的现有资源实例,则使用目标本地上的现有资源而不是通过网络复制。如果资源不存在,则执行传统复制部署,且标记该资源以便在稍后部署中的经改进的使用。例如,正如图1所解说的,假设用户希望将虚拟机112-1部署到主机114。虚拟机112-1与集合104中的使用父盘108的虚拟机有一些相似性。在主机114处的是父盘116,它与父盘108二进制匹配。因而,不需要作为虚拟机112-1的部署的一部分而将父盘108传输给主机114。相反,创建新的差异盘122以供由虚拟机112-1使用,其中差异盘122基于父盘116。
然而,如果父盘116在主机114处不存在或者与父盘108不匹配,那么,可能已经将父盘108传输给主机114。但是,然后,该盘可以用来改进随后部署的虚拟机(如虚拟机112-2)的部署。在这种情况中,为随后部署的虚拟机创建新的差异盘。
图2中示出备选的示例。图2解说了全都共享父盘204的主机集合202。该系统可能希望部署包括基于父盘204的存储的虚拟机206。主机202-1连同主机集合202中的其他主机一起,拥有对父盘204的访问权。为了将虚拟机206部署到主机202-1,不需要将父盘204中的数据复制到主机202-1,这是由于主机202-1已经拥有对父盘204的访问权。然而,需要在主机202-1处为虚拟机206初始化新的差异盘。
因而,各实施例可以支持只读基础盘(例如父盘108和/或链接到父盘的任何盘)的共享,如图1中所解说的在单个主机上以及将在图2中解说的跨各主机(例如在共享服务器消息块(SMB)存储的情况中)。各实施例可以跟踪这些基础盘的身份和管理差异盘的创建而无需复制基础盘。
在多承租人环境中,各实施例可以支持在承租人之间透明地共享基础盘。从承租人的角度来看,它们用唯一副本工作;然而,底层实现将以安全的方式不可见地管理共享基础盘的‘复制’。
一些实现可以利用丰富算法来确定部署虚拟机的最佳位置。这得到目的地的经排名的集合,每一个目的地都带有表示给定目标主机或集群对于主控虚拟机的合适性的评级。这种算法可以解决利用差异盘的虚拟机的经改进的布置。例如,通过考虑主机是否拥有在主机上的或对主机可用的基础盘的现有副本,一些实施例可以实现用于虚拟机的部署的主机选择算法。
例如,图1解说了主机114包括父盘116。然而,主机118不包括父盘116或其副本。因而,如果做出关于是否部署(或迁移)包括基于父盘116的数据的虚拟机的确定,如果所有其他因素都相同,那么主机114将比主机118更优选。类似地,在图2中,主机集合202具有可用的父盘204,而主机集合208不可使用父盘204。因而,如果正在部署作为其部署的部分具有父盘204中的数据的新虚拟机,如果所有其他因素都相同,则集合202中的主机将比集合208中的主机更优选用于虚拟机的部署(或迁移)。
对部署和迁移的差异盘支持尤其对其中可以从基础盘的有限子集创建大量虚拟机的主机有用。对部署和迁移的差异盘支持可以改进供应性能以及降低存储需求。这可以各种方式来实现。下列的解说了如何实现这一点的附加细节。
各实施例可以支持利用差异盘的存储的经改进的迁移。具体而言,虚拟机管理服务器120或210(或其他虚拟机管理软件和/或硬件)将在可能时通过理解和利用源和目标存储中的重复父盘来尝试制止迁移父盘。例如,在图1中,如果父盘108是要被迁移以部署虚拟机112-1的盘且父盘116是父盘108的副本,则服务器120可以例如基于盘标识符标识这一事实,且不将父盘108迁移到主机114。
各实施例可以利用差异盘来改进部署时间。具体而言,类似于以上迁移示例,虚拟机管理服务器(例如服务器120或210)或其他管理软件和/或硬件将尝试标识和利用目标上的差异盘。
各实施例可以利用差异盘来改进虚拟机的克隆。具体而言,虚拟机管理服务器(例如服务器120或210)或其他管理软件和/或硬件将拥有在克隆操作期间创建(可能是临时地)和利用差异盘的选项。
如先前所提到的,各实施例可以改进布置逻辑以便利用差异盘。在评估主机以便布置时,虚拟机管理服务器(例如服务器120或210)或其他管理软件和/或硬件布置规则将考虑现有的已缓存父盘。
各实施例可以在虚拟盘的分发期间生成差异盘。具体而言,在部署期间,虚拟机管理服务器(例如服务器120或210)或其他管理软件和/或硬件可以可选地从基虚拟机生成差异盘。
所示方法以差异虚拟盘的智能使用为中心。差异盘允许从单个父盘(或父盘链)创建多个盘。仅存储在子盘和父盘之间的差异,从而降低了冗余。进一步,多个主机可以共享高速缓存实例。举例来说,主机1(Host1)和主机2(Host2)两者均可以具有SMB共享\\fs1\共享\vmmCache上的高速缓存。
现在参见图3,解说了一种逻辑流。正如在302所解说的,发起盘复制。正如在304所解说的,做出检查,以便确定是否启用差异盘功能。这可以通过由管理员设置标志或某种其他指示符以指示各实施例应利用差异盘优化来实现。如果差异盘功能未被启用,那么,正如在306所解说的,将该盘简单地复制到主机。然而,如果差异盘功能被启用,那么,正如在308所解说的,做出检查,以便查看源父盘的副本是否存在于目标主机父主机高速缓存上。如果盘的副本确实存在于主机上(或以其他方式对主机可用),那么,正如在310所解说的,在主机上从父盘创建新的差异盘。然而,如果盘的副本不存在于主机上(或不以其他方式对主机可用),正如在312所解说的,将其复制到高速缓存。一旦该盘处于主机高速缓存中,虚拟机管理服务器120或210(或其他虚拟机管理软件和/或硬件)就不会移除它。然而,可以提供移除未经使用的带外盘的指导。然后,正如在310所解说的,在主机上从父盘创建新的差异盘。从这一逻辑流可以看出,如果盘的两个实例被复制到主机,则虚拟机管理服务器120或210(或其他虚拟机管理软件和/或硬件)将仅需要传输该盘一次,从而在速度和存储方面的提供了极大的效率。
在创建虚拟机期间,可以在每个盘的级别上指定使用差异盘的选项。如果用户为该盘选择差异盘优化,则选择初始父路径的能力也是可用的。
在一些实施例中,如果发现现有的基础盘已经存在于主机上,则用于选择父盘路径的用户界面就不被启用,而是相反,现有的路径将被显示为只读。
对于具有用差异盘改进的盘的虚拟机,可以与子盘并排布置所迁移的父盘,或者将使用主机上现有的父盘。
下列讨论现在参考可以执行的多种方法和方法动作。尽管可以按某种次序讨论各方法动作,或者在流程图中将其解说为按特定次序发生,但除非具体指明,或因为一个动作依赖于在执行该动作之前完成的另一动作而需要,否则不要求特定的排序。
现在参见图4,解说了方法400。可以在虚拟化网络计算环境中实践方法400。方法400包括用于确定在其上布置虚拟机的主机的动作。方法400包括确定要部署到主机的虚拟机将使用基于一个或多个基础盘的差异盘链(动作402)。例如正如图1所解说的,在确定部署虚拟机112-1时,可以做出虚拟机将使用基于父盘116的差异盘的确定。另选地,如图2中所解说的,虚拟机206的部署可以基于使用父盘204的存储。
该方法还可以包括标识一个或多个主机,该一个或多个主机具有已经对该一个或多个主机可用的一个或多个基础盘(动作404)。例如,在图1中,当在主机118和114之间进行选择时,该系统可以确定主机114更加优选,这是它已经将父盘116的副本存储在父盘处。另选地,如图2中所解说的,主机集合202可以被标识为拥有对父盘204的访问权,这与不拥有对其可用的父盘的主机集合208形成对比。
方法400还包括基于具有已经对该一个或多个主机可用的一个或多个基础盘的该一个或多个主机选择该一个或多个主机中在其处布置虚拟机的一个主机(动作406)。因而,正如图1中所解说的,可以优选于主机118而选择主机114,且在图2中,可以优选于主机集合208中的任何主机而选择主机202-1。
方法400还包括将虚拟机布置在所选择的主机上(动作408)。因而,正如图1中所解说的,将虚拟机112-1布置在主机114处,而将虚拟机206布置在主机202-1处。
在一个或多个基础盘被存储在用于多个不同的主机的公共网络共享上的情况下可以实践方法400,以使得一个或多个基础盘可以在其他主机中用作基础盘。在图2中解说了这种示例,其中父盘204可供主机集合202中的所有主机使用。
在一个或多个基础盘被存储在已标识的主机上的情况下可以实践方法400。图1中解说了这一示例,其中基础盘116被存储在主机114上。
在多承租人环境中跨不同的承租人共享一个或多个基础盘的情况下可以实践方法400。在这样的实施例的一些示例中,可以通过防止承租人修改或删除一个或多个基础盘来执行在各承租人之间的隔离。
现在参见图5,解说了方法500。方法500可以在虚拟化网络计算环境中实践。方法500包括用于为虚拟机供应盘的动作。方法500包括,对于要部署到主机的虚拟机,确定主机已经拥有对其可用的一个或多个基础盘,这些一个或多个基础盘可以用作要为虚拟机而供应的盘的一个或多个基础盘(动作502)。例如,正如图1中所解说的,在将部署112-1部署到主机114时,可以作出父盘116已经被存储在主机114处的确定。在图2的示例中,在部署虚拟机206时,可以作出父盘204可由主机202-1访问的确定。
结果,方法500还包括确定不将要为虚拟机供应的盘复制到主机(动作504)并在主机处使用一个或多个基础盘来创建差异盘以便为虚拟机供应盘(动作506)。例如,正如图1中所解说的,在主机114上创建差异盘122,以供由虚拟机112-1使用。在图2中,在主机202-1上创建差异盘212,以供由虚拟机206使用。
而且,各方法可由计算机系统实现,计算机系统包括一个或多个处理器以及诸如计算机存储器这样的计算机可读介质。特别是,计算机存储器可以存储计算机可执行指令,该计算机可执行指令在由一个或多个处理器执行时使各种功能得以被执行,诸如各实施例中记载的动作。
本发明的各实施例可以包括或使用包括计算机硬件的专用或通用计算机,如以下更详细讨论的。本发明范围内的各实施例也包括用于实现或存储计算机可执行指令和/或数据结构的实体及其他计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种显著不同的计算机可读介质:物理计算机可读存储介质和传输计算机可读介质。
物理计算机可读存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储器(诸如CD、DVD等)、磁盘存储器或其他磁性存储设备、或者可用于存储计算机执行指令或数据结构形式的期望程序代码装置并且可被通用或专用计算机访问的任何其他介质。
“网络”被定义为使得电子数据能够在计算机系统和/或模块和/或其它电子设备之间传输的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输介质。传输介质可以包括可用于携带计算机可执行指令或数据结构形式的期望程序代码装置并可被通用或专用计算机访问的网络和/或数据链路。以上的组合也被包括在计算机可读介质的范围内。
此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码装置可从传输计算机可读介质自动转移到物理计算机可读存储介质(或者相反)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可被缓存在网络接口模块(例如,“NIC”)内的RAM中,并且然后最终被传输至计算机系统RAM和/或计算机系统处的较不易失性的计算机可读物理存储介质。因此,计算机可读物理存储介质可以被包括在同样(或甚至主要)利用传输介质的计算机系统组件中。
计算机可执行指令包括例如使通用计算机、专用计算机或专用处理设备执行某一功能或一组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求的示例形式而公开的。
本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机等等。本发明也可在其中通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两者都执行任务的分布式系统环境中实施。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备二者中。
替换地或另选地,此处描述的功能可以至少部分由一个或多个硬件逻辑组件来执行。例如、但非限制,可使用的硬件逻辑组件的说明性类型包括现场可编程门阵列(FPGA)、程序专用的集成电路(ASIC)、程序专用的标准产品(ASSP)、片上系统系统(SOC)、复杂可编程逻辑器件(CPLD)、等等。
本发明可以以其他具体形式来体现,而不背离其精神或特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变应被权利要求书的范围所涵盖。
Claims (7)
1.一种在虚拟化网络计算环境中确定在其上布置虚拟机的主机的方法,所述方法包括:
确定要部署到主机的虚拟机将使用基于一个或多个基础盘的差异盘链;
标识一个或多个主机,所述一个或多个主机具有已经对所述一个或多个主机可用的所述一个或多个基础盘;
基于具有已经对所述一个或多个主机可用的所述一个或多个基础盘的所述一个或多个主机,选择所述一个或多个主机中在其处布置所述虚拟机的一个主机;以及
将所述虚拟机布置在所选择的主机处。
2.如权利要求1所述的方法,其特征在于,将所述一个或多个基础盘存储在用于多个不同的主机的公共网络共享上,以使得所述一个或多个基础盘能在其他主机处用作基础盘。
3.如权利要求1所述的方法,其特征在于,将所述一个或多个基础盘存储在所标识的主机上。
4.如权利要求1所述的方法,其特征在于,在多承租人环境中跨不同的承租人共享所述一个或多个基础盘。
5.如权利要求4所述的方法,其特征在于,进一步包括通过防止承租人修改或删除所述一个或多个基础盘来在各承租人之间执行隔离。
6.如权利要求1所述的方法,其特征在于,标识具有已经对所述一个或多个主机可用的所述一个或多个基础盘的所述一个或多个主机包括标识作为二进制等效物的基础盘。
7.如权利要求1所述的方法,其特征在于,标识具有已经对所述一个或多个主机可用的所述一个或多个基础盘的一个或多个主机包括基于盘标识符标识基础盘。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361829710P | 2013-05-31 | 2013-05-31 | |
US61/829,710 | 2013-05-31 | ||
US13/919,895 | 2013-06-17 | ||
US13/919,895 US20140359213A1 (en) | 2013-05-31 | 2013-06-17 | Differencing disk improved deployment of virtual machines |
PCT/US2014/039655 WO2014193879A1 (en) | 2013-05-31 | 2014-05-28 | Improved deployment of virtual machines by means of differencing disks |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105308572A true CN105308572A (zh) | 2016-02-03 |
Family
ID=51986498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480031302.3A Pending CN105308572A (zh) | 2013-05-31 | 2014-05-28 | 用差异盘改进的虚拟机部署 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20140359213A1 (zh) |
EP (1) | EP3005113B1 (zh) |
CN (1) | CN105308572A (zh) |
ES (1) | ES2635028T3 (zh) |
WO (1) | WO2014193879A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201502A (zh) * | 2016-07-06 | 2016-12-07 | 中国银联股份有限公司 | 一种跨主机应用程序部署方法及装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9436489B2 (en) * | 2013-12-20 | 2016-09-06 | Red Hat Israel, Ltd. | Virtual machine data replication with shared resources |
US10652283B1 (en) * | 2017-12-06 | 2020-05-12 | Amazon Technologies, Inc. | Deriving system architecture from security group relationships |
US10430227B2 (en) | 2018-01-09 | 2019-10-01 | Microsoft Technology Licensing, Llc | Fast instantiation of virtual machines in distributed computing systems |
US10664323B2 (en) | 2018-03-07 | 2020-05-26 | Microsoft Technology Licensing, Llc | Live migration of virtual machines in distributed computing systems |
US10936370B2 (en) * | 2018-10-31 | 2021-03-02 | International Business Machines Corporation | Apparatus that generates optimal launch configurations |
US11442848B1 (en) * | 2020-06-18 | 2022-09-13 | Appceler8, LLC | System and method for automated patch compatibility of applications |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060155674A1 (en) * | 2005-01-07 | 2006-07-13 | Microsoft Corporation | Image server |
US20100257523A1 (en) * | 2009-04-06 | 2010-10-07 | Shahar Frank | Managing virtual machine images |
US20120005346A1 (en) * | 2010-06-30 | 2012-01-05 | International Business Machines Corporation | Hypervisor selection for hosting a virtual machine image |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7577722B1 (en) * | 2002-04-05 | 2009-08-18 | Vmware, Inc. | Provisioning of computer systems using virtual machines |
US8091084B1 (en) * | 2006-04-28 | 2012-01-03 | Parallels Holdings, Ltd. | Portable virtual machine |
US9189265B2 (en) * | 2006-12-21 | 2015-11-17 | Vmware, Inc. | Storage architecture for virtual machines |
US9262366B2 (en) * | 2007-09-21 | 2016-02-16 | Microsoft Technology Licensing, Llc | Software deployment in large-scale networked systems |
US8386610B2 (en) * | 2007-12-31 | 2013-02-26 | Netapp, Inc. | System and method for automatic storage load balancing in virtual server environments |
CA2713876C (en) * | 2008-02-26 | 2014-11-04 | Vmware, Inc. | Extending server-based desktop virtual machine architecture to client machines |
US8099571B1 (en) * | 2008-08-06 | 2012-01-17 | Netapp, Inc. | Logical block replication with deduplication |
US8176272B2 (en) * | 2008-09-04 | 2012-05-08 | International Business Machines Corporation | Incremental backup using snapshot delta views |
US8171201B1 (en) * | 2008-10-07 | 2012-05-01 | Vizioncore, Inc. | Systems and methods for improving virtual machine performance |
US8789043B2 (en) * | 2009-03-24 | 2014-07-22 | International Business Machines Corporation | Optimized placement planning for virtual machines in a network by breaking relocation graph into one or more cores to apply different solutions |
US8117613B2 (en) * | 2009-04-08 | 2012-02-14 | Microsoft Corporation | Optimized virtual machine migration mechanism |
US8650563B2 (en) * | 2010-02-26 | 2014-02-11 | Red Hat Israel, Ltd. | Identification and placement of new virtual machines to reduce memory consumption based on shared images with hosted virtual machines |
US8473588B2 (en) * | 2010-03-30 | 2013-06-25 | Lenovo (Singapore) Ptd. Ltd. | Local and remote client computer system booting |
US9928091B2 (en) * | 2010-09-30 | 2018-03-27 | Microsoft Technology Licensing, Llc | Techniques for streaming virtual machines from a server to a host |
US8751656B2 (en) * | 2010-10-20 | 2014-06-10 | Microsoft Corporation | Machine manager for deploying and managing machines |
US9075661B2 (en) * | 2010-10-20 | 2015-07-07 | Microsoft Technology Licensing, Llc | Placing objects on hosts using hard and soft constraints |
US8516495B2 (en) * | 2010-12-09 | 2013-08-20 | International Business Machines Corporation | Domain management and integration in a virtualized computing environment |
US20120191929A1 (en) * | 2011-01-21 | 2012-07-26 | Hitachi, Ltd. | Method and apparatus of rapidly deploying virtual machine pooling volume |
US8856486B2 (en) * | 2011-02-23 | 2014-10-07 | Citrix Systems, Inc. | Deploying a copy of a disk image from source storage to target storage |
US9195488B2 (en) * | 2011-11-21 | 2015-11-24 | International Business Machines Corporation | Image deployment in a cloud environment |
-
2013
- 2013-06-17 US US13/919,895 patent/US20140359213A1/en not_active Abandoned
-
2014
- 2014-05-28 EP EP14736086.1A patent/EP3005113B1/en not_active Not-in-force
- 2014-05-28 WO PCT/US2014/039655 patent/WO2014193879A1/en active Application Filing
- 2014-05-28 ES ES14736086.1T patent/ES2635028T3/es active Active
- 2014-05-28 CN CN201480031302.3A patent/CN105308572A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060155674A1 (en) * | 2005-01-07 | 2006-07-13 | Microsoft Corporation | Image server |
US20100257523A1 (en) * | 2009-04-06 | 2010-10-07 | Shahar Frank | Managing virtual machine images |
US20120005346A1 (en) * | 2010-06-30 | 2012-01-05 | International Business Machines Corporation | Hypervisor selection for hosting a virtual machine image |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201502A (zh) * | 2016-07-06 | 2016-12-07 | 中国银联股份有限公司 | 一种跨主机应用程序部署方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20140359213A1 (en) | 2014-12-04 |
EP3005113A1 (en) | 2016-04-13 |
WO2014193879A1 (en) | 2014-12-04 |
ES2635028T3 (es) | 2017-10-02 |
EP3005113B1 (en) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105308572A (zh) | 用差异盘改进的虚拟机部署 | |
US10289325B1 (en) | Managing multiple tenants in NAS (network attached storage) clusters | |
EP3069263B1 (en) | Session idle optimization for streaming server | |
CN112099918A (zh) | 容器化环境中的集群的实时迁移 | |
CN102597958A (zh) | 虚拟机的对称实时迁移 | |
US20160232031A1 (en) | Seamless extension of local computing power | |
US8930501B2 (en) | Distributed data storage system and method | |
CN103503414A (zh) | 一种计算存储融合的集群系统 | |
US10936356B2 (en) | Virtual machine management | |
CN103765817A (zh) | 从源服务器向目标服务器复制数据对象 | |
CN101952814A (zh) | 用于在虚拟环境中实施虚拟存储池的方法和系统 | |
CN106528327A (zh) | 一种数据处理方法以及备份服务器 | |
CN103124299A (zh) | 一种异构环境下的分布式块级别存储系统 | |
CN107423301B (zh) | 一种数据处理的方法、相关设备及存储系统 | |
CN101799743A (zh) | 用于逻辑卷管理的方法和装置 | |
JPWO2016162916A1 (ja) | 管理計算機およびリソース管理方法 | |
US20130227113A1 (en) | Managing virtualized networks based on node relationships | |
CN107562519A (zh) | 虚拟机的迁移方法、系统及服务器 | |
CN109254873B (zh) | 数据备份方法、相关装置及系统 | |
US11467778B2 (en) | Creating high availability storage volumes for software containers | |
JP5439435B2 (ja) | 計算機システムおよびその計算機システムにおけるディスク共有方法 | |
CN104951238A (zh) | 用于在分布式虚拟环境中管理数据存储的方法和装置 | |
Wu et al. | Migrating a digital library to a private cloud | |
CN112398668B (zh) | 一种基于IaaS集群的云平台和节点的切换方法 | |
CN108038168A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160203 |