CN105493043A - 用于虚拟机转换的系统和方法 - Google Patents
用于虚拟机转换的系统和方法 Download PDFInfo
- Publication number
- CN105493043A CN105493043A CN201480045910.XA CN201480045910A CN105493043A CN 105493043 A CN105493043 A CN 105493043A CN 201480045910 A CN201480045910 A CN 201480045910A CN 105493043 A CN105493043 A CN 105493043A
- Authority
- CN
- China
- Prior art keywords
- file
- data element
- source
- destination
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/185—Hierarchical storage management [HSM] systems, e.g. file migration or policies thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/188—Virtual file systems
-
- 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
-
- 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
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Abstract
用于虚拟机文件的转换而无需将虚拟机载荷(数据)从一个位置复制到另一个位置的系统和方法。通过消除这一复制步骤,申请人的发明显著地提高了转换过程的效率。在一种实施例中,文件系统或存储系统提供对存储在持久性存储介质上的数据元素的位置的间接寻址。源虚拟机文件包括以一种管理程序文件格式的管理程序元数据(HM)数据元素以及虚拟机载荷(VMP)数据元素。源虚拟机文件通过以下来转换,即,变换源文件的HM数据元素以创建与源管理程序格式不同的目的地管理程序格式的目的地HM数据元素;在从源到目的地文件格式的转换期间维护存储在持久性存储介质上的VMP数据元素的位置恒定,而无需读或写VMP数据元素;及创建间接寻址来引用以目的地管理程序格式的目的地HM数据元素以及现有存储的VMP数据元素。
Description
技术领域
本发明涉及将虚拟机文件从一种管理程序格式变换为不同的管理程序格式,并且更具体而言,涉及允许在不需要载荷数据的迁移的情况下进行这种转换。
背景技术
管理程序(hypervisor)使用各种基于文件的结构来存储用于(但不限于)配置、存储器内容和虚拟盘内容的虚拟机信息。这些基于文件的结构必须被变换,以便与不同类型的管理程序兼容。
现有的转换虚拟机文件的工具既是迁移工具又是变换工具,即,它们既包括数据的迁移(复制)又包括虚拟机文件的全部内容的变换。
在这种类型的操作中,数据迁移消耗大部分的时间。消除它可以例如将长达小时的操作改变为仅仅几秒钟。这在虚拟盘的转换中将是尤其有利的。
虚拟盘是被管理程序使用来模拟在虚拟机上直接附连的硬驱动的类型的文件。虚拟盘通常是非常大的,是许多千兆字节(GB)甚至兆兆字节(TB)数据的量级。当今存在的将虚拟盘从一种管理程序格式迁移到另一种的工具必须给在源虚拟盘文件中存储的数据做个副本,以便在与目的地管理程序兼容的另一个虚拟盘文件中存储数据。复制许多千兆字节或者甚至兆兆字节的数据是非常低效的。
因此,需要更高效的系统,用于将以一种管理程序格式的虚拟机文件转换为以另一种管理程序格式的虚拟机文件。
发明内容
本发明是使得在不需要将虚拟机载荷(数据)从一个位置复制到另一个位置的情况下能够进行虚拟机文件的转换的系统和方法。通过消除这一复制步骤,申请人的发明显著地提高了转换过程的效率。
根据本发明的一种实施例,提供了转换虚拟机文件的方法,包括:
在文件系统或存储系统中提供对存储在持久性存储介质上的数据元素的位置的间接寻址;
转换包含虚拟机载荷(VMP)数据元素和以一种管理程序文件格式的管理程序元数据(HM)数据元素的源虚拟机文件,包括步骤:
变换源文件的HM数据元素,以创建以与源管理程序格式不同的目的地管理程序格式的目的地HM数据元素;
在从源到目的地文件格式的转换期间维护存储在持久性存储介质上的VMP数据元素的位置恒定,而无需读或写VMP元素数据;及
创建间接寻址来引用以目的地管理程序格式的目的地HM数据元素和现有存储的VMP数据元素。
在一种实施例中,该方法还包括在创建目的地HM数据元素之后去除源HM数据元素。
在一种实施例中,源HM数据元素包括目录、文件和间接寻址数据元素。
在一种实施例中,源VM文件是源虚拟盘VD文件。
在一种实施例中,源VM文件是虚拟存储器映像文件。
在一种实施例中,该方法包括从备份存储中恢复源VM文件,用于在不同格式的管理程序上运行目的地VM文件。
在一种实施例中,该方法还包括利用创建的间接寻址更新源VM文件并且根据不同的管理程序格式重命名经更新的源文件,以创建目的地VM文件。
在一种实施例中,该方法包括将源VM文件克隆为不同的管理程序格式并且维护源文件。
在一种实施例中,提供了具体实现在非临时性机器可读存储设备中的计算机程序,包括程序代码单元,程序代码单元当被处理器执行时,执行上述方法的步骤。
在一种实施例中,该方法用数字电子电路系统、计算机硬件、固件、非临时性机器可读存储设备中的计算机程序或者它们的组合中的一种或多种来实现。
在一种实施例中,该方法还包括维护文件系统的位置索引,用于映射数据元素名称和数据元素的物理位置。
在一种实施例中,位置索引还包括对数据元素的引用计数。
在一种实施例中,名称、位置索引和数据元素包括文件系统。
在一种实施例中,映射是通过到文件的内容中的偏移进行索引的,并且包括线性列表、树结构或间接寻址表。
在一种实施例中,文件系统将数据元素存储为位于持久性存储介质中的对象存储部中的对象。
在一种实施例中,每个对象具有从对象的内容导出并且用来访问对象存储部中的对象的全局唯一名称。
在一种实施例中,该方法包括添加、修改或删除文件的对象并且生成新的文件对象名称。
在一种实施例中,对象存储部包含对象名称、对象物理位置以及对象引用计数的索引。
在一种实施例中,对象名称包括对象内容的散列(hash)摘要。
根据本发明的另一种实施例,提供了用于将虚拟机文件从一种管理程序格式转换为另一种管理程序格式的计算机系统,该系统包括存储器和与存储器通信的硬件处理器,处理器执行用于转换虚拟机文件的程序指令,其中转换虚拟机文件包括以下步骤:
在文件系统或存储系统中提供对存储在持久性存储介质上的数据元素的位置的间接寻址;
转换包含虚拟机载荷(VMP)数据元素和以一种管理程序文件格式的管理程序元数据(HM)数据元素的源虚拟机文件,其中包括以下步骤:
变换源文件的HM数据元素,以创建以与源管理程序格式不同的目的地管理程序格式的目的地HM数据元素;
在从源到目的地文件格式的转换期间维护存储在持久性存储介质上的VMP数据元素的位置恒定,而无需读或写VMP元素数据;及
创建间接寻址来引用以目的地管理程序格式的目的地HM数据元素和现有存储的VMP数据元素。
根据本发明的另一种实施例,提供了转换虚拟机文件的方法,包括:
在其中数据和元数据被存储为对象的文件系统或存储系统中,每个对象具有从对象的内容中导出并且用来访问文件系统或存储系统中的对象的全局唯一内容名称;
转换包括载荷数据和以一种管理程序文件格式的管理程序元数据的源虚拟机文件,其中包括以下步骤:
将源文件的管理程序元数据变换为不同的管理程序文件格式,以创建目的地管理程序元数据;
在从源到目的地文件格式的转换期间维护存储的载荷数据的位置恒定,而无需读或写载荷数据;及
创建对目的地管理程序元数据和现有存储的载荷数据的间接寻址。
在本发明的一种实施例中,源虚拟机文件包括存储在对象存储部中用于由文件系统访问的元数据对象和载荷对象。每个对象具有从对象的内容导出并且用来访问对象存储部的全局唯一对象指纹。这种类型的存储系统能够对虚拟机文件的内容访问并且可以在无需虚拟机载荷迁移的情况下执行转换。
在一种实施例中,提供了将源虚拟机(VM)文件转换为目的地虚拟机文件的方法,其中源虚拟机文件包括以源管理程序文件格式的管理程序元数据(HM)数据元素,以及存储在持久性存储介质上、在由供文件系统或存储系统使用以访问持久性存储介质中的源虚拟机文件的间接寻址引用的位置处的虚拟机载荷(VMP)数据元素,该方法包括以下步骤:
变换源文件的HM数据元素,以创建以与源管理程序格式不同的目的地管理程序格式的目的地HM数据元素;
在从源到目的地文件格式的转换期间维护存储在持久性存储介质上的VMP数据元素的位置恒定,而无需读或写VMP元素数据;
将目的地HM数据元素放置在持久性存储介质中;及
创建用于访问目的地虚拟机文件的间接寻址来引用以目的地管理程序格式的目的地HM数据元素和现有存储的VMP数据元素。
在一种实施例中,该方法包括在创建目的地HM数据元素之后从持久性存储中去除源HM数据元素。
在一种实施例中,提供了方法,其中源HM数据元素包括目录、文件和间接寻址数据元素,其中间接寻址数据元素提供用于访问源VM文件的间接寻址。
在一种实施例中,提供了方法,其中源VM文件是源虚拟盘VD文件。
在一种实施例中,提供了方法,其中源VM文件是虚拟存储器映像文件。
在一种实施例中,提供了方法,其中该方法包括从备份存储中恢复源VM文件,并且将源VM文件转换为目的地VM文件,用于在不同格式的管理程序上运行目的地VM文件。
在一种实施例中,该方法还包括利用经创建的间接寻址更新源VM文件的间接寻址数据元素并且根据不同的管理程序格式重命名经更新的源文件,以创建目的地VM文件。
在一种实施例中,该方法包括将源VM文件克隆为不同的管理程序格式并且维护源文件。
在一种实施例中,具体实现在非临时性机器可读存储设备中的计算机程序包括程序代码单元,程序代码单元当被处理器执行时,执行该方法的步骤。
在一种实施例中,提供了方法,该方法用数字电子电路系统、计算机硬件、固件、非临时性机器可读存储设备中的计算机程序或者它们的组合中的一种或多种来实现。
在一种实施例中,提供了方法,还包括维护用于访问文件的文件系统的位置索引,该位置索引映射数据元素名称和数据元素的物理位置。
在一种实施例中,提供了方法,其中位置索引还包括对数据元素的引用计数。
在一种实施例中,提供了方法,其中名称、位置索引和数据元素包括用于文件系统的访问机制。
在一种实施例中,提供了方法,其中映射是通过到VM文件的内容中的偏移进行索引的,并且包括线性列表、树结构或间接寻址表。
在一种实施例中,提供了方法,其中数据元素被存储为位于持久性存储介质中的对象存储部中、可被文件系统或存储系统访问机制访问的对象。
在一种实施例中,提供了方法,其中每个对象具有从对象的内容导出并且用来访问对象存储部中的对象的全局唯一名称。
在一种实施例中,提供了方法,包括添加、修改或删除文件的对象并且生成新的文件对象名称。
在一种实施例中,提供了方法,其中对象存储部包含对象名称、对象物理位置以及对象引用计数的索引。
在一种实施例中,提供了方法,其中对象名称包括对象内容的散列摘要。
本发明的这些和其它特征及益处将在以下本发明的各种实施例的详细说明中进行更具体的描述。
附图说明
图1是示出将基于文件的线性偏移映射到持久性存储上的物理位置的过程的示意性框图;
图2是根据现有技术的、用于将虚拟机文件从一种管理程序格式转换为另一种管理程序格式的系统的示意性框图;
图3示出了现有技术中对虚拟机文件的转换过程;
图4是根据本发明的一种实施例的、利用树结构来访问存储在对象存储部中的数据和元数据对象的文件系统的示意说明;
图5是根据本发明的一种实施例的转换过程的示意说明;
图6是根据本发明的一种实施例的、用于将虚拟机文件从一种管理程序格式转换为另一种管理程序格式的过程的流程图;
图7是根据本发明的另一种实施例的用于转换虚拟机文件的过程的流程图。
图8是根据本发明的另一种实施例的用于转换虚拟机文件的过程的流程图。
图9是根据本发明的另一种实施例的用于转换虚拟机文件的过程的流程图。
图10是根据本发明的另一种实施例的用于转换虚拟机文件的过程的流程图。
图11是根据本发明的另一种实施例的用于创建(用于转换的)虚拟机文件的过程的流程图。
图12是节点网络的示意图,其中每个节点运行一个或多个虚拟机;
图13A-13C示出了本发明利用对象存储部的一种实施例,其中图13A是对象存储部、其操作界面和位置索引的示意图,图13B是用于映射文件索引节点(inode)号码和文件名称的目录数据结构,并且图13C是用于映射对象名称和文件索引节点号码的索引节点映射数据结构;及
图14是用于计算机和多个盘存储设备之间的通信的一般系统配置的示意图。
具体实施方式
现在将参考附图描述本发明的各种实施例。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对本发明的一种或多种实现的透彻理解。但是,很显然,本发明可以在没有这些具体细节的情况下进行实践。在其它情况下,众所周知的结构和设备以框图形式示出,以便于描述本发明。
如在本申请中所使用的,术语“组件”和“系统”意在指代计算机相关的实体,或者是硬件、硬件和软件的组合、软件、或者是在执行中的软件。例如,组件可以是(但不限于是)在处理器上运行的进程、处理器、对象、可执行文件、执行过程的线程、程序和/或计算机。以实例说明,在服务器上运行的应用和服务器都可以是组件。一个或多个组件可以驻留在执行过程的进程和/或线程内,并且组件可以位于一个计算机上和/或在两个或更多个计算机之间分布。
本发明也可以被示为本发明的过程的流程图。虽然为了解释的简化起见,以流程图形式示出的一个或多个方法被描述为一系列动作,但是应该理解和明白,本发明并不受动作的次序所限制,因为根据本发明,一些动作可以以与本文所示出和描述的不同的次序和/或与其它动作并行地发生。例如,本领域技术人员将理解和明白,一种方法可以另选地被表示为一系列相互关联的状态或事件,诸如在状态图中的。此外,不是所有示出的动作可被需要以实现根据本发明的方法。
在本文所公开的发明的各种实施例中,术语“数据”和“数据元素”可以互换使用。如本文所使用的,数据是指可以被输入到计算机中、在那里被存储和处理、或者被传送到另一台计算机的数据的不透明集合,例如,任意序列的符号(通常表示为“0”和“1”)。如本文所使用的,数据包括元数据——其它数据的描述。如本文所描述的,写到存储系统的数据可以是相同大小的数据元素或可变大小的数据元素。在一种实施例中,每个数据元素可以包括存储在对象存储部中的对象。
如本文所使用的“存储系统”可以是用于将数据存储到盘或其它存储介质的任何系统或应用,例如文件系统、块存储设备或其它系统。存储系统可以使用标识符或名称来引用存储中的每个数据元素。在一个例子中,名称是全局唯一标识符(GUID),诸如数据内容的散列,优选地是数据内容的强(抗碰撞)散列。只要每个数据元素在存储系统内具有允许为用户重构所存储的数据的名称,其它命名约定也是可能的。在一种实施例中,中央服务器生成名称。数据名称通常是旨在由程序而不是人类使用的固定长度二进制串。存储系统具有用于组织和定位所存储数据的机制(例如,文件系统),其理解所存储数据的格式并且提供用于访问(引用)每个数据元素的机制(被称为映射或间接寻址的抽象层)。所有数据的索引(有时被称为字典或编目)可以被存储系统使用,以便访问(定位)每个数据元素。索引中的每条记录可以包含数据元素的名称、它的逻辑和/或物理位置(地址)、引用计数(由一个或多个应用对数据元素的引用的当前数量)、以及关于各个数据元素的其它信息。在一种实施例中,每个索引条目包括指向其中数据对象被存储的盘上的物理块地址的指针。在一种实施例中,可以使用固定算法来定位数据被存储的盘上的物理位置。
“持久性存储介质”是保持状态的非易失性数据存储介质,例如,硬盘或闪存。
术语
虚拟机[VM]:像物理机器一样执行程序的机器(即,计算机)的软件实现。
虚拟机文件[VMF]:以特定于管理程序的格式存储并且描述VM、或者包含VM的载荷数据(存储器或盘内容)的多个文件中的一个文件。
虚拟盘文件[VDF]:一种类型的虚拟机文件,其表示能够提供持久性存储的到VM的存储设备(例如,盘)。这些通常是非常大的文件。
管理程序元数据[HM]:虚拟机文件中描述VM的配置和布局的信息。这种信息通常特定于具体的管理程序。VM不能修改管理程序元数据。
虚拟机载荷[VMP]:虚拟机文件中对在VM内部执行的程序(虚拟机代码)可见、并且可以直接被其修改的数据。虚拟盘文件的绝大部分通常由虚拟机载荷构成。
文件系统元数据[FSM]:由文件系统存储的、将一个或多个文件的逻辑线性映射到持久性存储中的具体文件数据元素的相关位置的数据。
数据迁移:将数据从一个位置复制到另一个位置的过程。这包括从源中读数据并且接着将它写到目的地。如果源设备和目的地设备是同一设备,则在该设备上的源和目的地文件的位置必须是不同的。
数据变换:将以一种格式的数据结构修改为与另一格式的数据结构兼容的过程。
文件系统技术性细节
管理程序使用各种基于文件的结构来存储诸如配置、存储器内容和虚拟盘内容的虚拟机信息。历史上,这些基于文件的结构必须经历数据迁移和/或变换以便与不同类型的管理程序兼容。
文件系统消耗一定量的持久性存储并且以目录和文件的形式表示结构化数据存储。文件系统消费者(consumer)可以使用线性偏移来访问文件的内容。这些到持久性存储上的物理位置的基于文件的线性偏移通常被称为间接寻址(indirection)。这在图1中被示意性地示出,其中示出了包括前同步码32、载荷33(包括组块(Chunk)#1(33-A)和组块#2(33-B))、以及后同步码34的文件30。文件系统消费者(例如,计算机程序35)希望读在偏移100千兆字节(GB)处的65千字节(KB)的数据。间接寻址表31A-31C将这些基于文件的线性偏移映射到(诸如盘存储36A-36C的)持久性存储介质上的物理位置。这里,对文件30的三个部分31A、31B、31C的映射间接寻址是分别到三个不同的盘存储设备36A、36B和36C上的不同物理位置的。单个盘驱动器的线性布局的示意性说明通过标号37示出,其中38表示在偏移100GB处(即,存储在盘驱动36B的特定部分上的文件数据的特定部分的位置)的期望的64KB。
如在图1中所示出的,文件系统负责跟踪(使用间接寻址表31A-31C)由文件系统消费者35写的所有数据的位置,因此数据可以在以后的某个时间被再次读取。文件系统还负责擦除和重用该底层持久性存储的区域(如果允许的话)。
现有技术的虚拟机转换
图2-3示出了用于通过对文件的全部内容迁移和变换这两者来转换虚拟机文件的现有技术转换工具(过程)20的一个例子。
以第一管理程序格式(例如,VMware)的源虚拟机文件(vm-1)21包括存储在驻留于存储阵列26上的数据存储部22中的250千兆字节(GB)的虚拟机载荷。数据存储部22可以是包括一组相关的对象的数据储存库,其中对象通过使用在数据库模式中定义的类被建模,或者被建模为存储驻留在存储阵列26上的数据的平面文件。为了将该源虚拟机文件(vm-1)21转换为以不同管理程序格式(例如,微软Hyper-V)的目的地虚拟机文件(vm-1')23,使用了极度资源密集的转换系统(工具)25(参见下面的进一步说明)。结果得到的、包括来自vm-1的所有载荷数据副本的目的地机器文件(vm-1')23也被保存在存储阵列26中。图2示出了访问存储阵列26的另一个部件24,诸如NTFS(新技术文件系统,微软公司的专有文件系统)或SMB3(服务器消息块,第3版,也被称为通用互联网文件系统(CIFS))。
为了说明现有技术的转换过程10,图3示出了示例性虚拟盘文件结构12,其包括下列组件:
-前同步码(PRE)13是存储关于虚拟盘的内容的整体信息(配置和布局)的管理程序元数据(HM);
-虚拟机载荷(VMP)14由存储在一个或多个位置中的数据的一个或多个、通常大的组块(这里是组块#1(14A)和组块#2(14B))构成;及
-(可选的)一些虚拟盘具有也包括管理程序元数据(HM)的后同步码(POS)15(由于各种原因)。
在这种现有技术的迁移过程中,前同步码被迁移并且被变换(参见在旧的PRE13和新的PRE13'之间标记为“新”的箭头16)。在新的(不同的)管理程序格式中,前同步码13'可能以不同的大小结束,如在图3中所示出的。
接着,每个载荷组块的内容被迁移,即,被读取并写到新的位置,其中如果需要则进行变换。具有200GB数据的源组块#1(14A)和具有50GB的源组块#2(14B)被转换为具有250GB数据的单个组块#1(14')。这个载荷迁移步骤(参见标记为“复制”的箭头17)是极度资源密集的,因为它需要:
-CPU和存储器资源来缓冲数据(载荷)转换和过程;
-网络带宽来读和写整个数据;
-输入/输出(I/O)带宽来读和写数据的全部内容;
-大致与迁移前虚拟盘文件的大小一样多的自由空间。
如果需要的话,后同步码15也被迁移和变换(参见标记为“新”的箭头18)。结果得到的后同步码15'可能也以不同的大小结束。
在这个例子中,假设每秒100兆字节(MB/s)的全双工吞吐量(例如,千兆位以太网),那么利用现有技术工具,具有总共250千兆字节(GB)载荷的虚拟盘文件的转换将花费超过43分钟来迁移和变换。这种现有技术过程需要大量时间和存储器的原因如下:
1.转换系统(25)具有有限的存储器量;因此,它必须以适于存储器的较小的组块读源VMF(VMDK21)。
2.一旦从在存储阵列(26)上存储的源文件中读取,数据必须接着被写出到目的地文件(23),其中在这个例子中目的地文件位于同一存储阵列上。
3.在转换结束时,25可以去除源文件(21),以完成转换过程。
4.因此,250GB的数据从同一存储阵列(26)中读取并被写回到该同一存储阵列(26)。这一过程使用:
a.CPU处理时间来管理I/O。
b.相当量的网络带宽。
5.这一过程受存储阵列(26)和转换系统(25)之间的网络吞吐量控制(gated)。
6.这一过程通过减少可用网络带宽和可用于处理存储请求的IOPS影响使用存储阵列(26)的其它程序。
7.转换系统(25)在这种操作的过程中必须从VMDK文件(21)中读取所有的数据。
如以下所描述的,本发明极大地简化了转换并且使转换更加高效。
无需载荷迁移的变换
现在将关于图4-5描述本发明的一种实施例。在这个例子中,(示意性示出的)文件系统40在基于内容识别数据的对象存储部中存储一切(所有数据和元数据)。因此,该对象存储部中的所有数据和元数据包括对象,并且每个对象具有从对象的内容中导出的指纹(名称)。
文件系统以树结构存储元数据对象(目录42、文件43和间接寻址44),以便向文件系统消费者提供对载荷数据(45)的访问。文件系统还指示对象存储部何时解除对象引用是安全的。
在图4的树结构41中,在根节点42处的目录(Dir)指向被标记为F.1、F.2和F.3的三个底层文件节点43。第二文件节点F.2具有两个间接寻址44,第一间接寻址标记为I.1,其引用三个载荷数据元素(对象)T、U、V,并且第二间接寻址标记为I.2,其引用四个载荷数据元素(对象)W、X、Y、Z。
利用这种文件系统,以下例子示出了申请人的发明的一种实施例,其中一种管理程序格式的源虚拟机文件112到另一种管理程序格式的目的地虚拟机文件112'的变换在不复制(读或写)虚拟机载荷VMP的情况下完成。过程50在图5中示出。
在步骤1开始,源虚拟机文件(Src文件51)元数据包括到(源(“旧的”)前同步码113的)被标记为a、b、c、d的各个源元数据对象和到被标记为1、2、3、4、5、6、7、8、9……(例如,以52百万个另外的载荷对象或“块”继续)的(源载荷114的)载荷对象56的三个间接寻址52-54,它们被标记为Q、R、S。
在步骤2中,新的虚拟机文件Dst文件(57)被创建,用于变换的目的地。
在步骤3中,源前同步码113被变换和迁移(a、b、c、d→e、f、g、h),从而创建新的(目的地)前同步码113'。
在步骤4中,新的间接寻址58、59(分别被标记为X,Y)被创建,以引用新的(目的地)前同步码113'的新的管理程序元数据(e、f、g、h)和现有的(源)虚拟机载荷114。
在步骤5中,以上过程步骤对任何其它源文件管理程序元数据进行重复。
在步骤6中,原始源文件51和引用源管理程序元数据(a、b、c、d)的间接寻址(Q,R)52、53被去除。对原始载荷的间接寻址54被维护作为引用54的新的间接寻址(X)58。
在步骤7中,现存的(未被引用的)管理程序元数据55(a、b、c、d)可以被丢弃(清除或去除)。
现在转换完成。虚拟机载荷114没有被迁移。
在其中期望以另一种管理程序格式克隆虚拟机文件的另选实施例中,最后两个步骤(6和7)被省略(即,以第一种管理程序格式的源文件被维护)。
在另一种另选实施例中,目的地文件记录不一定必须被创建,而是现有的(源)文件记录的内容和名称可以被修改以反映新的间接寻址树(作为修改的步骤6)。在转换过程结束时,该文件将被重新命名以与目的地管理程序的格式匹配。
用例
本发明可以在涉及虚拟机转换的以下用例中的任何用例中使用:
-将VM移动到另一种管理程序类型,由此源文件可以在转换之后被丢弃;
-从当VM在不同类型的管理程序上运行时取得的备份中恢复VM,由此源文件可以在转换之后被丢弃;
-将VM克隆为另一种管理程序类型,由此源文件必须在转换之后被保留;
-执行块存储设备(诸如iSCSI或光纤通道)目标的P2V(物理到虚拟)数据转换,并将它转换为虚拟机文件;及
-执行虚拟机文件到块存储设备(iSCSI或光纤通道)的V2P(虚拟到物理)数据转换。
在这些和潜在的其它用例中,数据变换是必需的,但是仅管理程序元数据HM的数据迁移是实现目标所必须的一切。虚拟机载荷VMP并不需要被迁移。
流程图
图6-10是示出本发明用于将虚拟机文件从一种管理程序格式转换为另一种管理程序格式的各种实施例的流程图。
图6示出了过程60,其在第一步骤61开始,其中源虚拟机VM文件通过以管理程序格式A的管理程序元数据HM数据元素以及虚拟载荷VMP数据元素(它们是管理程序不可知的)来表征。在下一步骤62中,源HM数据元素被变换为管理程序格式B,以创建目的地HM数据元素。在下一步骤63中,间接寻址被创建以引用新创建的HM数据元素。目的地文件可以使用文件系统中的现有间接寻址和/或创建对现有存储的VMP数据元素的新的间接寻址而不复制VMP数据元素。
在这个例子中,新的目的地文件本质上是适于以不同(格式B)管理程序格式运行的源文件的“克隆”。源文件可以被维护,用于以源(格式A)管理程序格式运行。两者都访问同一VMP数据。VMP数据可以在创建间接寻址之前通过进行“静默”或清除所有未完成的写来更新(参见图10)。
图7示出了另一个过程70,其中前三个步骤71-73与图6的过程60的步骤61-63相同。在图7中,第四步骤74包括去除源HM数据元素。这个过程例如可以用于将VM移动到另一种管理程序类型,由此源文件可以在转换之后被丢弃。
图8示出了包括从备份存储中恢复源VM文件的第一步骤81的另一个过程80。接下来的三个步骤82-84与图6的过程60的步骤61-63相同。第五步骤85包括去除源VM文件。这个过程80是从当VM在不同类型的管理程序上运行时取得的备份中恢复VM的过程的一种实施例,由此源文件可以在转换之后被丢弃。
图9示出了另一种过程90,其中前三个步骤91-93与图6的过程60的步骤61-63相同。过程90包括利用所创建的间接寻址更新源VM文件的第四步骤94。在下一步骤95中,经更新的源文件以管理程序格式B被重命名作为目的地VM文件。图9的过程是其中目的地文件记录不一定必须被创建、而是现有文件记录的内容和名称被更新以反映新的间接寻址并且文件被重命名以与目的地管理程序格式B匹配的一个例子。
图10示出了另一种过程100,其中步骤101、102和104分别对应于图6的步骤61、62、63。在过程100中,提供了附加的(现在的第三)步骤103,其中VMP数据在转换之后被更新以“静默”(清除)所有未完成的写。接着,在这之后创建间接寻址(步骤104)。
图11示出了用于物理到虚拟(P2V)用例的过程110,其中首先创建虚拟机盘文件,该文件接着可以被用在本发明的转换过程中。在第一步骤111中,第一物理存储介质上的文件系统数据元素被移动到逻辑块寻址模式,例如用于指定存储在计算机存储设备(通常是辅助存储系统,诸如硬盘)上的数据块的位置的逻辑抽象,其中只使用一个号码来寻址数据并且每个线性基地址描述单个块。存在已知的过程用于将计算机文件系统数据移动至块设备lun(逻辑单元号)。在下一步骤112中,块设备lun被转换为虚拟机盘文件;再一次,可以使用已知的过程用于这种转换。在一种实施例中,块盘lun在存储系统内部被表示为文件系统中的文件,使得后续转换过程随后与如前所描述的其它文件到文件的转换完全相同。
在(相反的)虚拟到物理(V2P)的用例中,图6的转换过程后接着是将目的地虚拟机盘文件转换为块设备lun,用于在物理存储介质上存储。
根据前面的描述,本发明的这些和其它实施例对技术人员将是明晰的。
节点的网络
图12示出了其中可以利用本发明的一种环境,即网络化节点的分组120,每个节点121、122、123具有在本地节点上运行并且访问该节点上的本地存储125A-C的一个或多个虚拟机(宾客VM)124A-C。网络126跨节点将本地存储聚合为可以被划分成一个或多个数据存储部的一个存储池。通过在节点处本地化存储,该节点上虚拟机的大部分读请求是本地的(通过访问同一节点内的本地存储来服务)。网络化进一步使得位于分开的物理服务器(节点)上的两个或更多个虚拟机上的工作能够协调,以确保最大应用启动时间(失去一个节点不会中断来自虚拟机的数据访问)。网络中的节点平衡资源以优化I/O性能和容量利用率。此外,在每个节点上运行的虚拟化软件使得能够在硬件故障或资源限制的情况下将虚拟机自动迁移到另一个物理服务器(另一个节点)。
如在图12中所示出的,每个节点121、122、123(分别被标记为节点A、B、C)包括其自己的(一个或多个)虚拟机124A-C、管理程序软件127A-C、虚拟存储控制器128A-C、以及本地存储125A-C。管理程序允许多个虚拟机在单个物理主机上运行并且调解所有的输入/输出(IO)操作(经由控制器),包括读和写请求。本地存储可以包括用于快速访问被频繁使用的数据的固态驱动SSD或闪存存储设备。较不频繁使用的数据可以被存储在较便宜的硬盘存储HDD上。每个节点上的虚拟存储控制器通过网络126(例如,GB以太网)连接,用于节点之间的通信。
图12仅仅是用于运行可以在本发明中使用的虚拟机的分布式环境的一个例子,并不意味着是要进行限制。
去重复(De-Duplication)
在本发明的一种实施例中,所有的数据在一开始就实时地在数据被写到存储之前去重复。通过在数据被写到硬盘驱动(HDD)之前将数据去重复,HDD输入-输出(IO)操作会显著减少。在一种实施例中,去重复过程产生细粒度的数据元素,即,千字节数量级上的粒度大小,诸如2KB、4KB或8KB的数据元素。这些数据元素接着跨所有数据生命周期阶段被利用,包括主阶段、备份阶段、WAN阶段和归档阶段。此外,这些细粒度数据元素跨诸如DRAM、闪存、HDD和云的不同存储介质层被利用。在本实施例中,去重复在主存储级别发生,而不是将去重复推迟到备份级别或复制级别。去重复的全部益处因此在数据生命周期中的每一点处并且跨所有的存储介质层得以实现。
如本文所使用的,去重复过程包括在给定数据集中参照数据的整个可用储存库发现并消除冗余数据。
在另一种实施例中,数据还可以被压缩,即,在给定的数据集内,相对于同一数据集内的其它数据发现并消除数据。
在还有的另一种实施例中,数据(在被去重复和压缩之外)还可以被优化,即,识别文件类型并且对是否存储该数据以及在哪里存储该数据做出实时的决定,例如,用以提高存储效率、性能和/或带宽的使用。
在去重复的过程中,在创建时,数据被扫描、分析并与已对数据集中的所有现有元素进行编目的索引或表进行比较。如果数据被确定为是冗余的,则该数据被删除;如果数据被确定为是新的,则该数据被写到存储。接着,指针和索引被更新,使得系统可以在所有数据元素的所有位置中跟踪这些数据元素,同时保持对全部数据集(复制前)的理解。
在主存储级别去重复有多个优点。在一个例子中,对于运行通用操作系统(例如,Windows2008)的任何两个虚拟机,这两个虚拟机将具有大的公共数据元素集合。将虚拟机复制到另一个节点不需要发送这些公共数据元素(因为它们已经在远程节点处存在)。作为另一个例子,同时引导100个Windows虚拟机会导致大约10,000MB的随机盘读取。但是,通过消除对公共数据的盘读取,相同的工作负载将导致只有大约100MB的读取,因为Windows引导所需要的全部数据在100个虚拟机之间是公共的。这节省了100倍的盘输入/输出操作。
本发明的这些和其它益处可以在这种和其它存储环境中实现。
数据存储部
数据存储部是包括一组相关的数据元素的数据储存库。数据存储部可以是不同类型的,包括文件系统和数据库(关系数据库和面向对象的数据库)。VMware使用“数据存储部”来指能够存储用于一个或多个虚拟机的一个或多个文件的存储设备。
在本发明的一种实施例中,数据存储部包括包含一组相关的对象的对象存储部。对象存储部的一个例子在于2013年7月2日授权的、Beaverson等人的美国专利8,478,799中描述,其全部内容通过引用被结合于此。
图13A示出了包含对象的对象存储部130的一个例子,其中对象的例子被标记为P、Q、R(分别为131-133)。在这个例子中,文件系统的所有数据,包括目录、文件和载荷数据,都被表示为对象。对象在存储到对象存储部中之前已被去重复并且具有在KB量级上的细粒度大小,例如2KB、4KB或8KB。
每个对象都具有名称,名称是对象的全部内容的摘要(散列)。对象名称在位置索引138中通过H(P)H(Q)H(R)来表示。索引结构138跟踪对象名称、对象位置和对象引用。每次对象被写或以其它方式被另一个对象或数据结构引用时,对象的引用被递增。文件系统可以生成它认为是对象的许多拷贝的事物,但是对象存储部只存储一个,并且跟踪在文件系统中存在多少个对该对象的引用。因此,引用计数是对象被另一个对象或其它数据结构引用的次数,并且当对象的引用计数下降到零时,该对象可以被安全地解除分配或删除(例如,垃圾回收)。
对象存储部具有若干个接口类。读、写、删除接口134为对象执行所规定的功能。在这种上下文中,对象删除实际上是对象引用计数的递减。对象在对象存储部内部的存储仅当引用计数变为零时才被释放。
索引操作135使得能够按名称进行对象的枚举、引用计数调整、和按名称查找对象。
对象存储部具有事务语义(ACID)属性,并且事务边界是通过事务操作136来管理的。
供给接口137使得能够创建、删除、合并、分割和聚合对象存储部。
位置索引138是映射,其主键是对象名称。系统中的每个对象存在索引条目;每个条目包含对象名称、对象引用计数和物理位置。如果对象在物理盘上,则位置可以是逻辑块号(LBN)。如果对象由托管提供商(例如,亚马逊)托管,则它将是对云对象的引用。可以出于各种目的提供附加的字段,诸如指示对象是否被压缩或加密存储。
图13B-13C示出了被对象存储部利用的两个其它的数据结构。目录139是文件系统索引节点号码(整型)到文件名(字符串)的映射。映射可以采取各种形式,包括但不限于线性表、B-树和散列映射。
索引节点映射140将目录139中的索引节点号码转换为对象名称。索引节点映射可以具有用于特定对象的预留位置。例如,索引0是文件系统在时间T时的快照。索引1是超级块。其它3个索引是名称为foo、bar和root的三个文件的摘要(散列)。
索引节点号码(整型)和对象名称的映射保留文件系统语义。索引节点号码是文件系统的中心,因为许多用户级别的活动引用索引节点号码。在本实施例中,从对象的内容中导出的对象名称随着文件数据的变化而变化。通过使用间接寻址表140,索引节点号码可以保持恒定,但是相关联的对象名称可以随着(与索引节点号码对应的)文件数据的变化而变化。此外,索引节点映射本身是对象并且索引节点映射对象的摘要(散列)包括文件系统的快照。一旦有了快照指纹,就可以继续在文件系统(可写的快照)上工作,并且记住它以供将来使用(例如,用于灾难恢复)。还可以将快照指纹发布到坐落在远程存储部中的另一个系统。虽然另一个对象存储部可能不完全托管所有的快照数据(对象),但是所描述的机制是完全一致的和可用的。
使用强散列来生成对象名称。对象名称因此是从对象的内容导出的全局唯一指纹并且可以被用来访问对象存储部中的对象。
在传统的文件系统中,根目录是在已知的索引节点号码,在索引节点映射140中,也是这种情况。
数据存储部和文件系统的这些和其它组件以及变体对本领域技术人员是已知的。本例子并不意味着要进行限制。
计算和存储环境
前面描述的方法可以在适当的计算和存储环境中实现,例如,在可以在一个或多个计算机上运行的计算机可执行指令的上下文中。在分布式计算环境中(例如),某些任务由通过通信网络链接的远程处理设备来执行并且程序模块可以位于本地和远程存储器存储设备中。通信网络可以包括全球区域网(例如,互联网)、局域网、广域网或其它计算机网络。要理解,本文所描述的网络连接是示例性的,并且在计算机之间建立通信的其它手段也可以被使用。
计算机可以包括一个或多个处理器以及存储器(例如处理单元、系统存储器)和系统总线,其中系统总线耦合系统组件,这些系统组件包括但不限于系统存储器和处理单元。计算机还可以包括盘驱动和到外部组件的接口。多种多样的计算机可读介质可以被计算机访问并且包括易失性和非易失性介质、可拆卸和不可拆卸介质。计算机可以包括各种用户接口设备,包括显示屏、触摸屏、键盘或鼠标。
现在参考图14,其中示出了用于在计算机和多个盘存储设备之间通信的一般系统配置700的一个例子。盘存储可以是各种存储设备中的任何一种,其中数据通过各种电子、磁、光或机械方法被数字化地记录在(包括硬盘驱动、软盘驱动和光盘驱动的)一个或多个旋转盘的表面上。CPU702被示为附连到系统存储器704,并且系统总线706将CPU连接到芯片组708。芯片组经由IO总线710和多个IO槽712连接到各种输入/输出设备中的任何一种,诸如用于连接多个盘驱动716的驱动控制器714。芯片组还可以连接到其它存储设备718。芯片组可以包括视频端口720、网络端口722、鼠标端口724、键盘端口726等中的一个或多个。
以上所描述的包括本发明的例子。当然,不可能为了描述本发明而描述组件或方法的每一个可想到的组合,但是,本领域中的普通技术人员将认识到,本发明的进一步组合和置换是可能的。因此,本发明旨在涵盖落入本公开内容和/或权利要求范围之内的所有此类替换、修改和变化。
Claims (40)
1.一种转换虚拟机文件的方法,包括:
在文件系统或存储系统中提供对存储在持久性存储介质上的数据元素的位置的间接寻址;
转换包含虚拟机载荷(VMP)数据元素和以一种管理程序文件格式的管理程序元数据(HM)数据元素的源虚拟机文件,该转换包括以下步骤:
变换源文件的HM数据元素,以创建以与源管理程序格式不同的目的地管理程序格式的目的地HM数据元素;
在从源到目的地文件格式的转换期间维护存储在持久性存储介质上的VMP数据元素的位置恒定,而不读或写VMP元素数据;及
创建间接寻址来引用现有存储的VMP数据元素和以目的地管理程序格式的目的地HM数据元素。
2.如权利要求1所述的方法,还包括:
在创建目的地HM数据元素之后去除源HM数据元素。
3.如权利要求2所述的方法,其中所述源HM数据元素包括目录、文件和间接寻址数据元素。
4.如权利要求1所述的方法,其中源VM文件是源虚拟盘VD文件。
5.如权利要求1所述的方法,其中源VM文件是虚拟存储器映像文件。
6.如权利要求1所述的方法,其中所述方法包括从备份存储中恢复源VM文件,用于在不同格式的管理程序上运行目的地VM文件。
7.如权利要求1所述的方法,还包括利用经创建的间接寻址更新源VM文件并且根据不同的管理程序格式重命名经更新的源文件,以创建目的地VM文件。
8.如权利要求1所述的方法,其中所述方法包括将源VM文件克隆为不同的管理程序格式并且维护源文件。
9.一种具体实现在非临时性机器可读存储设备中的计算机程序,包括程序代码单元,该程序代码单元在被处理器执行时,执行如权利要求1所述的方法的步骤。
10.如权利要求1所述的方法,该方法用数字电子电路系统、计算机硬件、固件、非临时性机器可读存储设备中的计算机程序或者它们的组合中的一种或多种来实现。
11.如权利要求1所述的方法,还包括维护文件系统的位置索引用于映射数据元素名称和数据元素的物理位置。
12.如权利要求11所述的方法,其中所述位置索引还包括对数据元素的引用计数。
13.如权利要求11所述的方法,其中所述名称、位置索引和数据元素包括文件系统。
14.如权利要求11所述的方法,其中映射是通过到文件的内容中的偏移进行索引的,并且包括线性列表、树结构或间接寻址表。
15.如权利要求1所述的方法,其中所述文件系统将数据元素存储为位于持久性存储介质中的对象存储部中的对象。
16.如权利要求15所述的方法,其中每个对象具有从对象的内容导出并且用来访问对象存储部中的对象的全局唯一名称。
17.如权利要求16所述的方法,包括添加、修改或删除文件的对象并且生成新的文件对象名称。
18.如权利要求16所述的方法,其中所述对象存储部包含对象名称、对象物理位置以及对象引用计数的索引。
19.如权利要求16所述的方法,其中对象名称包括对象内容的散列摘要。
20.一种用于将虚拟机文件从一种管理程序格式转换为另一种管理程序格式的计算机系统,该系统包括存储器和与该存储器通信的硬件处理器,该处理器执行用于转换虚拟机文件的程序指令,其中转换虚拟机文件包括以下步骤:
在文件系统或存储系统中提供对存储在持久性存储介质上的数据元素的位置的间接寻址;
转换包含虚拟机载荷(VMP)数据元素和以一种管理程序文件格式的管理程序元数据(HM)数据元素的源虚拟机文件,该转换包括以下步骤:
变换源文件的HM数据元素,以创建以与源管理程序格式不同的目的地管理程序格式的目的地HM数据元素;
在从源到目的地文件格式的转换期间维护存储在持久性存储介质上的VMP数据元素的位置恒定,而不读或写VMP元素数据;及
创建间接寻址来引用现有存储的VMP数据元素和以目的地管理程序格式的目的地HM数据元素。
21.一种转换虚拟机文件的方法,包括:
在其中数据和元数据被存储为对象的文件系统或存储系统中,每个对象具有从对象的内容中导出并且用来访问文件系统或存储系统中的对象的全局唯一内容名称;
转换包括载荷数据和以一种管理程序文件格式的管理程序元数据的源虚拟机文件,该转换包括以下步骤:
将源文件的管理程序元数据变换为不同的管理程序文件格式,以创建目的地管理程序元数据;
在从源到目的地文件格式的转换期间维护所存储的载荷数据的位置恒定,而不读或写载荷数据;及
创建对目的地管理程序元数据和现有存储的载荷数据的间接寻址。
22.一种将源虚拟机(VM)文件转换为目的地虚拟机文件的方法,其中源虚拟机文件包括:
以源管理程序文件格式的管理程序元数据(HM)数据元素,以及存储在持久性存储介质上、在通过由文件系统或存储系统使用以访问持久性存储介质中的源虚拟机文件的间接寻址引用的位置处的虚拟机载荷(VMP)数据元素,该方法包括以下步骤:
变换源文件的HM数据元素,以创建以与源管理程序格式不同的目的地管理程序格式的目的地HM数据元素;
在从源到目的地文件格式的转换期间维护存储在持久性存储介质上的VMP数据元素的位置恒定,而不读或写VMP元素数据;
将目的地HM数据元素放置在持久性存储介质中;及
创建用于访问目的地虚拟机文件的间接寻址来引用现有存储的VMP数据元素和以目的地管理程序格式的目的地HM数据元素。
23.如权利要求22所述的方法,还包括:
在创建目的地HM数据元素之后从持久性存储中去除源HM数据元素。
24.如权利要求23所述的方法,其中所述源HM数据元素包括目录、文件和间接寻址数据元素,其中间接寻址数据元素提供用于访问源VM文件的间接寻址。
25.如权利要求22所述的方法,其中源VM文件是源虚拟盘VD文件。
26.如权利要求22所述的方法,其中源VM文件是虚拟存储器映像文件。
27.如权利要求22所述的方法,其中所述方法包括从备份存储中恢复源VM文件,并且将源VM文件转换为目的地VM文件,用于在不同格式的管理程序上运行目的地VM文件。
28.如权利要求24所述的方法,还包括利用经创建的间接寻址更新源VM文件的间接寻址数据元素并且根据该不同的管理程序格式重命名经更新的源文件以创建目的地VM文件。
29.如权利要求22所述的方法,其中所述方法包括将源VM文件克隆为不同的管理程序格式并且维护源文件。
30.一种具体实现在非临时性机器可读存储设备中的计算机程序,包括程序代码单元,该程序代码单元在被处理器执行时,执行如权利要求22所述的方法的步骤。
31.如权利要求22所述的方法,该方法用数字电子电路系统、计算机硬件、固件、非临时性机器可读存储设备中的计算机程序或者它们的组合中的一种或多种来实现。
32.如权利要求22所述的方法,还包括维护用于访问文件的文件系统的位置索引,该位置索引映射数据元素名称和数据元素的物理位置。
33.如权利要求32所述的方法,其中所述位置索引还包括对数据元素的引用计数。
34.如权利要求32所述的方法,其中名称、位置索引和数据元素包括用于文件系统的访问机制。
35.如权利要求32所述的方法,其中映射是通过到VM文件的内容中的偏移进行索引的,并且包括线性列表、树结构或间接寻址表。
36.如权利要求22所述的方法,其中数据元素被存储为位于持久性存储介质中的对象存储部中的、能通过文件系统或存储系统访问机制访问的对象。
37.如权利要求36所述的方法,其中每个对象具有从对象的内容导出并且用来访问对象存储部中的对象的全局唯一名称。
38.如权利要求37所述的方法,包括添加、修改或删除文件的对象并且生成新的文件对象名称。
39.如权利要求37所述的方法,其中对象存储部包含对象名称、对象物理位置以及对象引用计数的索引。
40.如权利要求37所述的方法,其中对象名称包括对象内容的散列摘要。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/972,555 US9043576B2 (en) | 2013-08-21 | 2013-08-21 | System and method for virtual machine conversion |
US13/972,555 | 2013-08-21 | ||
PCT/US2014/051855 WO2015026925A1 (en) | 2013-08-21 | 2014-08-20 | System and method for virtual machine conversion |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105493043A true CN105493043A (zh) | 2016-04-13 |
CN105493043B CN105493043B (zh) | 2019-03-19 |
Family
ID=51492468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480045910.XA Active CN105493043B (zh) | 2013-08-21 | 2014-08-20 | 用于虚拟机转换的系统和方法 |
Country Status (7)
Country | Link |
---|---|
US (3) | US9043576B2 (zh) |
EP (1) | EP3036626B1 (zh) |
JP (1) | JP2016533586A (zh) |
CN (1) | CN105493043B (zh) |
AU (1) | AU2014308938B2 (zh) |
CA (1) | CA2921039A1 (zh) |
WO (1) | WO2015026925A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107656795A (zh) * | 2017-08-21 | 2018-02-02 | 云宏信息科技股份有限公司 | 一种VMware平台的虚拟机转换到WinServer平台的实现方法及装置 |
CN115454357A (zh) * | 2022-10-31 | 2022-12-09 | 广东睿江云计算股份有限公司 | 一种qcow2文件存储方法以及格式转换方法 |
US11689625B1 (en) * | 2022-04-25 | 2023-06-27 | Rovi Guides, Inc. | Systems and methods for fast start of applications in a cloud computing environment |
Families Citing this family (117)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8307177B2 (en) | 2008-09-05 | 2012-11-06 | Commvault Systems, Inc. | Systems and methods for management of virtualization data |
US11449394B2 (en) | 2010-06-04 | 2022-09-20 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources |
US9736065B2 (en) | 2011-06-24 | 2017-08-15 | Cisco Technology, Inc. | Level of hierarchy in MST for traffic localization and load balancing |
US8908698B2 (en) | 2012-01-13 | 2014-12-09 | Cisco Technology, Inc. | System and method for managing site-to-site VPNs of a cloud managed network |
US20140181046A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Systems and methods to backup unprotected virtual machines |
US9286086B2 (en) | 2012-12-21 | 2016-03-15 | Commvault Systems, Inc. | Archiving virtual machines in a data storage system |
US20140196038A1 (en) | 2013-01-08 | 2014-07-10 | Commvault Systems, Inc. | Virtual machine management in a data storage system |
US9043439B2 (en) | 2013-03-14 | 2015-05-26 | Cisco Technology, Inc. | Method for streaming packet captures from network access devices to a cloud server over HTTP |
US9043576B2 (en) * | 2013-08-21 | 2015-05-26 | Simplivity Corporation | System and method for virtual machine conversion |
US9939981B2 (en) | 2013-09-12 | 2018-04-10 | Commvault Systems, Inc. | File manager integration with virtualization in an information management system with an enhanced storage manager, including user control and storage management of virtual machines |
US9798596B2 (en) | 2014-02-27 | 2017-10-24 | Commvault Systems, Inc. | Automatic alert escalation for an information management system |
US9563518B2 (en) | 2014-04-02 | 2017-02-07 | Commvault Systems, Inc. | Information management by a media agent in the absence of communications with a storage manager |
US9755858B2 (en) | 2014-04-15 | 2017-09-05 | Cisco Technology, Inc. | Programmable infrastructure gateway for enabling hybrid cloud services in a network environment |
US9473365B2 (en) | 2014-05-08 | 2016-10-18 | Cisco Technology, Inc. | Collaborative inter-service scheduling of logical resources in cloud platforms |
US10216531B2 (en) | 2014-05-12 | 2019-02-26 | Netapp, Inc. | Techniques for virtual machine shifting |
US9841991B2 (en) | 2014-05-12 | 2017-12-12 | Netapp, Inc. | Techniques for virtual machine migration |
JP2016018298A (ja) * | 2014-07-07 | 2016-02-01 | 富士通株式会社 | 通知変換プログラム及び通知変換方法 |
US10122605B2 (en) | 2014-07-09 | 2018-11-06 | Cisco Technology, Inc | Annotation of network activity through different phases of execution |
US20160019317A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Volume or virtual machine level backup and generating placeholders for virtual machine files |
US11249858B2 (en) | 2014-08-06 | 2022-02-15 | Commvault Systems, Inc. | Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host |
US9852026B2 (en) | 2014-08-06 | 2017-12-26 | Commvault Systems, Inc. | Efficient application recovery in an information management system based on a pseudo-storage-device driver |
US9417968B2 (en) | 2014-09-22 | 2016-08-16 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
US9436555B2 (en) | 2014-09-22 | 2016-09-06 | Commvault Systems, Inc. | Efficient live-mount of a backed up virtual machine in a storage management system |
US9710465B2 (en) | 2014-09-22 | 2017-07-18 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
US9825878B2 (en) | 2014-09-26 | 2017-11-21 | Cisco Technology, Inc. | Distributed application framework for prioritizing network traffic using application priority awareness |
US9723065B2 (en) * | 2014-10-13 | 2017-08-01 | Vmware, Inc. | Cross-cloud object mapping for hybrid clouds |
US10776209B2 (en) * | 2014-11-10 | 2020-09-15 | Commvault Systems, Inc. | Cross-platform virtual machine backup and replication |
US9983936B2 (en) | 2014-11-20 | 2018-05-29 | Commvault Systems, Inc. | Virtual machine change block tracking |
US20160162364A1 (en) * | 2014-12-03 | 2016-06-09 | Commvault Systems, Inc. | Secondary storage pruning |
US10050862B2 (en) | 2015-02-09 | 2018-08-14 | Cisco Technology, Inc. | Distributed application framework that uses network and application awareness for placing data |
US10037617B2 (en) | 2015-02-27 | 2018-07-31 | Cisco Technology, Inc. | Enhanced user interface systems including dynamic context selection for cloud-based networks |
US10708342B2 (en) | 2015-02-27 | 2020-07-07 | Cisco Technology, Inc. | Dynamic troubleshooting workspaces for cloud and network management systems |
US10382534B1 (en) | 2015-04-04 | 2019-08-13 | Cisco Technology, Inc. | Selective load balancing of network traffic |
US20160335109A1 (en) * | 2015-05-14 | 2016-11-17 | Netapp, Inc. | Techniques for data migration |
US10684876B2 (en) * | 2015-05-14 | 2020-06-16 | Netapp, Inc. | Migration of virtual machine data using native data paths |
US10476982B2 (en) | 2015-05-15 | 2019-11-12 | Cisco Technology, Inc. | Multi-datacenter message queue |
US9720721B2 (en) * | 2015-07-01 | 2017-08-01 | International Business Machines Corporation | Protected guests in a hypervisor controlled system |
US10034201B2 (en) | 2015-07-09 | 2018-07-24 | Cisco Technology, Inc. | Stateless load-balancing across multiple tunnels |
US9766825B2 (en) | 2015-07-22 | 2017-09-19 | Commvault Systems, Inc. | Browse and restore for block-level backups |
US10789207B2 (en) | 2015-07-27 | 2020-09-29 | Sas Institute Inc. | Distributed data storage grouping |
US10628194B2 (en) * | 2015-09-30 | 2020-04-21 | Netapp Inc. | Techniques for data migration |
US11005682B2 (en) | 2015-10-06 | 2021-05-11 | Cisco Technology, Inc. | Policy-driven switch overlay bypass in a hybrid cloud network environment |
US10067780B2 (en) | 2015-10-06 | 2018-09-04 | Cisco Technology, Inc. | Performance-based public cloud selection for a hybrid cloud environment |
US10462136B2 (en) | 2015-10-13 | 2019-10-29 | Cisco Technology, Inc. | Hybrid cloud security groups |
US10523657B2 (en) | 2015-11-16 | 2019-12-31 | Cisco Technology, Inc. | Endpoint privacy preservation with cloud conferencing |
US10205677B2 (en) | 2015-11-24 | 2019-02-12 | Cisco Technology, Inc. | Cloud resource placement optimization and migration execution in federated clouds |
US10084703B2 (en) | 2015-12-04 | 2018-09-25 | Cisco Technology, Inc. | Infrastructure-exclusive service forwarding |
US10367914B2 (en) | 2016-01-12 | 2019-07-30 | Cisco Technology, Inc. | Attaching service level agreements to application containers and enabling service assurance |
US10565067B2 (en) | 2016-03-09 | 2020-02-18 | Commvault Systems, Inc. | Virtual server cloud file system for virtual machine backup from cloud operations |
US10296368B2 (en) | 2016-03-09 | 2019-05-21 | Commvault Systems, Inc. | Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount) |
US9936019B2 (en) * | 2016-03-16 | 2018-04-03 | Google Llc | Efficient live-migration of remotely accessed data |
US9817592B1 (en) * | 2016-04-27 | 2017-11-14 | Netapp, Inc. | Using an intermediate virtual disk format for virtual disk conversion |
US10129177B2 (en) | 2016-05-23 | 2018-11-13 | Cisco Technology, Inc. | Inter-cloud broker for hybrid cloud networks |
US20180004649A1 (en) * | 2016-07-01 | 2018-01-04 | Intel Corporation | Techniques to Format a Persistent Memory File |
US10659283B2 (en) | 2016-07-08 | 2020-05-19 | Cisco Technology, Inc. | Reducing ARP/ND flooding in cloud environment |
US10432532B2 (en) | 2016-07-12 | 2019-10-01 | Cisco Technology, Inc. | Dynamically pinning micro-service to uplink port |
US10382597B2 (en) | 2016-07-20 | 2019-08-13 | Cisco Technology, Inc. | System and method for transport-layer level identification and isolation of container traffic |
US10263898B2 (en) | 2016-07-20 | 2019-04-16 | Cisco Technology, Inc. | System and method for implementing universal cloud classification (UCC) as a service (UCCaaS) |
US10142346B2 (en) | 2016-07-28 | 2018-11-27 | Cisco Technology, Inc. | Extension of a private cloud end-point group to a public cloud |
US10152386B1 (en) | 2016-07-29 | 2018-12-11 | Nutanix, Inc. | Efficient disaster rollback across heterogeneous storage systems |
US10567344B2 (en) | 2016-08-23 | 2020-02-18 | Cisco Technology, Inc. | Automatic firewall configuration based on aggregated cloud managed information |
US9697144B1 (en) | 2016-08-23 | 2017-07-04 | Red Hat, Inc. | Quality of service enforcement and data security for containers accessing storage |
US10747630B2 (en) | 2016-09-30 | 2020-08-18 | Commvault Systems, Inc. | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node |
US10523592B2 (en) | 2016-10-10 | 2019-12-31 | Cisco Technology, Inc. | Orchestration system for migrating user data and services based on user information |
US10152251B2 (en) | 2016-10-25 | 2018-12-11 | Commvault Systems, Inc. | Targeted backup of virtual machine |
US10162528B2 (en) | 2016-10-25 | 2018-12-25 | Commvault Systems, Inc. | Targeted snapshot based on virtual machine location |
US10678758B2 (en) | 2016-11-21 | 2020-06-09 | Commvault Systems, Inc. | Cross-platform virtual machine data and memory backup and replication |
US20180143880A1 (en) * | 2016-11-21 | 2018-05-24 | Commvault Systems, Inc. | Cross-platform virtual machine data and memory backup and resumption |
US10783046B2 (en) | 2016-11-22 | 2020-09-22 | Nutanix, Inc. | Executing resource management operations in distributed computing systems |
US11044162B2 (en) | 2016-12-06 | 2021-06-22 | Cisco Technology, Inc. | Orchestration of cloud and fog interactions |
US10326817B2 (en) | 2016-12-20 | 2019-06-18 | Cisco Technology, Inc. | System and method for quality-aware recording in large scale collaborate clouds |
US10334029B2 (en) | 2017-01-10 | 2019-06-25 | Cisco Technology, Inc. | Forming neighborhood groups from disperse cloud providers |
US10552191B2 (en) | 2017-01-26 | 2020-02-04 | Cisco Technology, Inc. | Distributed hybrid cloud orchestration model |
US10320683B2 (en) | 2017-01-30 | 2019-06-11 | Cisco Technology, Inc. | Reliable load-balancer using segment routing and real-time application monitoring |
US10671571B2 (en) | 2017-01-31 | 2020-06-02 | Cisco Technology, Inc. | Fast network performance in containerized environments for network function virtualization |
US20180239628A1 (en) * | 2017-02-22 | 2018-08-23 | Nutanix, Inc. | Hypervisor agnostic customization of virtual machines |
US10740193B2 (en) * | 2017-02-27 | 2020-08-11 | Commvault Systems, Inc. | Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount |
US20180276022A1 (en) | 2017-03-24 | 2018-09-27 | Commvault Systems, Inc. | Consistent virtual machine replication |
US10387073B2 (en) | 2017-03-29 | 2019-08-20 | Commvault Systems, Inc. | External dynamic virtual machine synchronization |
US11005731B2 (en) | 2017-04-05 | 2021-05-11 | Cisco Technology, Inc. | Estimating model parameters for automatic deployment of scalable micro services |
US10664352B2 (en) | 2017-06-14 | 2020-05-26 | Commvault Systems, Inc. | Live browsing of backed up data residing on cloned disks |
US11860855B1 (en) * | 2017-06-23 | 2024-01-02 | Amazon Technologies, Inc. | Storage service supporting data transformations |
US10382274B2 (en) | 2017-06-26 | 2019-08-13 | Cisco Technology, Inc. | System and method for wide area zero-configuration network auto configuration |
US10439877B2 (en) | 2017-06-26 | 2019-10-08 | Cisco Technology, Inc. | Systems and methods for enabling wide area multicast domain name system |
US10425288B2 (en) | 2017-07-21 | 2019-09-24 | Cisco Technology, Inc. | Container telemetry in data center environments with blade servers and switches |
US10892940B2 (en) | 2017-07-21 | 2021-01-12 | Cisco Technology, Inc. | Scalable statistics and analytics mechanisms in cloud networking |
US10601693B2 (en) | 2017-07-24 | 2020-03-24 | Cisco Technology, Inc. | System and method for providing scalable flow monitoring in a data center fabric |
US10541866B2 (en) | 2017-07-25 | 2020-01-21 | Cisco Technology, Inc. | Detecting and resolving multicast traffic performance issues |
US10353800B2 (en) | 2017-10-18 | 2019-07-16 | Cisco Technology, Inc. | System and method for graph based monitoring and management of distributed systems |
US11481362B2 (en) | 2017-11-13 | 2022-10-25 | Cisco Technology, Inc. | Using persistent memory to enable restartability of bulk load transactions in cloud databases |
US10705882B2 (en) | 2017-12-21 | 2020-07-07 | Cisco Technology, Inc. | System and method for resource placement across clouds for data intensive workloads |
US11595474B2 (en) | 2017-12-28 | 2023-02-28 | Cisco Technology, Inc. | Accelerating data replication using multicast and non-volatile memory enabled nodes |
US10877928B2 (en) | 2018-03-07 | 2020-12-29 | Commvault Systems, Inc. | Using utilities injected into cloud-based virtual machines for speeding up virtual machine backup operations |
US10657068B2 (en) | 2018-03-22 | 2020-05-19 | Intel Corporation | Techniques for an all persistent memory file system |
US10511534B2 (en) | 2018-04-06 | 2019-12-17 | Cisco Technology, Inc. | Stateless distributed load-balancing |
US10728361B2 (en) | 2018-05-29 | 2020-07-28 | Cisco Technology, Inc. | System for association of customer information across subscribers |
US10904322B2 (en) | 2018-06-15 | 2021-01-26 | Cisco Technology, Inc. | Systems and methods for scaling down cloud-based servers handling secure connections |
US10764266B2 (en) | 2018-06-19 | 2020-09-01 | Cisco Technology, Inc. | Distributed authentication and authorization for rapid scaling of containerized services |
US11019083B2 (en) | 2018-06-20 | 2021-05-25 | Cisco Technology, Inc. | System for coordinating distributed website analysis |
US10819571B2 (en) | 2018-06-29 | 2020-10-27 | Cisco Technology, Inc. | Network traffic optimization using in-situ notification system |
US10904342B2 (en) | 2018-07-30 | 2021-01-26 | Cisco Technology, Inc. | Container networking using communication tunnels |
US11055115B1 (en) * | 2018-08-09 | 2021-07-06 | Parallels International Gmbh | Virtual machine conversion in distributed system of remote desktops |
US11200196B1 (en) | 2018-10-10 | 2021-12-14 | Cigna Intellectual Property, Inc. | Data archival system and method |
US11200124B2 (en) | 2018-12-06 | 2021-12-14 | Commvault Systems, Inc. | Assigning backup resources based on failover of partnered data storage servers in a data storage management system |
US11321002B2 (en) | 2018-12-11 | 2022-05-03 | Hewlett Packard Enterprise Development Lp | Converting a virtual volume between volume types |
US11347707B2 (en) | 2019-01-22 | 2022-05-31 | Commvault Systems, Inc. | File indexing for virtual machine backups based on using live browse features |
US10872069B2 (en) | 2019-01-22 | 2020-12-22 | Commvault Systems, Inc. | File indexing for virtual machine backups in a data storage management system |
US10768971B2 (en) | 2019-01-30 | 2020-09-08 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data |
US10996974B2 (en) | 2019-01-30 | 2021-05-04 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data, including management of cache storage for virtual machine data |
US11347696B2 (en) * | 2019-02-19 | 2022-05-31 | Oracle International Corporation | System for transition from a hierarchical file system to an object store |
US11467753B2 (en) | 2020-02-14 | 2022-10-11 | Commvault Systems, Inc. | On-demand restore of virtual machine data |
US11442768B2 (en) | 2020-03-12 | 2022-09-13 | Commvault Systems, Inc. | Cross-hypervisor live recovery of virtual machines |
US11099956B1 (en) | 2020-03-26 | 2021-08-24 | Commvault Systems, Inc. | Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations |
US11500669B2 (en) | 2020-05-15 | 2022-11-15 | Commvault Systems, Inc. | Live recovery of virtual machines in a public cloud computing environment |
FR3110988B1 (fr) * | 2020-05-29 | 2024-02-02 | Sangle Ferriere Bruno | Procédé et système pour mettre à jour des fichiers |
CN112181924A (zh) * | 2020-09-27 | 2021-01-05 | 深圳市元征科技股份有限公司 | 文件转换方法、装置、设备及介质 |
US11656951B2 (en) | 2020-10-28 | 2023-05-23 | Commvault Systems, Inc. | Data loss vulnerability detection |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090216788A1 (en) * | 2008-02-27 | 2009-08-27 | Ocarina Networks | Multiple file compaction for network attached storage |
US20100299368A1 (en) * | 2009-05-20 | 2010-11-25 | Vmware, Inc. | Efficient Reconstruction of Virtual Disk Hierarchies Across Storage Domains |
US20110078680A1 (en) * | 2009-09-25 | 2011-03-31 | Oracle International Corporation | System and method to reconfigure a virtual machine image suitable for cloud deployment |
CN102819535A (zh) * | 2011-06-10 | 2012-12-12 | 戴尔产品有限公司 | 数据块迁移 |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3653159B2 (ja) * | 1997-04-01 | 2005-05-25 | 株式会社日立製作所 | 仮想計算機システム間の仮想計算機移動制御方法 |
US6704730B2 (en) | 2000-02-18 | 2004-03-09 | Avamar Technologies, Inc. | Hash file system and method for use in a commonality factoring system |
CA2331474A1 (en) | 2001-01-19 | 2002-07-19 | Stergios V. Anastasiadis | Stride-based disk space allocation scheme |
US7139781B2 (en) | 2003-04-29 | 2006-11-21 | International Business Machines Corporation | Managing filesystem versions |
US20050240584A1 (en) * | 2004-04-21 | 2005-10-27 | Hewlett-Packard Development Company, L.P. | Data protection using data distributed into snapshots |
US7257811B2 (en) * | 2004-05-11 | 2007-08-14 | International Business Machines Corporation | System, method and program to migrate a virtual machine |
EP1617341A1 (en) | 2004-07-16 | 2006-01-18 | International Business Machines Corporation | File operation management device |
US7814078B1 (en) | 2005-06-20 | 2010-10-12 | Hewlett-Packard Development Company, L.P. | Identification of files with similar content |
US7454592B1 (en) | 2006-02-16 | 2008-11-18 | Symantec Operating Corporation | Block-level and hash-based single-instance storage |
US7996835B2 (en) * | 2006-10-10 | 2011-08-09 | International Business Machines Corporation | System, method and program for managing communication with multiple configurations for virtual machine |
EP2102750B1 (en) | 2006-12-04 | 2014-11-05 | Commvault Systems, Inc. | System and method for creating copies of data, such as archive copies |
US8140625B2 (en) | 2007-02-20 | 2012-03-20 | Nec Laboratories America, Inc. | Method for operating a fixed prefix peer to peer network |
JP4438807B2 (ja) * | 2007-03-02 | 2010-03-24 | 日本電気株式会社 | 仮想マシンシステム、管理サーバ、仮想マシン移行方法及びプログラム |
US8196138B2 (en) * | 2007-04-19 | 2012-06-05 | International Business Machines Corporation | Method and system for migrating virtual machines between hypervisors |
US8046509B2 (en) | 2007-07-06 | 2011-10-25 | Prostor Systems, Inc. | Commonality factoring for removable media |
US8191063B2 (en) * | 2007-09-30 | 2012-05-29 | Symantex Corporation | Method for migrating a plurality of virtual machines by associating files and state information with a single logical container |
US8949585B2 (en) * | 2007-10-09 | 2015-02-03 | Vmware, Inc. | In-place conversion of virtual machine state |
US7747663B2 (en) | 2008-03-05 | 2010-06-29 | Nec Laboratories America, Inc. | System and method for content addressable storage |
US7886183B2 (en) * | 2008-08-07 | 2011-02-08 | Symantec Operating Corporation | Providing fault tolerant storage system to a cluster |
US20100107160A1 (en) * | 2008-10-29 | 2010-04-29 | Novell, Inc. | Protecting computing assets with virtualization |
US8856294B2 (en) * | 2009-06-01 | 2014-10-07 | Oracle International Corporation | System and method for converting a Java application into a virtual server image for cloud deployment |
US8639787B2 (en) * | 2009-06-01 | 2014-01-28 | Oracle International Corporation | System and method for creating or reconfiguring a virtual server image for cloud deployment |
US8478799B2 (en) | 2009-06-26 | 2013-07-02 | Simplivity Corporation | Namespace file system accessing an object store |
BRPI1013794A8 (pt) * | 2009-06-26 | 2017-10-10 | Simplivity Corp | Método de adaptar um processo de indexação de acesso uniforme com uma memória de acesso não uniforme e sistema de computador |
US8984503B2 (en) * | 2009-12-31 | 2015-03-17 | International Business Machines Corporation | Porting virtual images between platforms |
US8539484B1 (en) * | 2010-05-26 | 2013-09-17 | HotLink Corporation | Multi-platform computer system management for virtualized environments |
US8489699B2 (en) * | 2010-08-13 | 2013-07-16 | Vmware, Inc. | Live migration of virtual machine during direct access to storage over SR IOV adapter |
US9411517B2 (en) * | 2010-08-30 | 2016-08-09 | Vmware, Inc. | System software interfaces for space-optimized block devices |
US9519496B2 (en) * | 2011-04-26 | 2016-12-13 | Microsoft Technology Licensing, Llc | Detecting and preventing virtual disk storage linkage faults |
US20120278806A1 (en) * | 2011-04-29 | 2012-11-01 | Quantum Corporation | Data control system for virtual environment |
US9146766B2 (en) * | 2011-06-22 | 2015-09-29 | Vmware, Inc. | Consistent unmapping of application data in presence of concurrent, unquiesced writers and readers |
US9280378B2 (en) * | 2011-11-30 | 2016-03-08 | Red Hat, Inc. | Adjustment during migration to a different virtualization environment |
US10223204B2 (en) * | 2011-12-22 | 2019-03-05 | Intel Corporation | Apparatus and method for detecting and recovering from data fetch errors |
WO2013160933A1 (en) * | 2012-04-23 | 2013-10-31 | Hitachi, Ltd. | Computer system and virtual server migration control method for computer system |
US9501296B2 (en) * | 2012-05-18 | 2016-11-22 | Ca, Inc. | Hypervisor automation manager for starting an operation system with customization data from a disk image |
US9454392B2 (en) * | 2012-11-27 | 2016-09-27 | Red Hat Israel, Ltd. | Routing data packets between virtual machines using shared memory without copying the data packet |
US9092161B2 (en) * | 2012-12-05 | 2015-07-28 | Red Hat Israel, Ltd. | Selection of allocation policy and format for virtual machine disk images |
US9043576B2 (en) * | 2013-08-21 | 2015-05-26 | Simplivity Corporation | System and method for virtual machine conversion |
US10135687B2 (en) * | 2014-01-06 | 2018-11-20 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Virtual group policy based filtering within an overlay network |
-
2013
- 2013-08-21 US US13/972,555 patent/US9043576B2/en active Active
-
2014
- 2014-08-20 CA CA2921039A patent/CA2921039A1/en not_active Abandoned
- 2014-08-20 CN CN201480045910.XA patent/CN105493043B/zh active Active
- 2014-08-20 JP JP2016536408A patent/JP2016533586A/ja active Pending
- 2014-08-20 EP EP14759406.3A patent/EP3036626B1/en active Active
- 2014-08-20 WO PCT/US2014/051855 patent/WO2015026925A1/en active Application Filing
- 2014-08-20 AU AU2014308938A patent/AU2014308938B2/en not_active Ceased
-
2015
- 2015-05-21 US US14/718,652 patent/US9811522B2/en active Active
-
2017
- 2017-10-18 US US15/787,522 patent/US10762038B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090216788A1 (en) * | 2008-02-27 | 2009-08-27 | Ocarina Networks | Multiple file compaction for network attached storage |
US20100299368A1 (en) * | 2009-05-20 | 2010-11-25 | Vmware, Inc. | Efficient Reconstruction of Virtual Disk Hierarchies Across Storage Domains |
US20110078680A1 (en) * | 2009-09-25 | 2011-03-31 | Oracle International Corporation | System and method to reconfigure a virtual machine image suitable for cloud deployment |
CN102819535A (zh) * | 2011-06-10 | 2012-12-12 | 戴尔产品有限公司 | 数据块迁移 |
Non-Patent Citations (1)
Title |
---|
ANTONIO CELESTI等: "Improving Virtual Machine Migration in Federated Cloud Environments", 《2010 SECOND INTERNATIONAL CONFERENCE ON EVOLVING INTERNET》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107656795A (zh) * | 2017-08-21 | 2018-02-02 | 云宏信息科技股份有限公司 | 一种VMware平台的虚拟机转换到WinServer平台的实现方法及装置 |
US11689625B1 (en) * | 2022-04-25 | 2023-06-27 | Rovi Guides, Inc. | Systems and methods for fast start of applications in a cloud computing environment |
CN115454357A (zh) * | 2022-10-31 | 2022-12-09 | 广东睿江云计算股份有限公司 | 一种qcow2文件存储方法以及格式转换方法 |
CN115454357B (zh) * | 2022-10-31 | 2023-04-11 | 广东睿江云计算股份有限公司 | 一种qcow2文件存储方法以及格式转换方法 |
Also Published As
Publication number | Publication date |
---|---|
US9043576B2 (en) | 2015-05-26 |
AU2014308938B2 (en) | 2019-01-24 |
AU2014308938A1 (en) | 2016-02-18 |
CA2921039A1 (en) | 2015-02-26 |
US20150254256A1 (en) | 2015-09-10 |
JP2016533586A (ja) | 2016-10-27 |
US10762038B2 (en) | 2020-09-01 |
CN105493043B (zh) | 2019-03-19 |
WO2015026925A1 (en) | 2015-02-26 |
EP3036626A1 (en) | 2016-06-29 |
EP3036626B1 (en) | 2020-04-01 |
US9811522B2 (en) | 2017-11-07 |
US20150058382A1 (en) | 2015-02-26 |
US20180039640A1 (en) | 2018-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105493043B (zh) | 用于虚拟机转换的系统和方法 | |
US11436096B2 (en) | Object-level database restore | |
US11625439B2 (en) | Volume or virtual machine level backup and generating placeholders for virtual machine files | |
US20210133051A1 (en) | Creating a customized bootable image for a client computing device from an earlier image such as a backup copy | |
JP5878548B2 (ja) | 重複排除ストレージ・システム、その内部の合成バックアップを容易にする方法、及び、プログラム | |
CN106663047A (zh) | 用于优化的签名比较和数据复制的系统和方法 | |
US10089320B2 (en) | Method and apparatus for maintaining data consistency in an in-place-update file system with data deduplication | |
CN104054071A (zh) | 访问存储设备的方法和存储设备 | |
WO2016117007A1 (ja) | データベースシステム及びデータベース管理方法 | |
US10268411B1 (en) | Policy and heuristic based conversion of write-optimized virtual disk format into read-optimized virtual disk format |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170811 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: Massachusetts USA Applicant before: SimpliVT Corp. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |