CN114385076B - 一种基于共享存储的加速虚拟机磁盘克隆的方法及装置 - Google Patents

一种基于共享存储的加速虚拟机磁盘克隆的方法及装置 Download PDF

Info

Publication number
CN114385076B
CN114385076B CN202111502069.0A CN202111502069A CN114385076B CN 114385076 B CN114385076 B CN 114385076B CN 202111502069 A CN202111502069 A CN 202111502069A CN 114385076 B CN114385076 B CN 114385076B
Authority
CN
China
Prior art keywords
host
virtual
disk
cloning
virtual disk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111502069.0A
Other languages
English (en)
Other versions
CN114385076A (zh
Inventor
李宪状
冯振
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202111502069.0A priority Critical patent/CN114385076B/zh
Publication of CN114385076A publication Critical patent/CN114385076A/zh
Application granted granted Critical
Publication of CN114385076B publication Critical patent/CN114385076B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于共享存储的加速虚拟机磁盘克隆的方法及装置,属于虚拟化技术领域,所述方法步骤如下:获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆。本发明突破单台主机的性能限制,实现虚拟化集群内部虚拟磁盘克隆的速度的显著提升,减少虚拟磁盘克隆的时间,极大改善用户的使用体验。

Description

一种基于共享存储的加速虚拟机磁盘克隆的方法及装置
技术领域
本发明属于虚拟化技术领域,具体涉及一种基于共享存储的加速虚拟机磁盘克隆的方法及装置。
背景技术
随着服务器虚拟化技术的飞速发展,凭借其高资源利用率,可降低管理成本,以及实现更好的扩展性,越来越多企业的业务系统运行在虚拟化系统上。而在虚拟化系统的使用场景中,若管理员想复制一个跟现有的虚拟机一模一样的系统,则需要使用到虚拟化系统提供的克隆功能。
虚拟机一般分为配置文件和磁盘数据文件,配置文件占用空间较小,一般在较短的时间内就能克隆完成,但是虚拟机的磁盘数据文件,一般为百GB甚至几TB到几十TB均可能存在。目前现有的虚拟机磁盘数据文件全量复制克隆的方案是通过主机的CPU、内存以及网络带宽性能进行磁盘所在存储池的读写操作。在不考虑存储池的I/O性能限制前提下,虚拟机的磁盘数据文件克隆的速度,基本取决于主机的CPU、内存以及网络带宽性能。在某些用户现场,若主机电子元器件老化或者本身性能配置不高,将会直接影响虚拟机的磁盘数据文件克隆的速度,严重影响用户的虚拟化系统使用体验。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种基于共享存储的加速虚拟机磁盘克隆的方法及装置,是非常有必要的。
发明内容
针对现有技术的上述现有虚拟机的磁盘数据文件克隆速度受限于主机的CPU、内存及网络宽度性能,在主机老化及低配置时,克隆速度低,影响用户的虚拟化系统使用体验的缺陷,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的方法及装置,以解决上述技术问题。
第一方面,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的方法,包括如下步骤:
S1.获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;
S2.当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;
S3.虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;
S4.将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆。
进一步地,步骤S1具体步骤如下:
S11.获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
S12.设置各主机对共享存储池均有读写权限;
S13.在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
S14.在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联。虚拟机运行在主机上,虚拟机使用的虚拟磁盘在共享存储池中。
进一步地,步骤S2具体步骤如下:
S21.获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
S22.监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
S23.根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件。对虚拟化集群内主机进行监控的目的是利用集群内相对空闲的主机的CPU、内存及网络带宽性能,对虚拟磁盘的数据文件进行并行克隆。
进一步地,步骤S23具体步骤如下:
S231.根据如下算法权重公式计算各主机的分片权重:
某主机的算法权重=1-(该主机的CPU使用率×CPU比重常数+该主机的内存使用率×内存比重常数),其中CPU比重常数+内存比重常数=1;
每个主机的算法权重即为该主机的分片权重;
S232.获取虚拟磁盘的数据文件大小,按照每个主机的分片权重将虚拟磁盘划分为若干个分片的虚拟磁盘数据文件,每个主机对应各自分片的虚拟磁盘数据文件。CPU比重常数及内存比重常数根据需求进行设置,还可设置网络带宽性能的比重常数。
进一步地,步骤S3具体步骤如下:
S31.虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
S32.各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件。对虚拟磁盘的数据文件并行执行克隆,大大提高了克隆速度。
进一步地,步骤S4具体步骤如下:
S41.将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
S42.判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
若一致,进入步骤S43;
若不一致,返回步骤S2;
S43.虚拟机的虚拟磁盘的数据文件的克隆完成。将分片的克隆文件进行整合,得到最终所需克隆文件整体。
第二方面,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的装置,包括:
虚拟化集群配置模块,用于获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;
磁盘分片模块,用于当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;
分片克隆模块,用于虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;
分片整合模块,用于将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆。
进一步地,虚拟化集群配置模块包括:
共享存储池挂载单元,用于获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
主机权限设置单元,用于设置各主机对共享存储池均有读写权限;
虚拟机与主机对应单元,用于在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
虚拟磁盘关联单元,用于在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联。
进一步地,磁盘分片模块包括:
主机监控单元,用于获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
主机CPU及内存使用率监测单元,用于监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
虚拟磁盘分片单元,用于根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件。
进一步地,虚拟磁盘分片单元包括:
分片权重计算子单元,用于根据如下算法权重公式计算各主机的分片权重:
某主机的算法权重=1-(该主机的CPU使用率×CPU比重常数+该主机的内存使用率×内存比重常数),其中CPU比重常数+内存比重常数=1;
每个主机的算法权重即为该主机的分片权重;
磁盘分片子单元,用于获取虚拟磁盘的数据文件大小,按照每个主机的分片权重将虚拟磁盘划分为若干个分片的虚拟磁盘数据文件,每个主机对应各自分片的虚拟磁盘数据文件。
进一步地,分片克隆模块包括:
磁盘分片查找单元,用于虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
文件克隆单元,用于各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件;
分片整合模块包括:
分片整合单元,用于将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
整合结果判断单元,用于判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
克隆完成判定单元,用于当克隆磁盘的数据文件与原虚拟磁盘的数据文件不一致时,判定虚拟机的虚拟磁盘的数据文件的克隆完成。
本发明的有益效果在于:
本发明提供的基于共享存储的加速虚拟机磁盘克隆的方法及装置,通过有效整合虚拟化集群内主机的CPU、内存和网络带宽性能,突破单台主机的性能限制,实现虚拟化集群内部虚拟磁盘克隆的速度的显著提升,在虚拟磁盘数据文件较大的场景下,减少虚拟磁盘克隆的时间,极大改善用户的使用体验。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的基于共享存储的加速虚拟机磁盘克隆的方法实施例1流程示意图。
图2是本发明的基于共享存储的加速虚拟机磁盘克隆的方法实施例2流程示意图。
图3是本发明的基于共享存储的加速虚拟机磁盘克隆的装置示意图。
图中,1-虚拟化集群配置模块;1.1-共享存储池挂载单元;1.2-主机权限设置单元;1.3-虚拟机与主机对应单元;1.4-虚拟磁盘关联单元;2-磁盘分片模块;2.1-主机监控单元;2.2-主机CPU及内存使用率监测单元;2.3-虚拟磁盘分片单元;3-分片克隆模块;3.1-磁盘分片查找单元;3.2-文件克隆单元;4-分片整合模块;4.1-分片整合单元;4.2-整合结果判断单元;4.3-克隆完成判定单元。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例1:
如图1所示,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的方法,包括如下步骤:
S1.获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;
S2.当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;
S3.虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;
S4.将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆。
实施例2:
如图2所示,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的方法,包括如下步骤:
S1.获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;具体步骤如下:
S11.获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
S12.设置各主机对共享存储池均有读写权限;
S13.在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
S14.在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联;
S2.当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;具体步骤如下:
S21.获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
S22.监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
S23.根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件;
S3.虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;具体步骤如下:
S31.虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
S32.各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件;
S4.将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆;具体步骤如下:
S41.将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
S42.判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
若一致,进入步骤S43;
若不一致,返回步骤S2;
S43.虚拟机的虚拟磁盘的数据文件的克隆完成。
实施例3:
如图2所示,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的方法,包括如下步骤:
S1.获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;具体步骤如下:
S11.获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
S12.设置各主机对共享存储池均有读写权限;
S13.在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
S14.在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联;
S2.当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;具体步骤如下:
S21.获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
S22.监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
S23.根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件;具体步骤如下:
S231.根据如下算法权重公式计算各主机的分片权重:
某主机的算法权重=1-(该主机的CPU使用率×CPU比重常数+该主机的内存使用率×内存比重常数),其中CPU比重常数+内存比重常数=1;
每个主机的算法权重即为该主机的分片权重;
S232.获取虚拟磁盘的数据文件大小,按照每个主机的分片权重将虚拟磁盘划分为若干个分片的虚拟磁盘数据文件,每个主机对应各自分片的虚拟磁盘数据文件;
S3.虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;具体步骤如下:
S31.虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
S32.各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件;
S4.将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆;具体步骤如下:
S41.将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
S42.判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
若一致,进入步骤S43;
若不一致,返回步骤S2;
S43.虚拟机的虚拟磁盘的数据文件的克隆完成。
上述实施例3中,以虚拟化集群内有三台主机为例,第一主机、第二主机及第三主机均挂载到共享存储池,并设置三台主机对共享存储池均有读写权限;
其中第一主机上有虚拟机正在运行,在共享存储池创建虚拟磁盘,并建立虚拟磁盘与虚拟机的关联;
当需要对虚拟机执行克隆动作时,需要对虚拟磁盘的数据文件进行全量拷贝动作,原有的方式是,由第一主机发起克隆拷贝动作,而整个克隆过程依赖于第一主机的CPU、内存及网络宽度性能,以虚拟磁盘大小为900GB为例,当第一主机的克隆速度为20MB/s时,总的克隆时间=900*1024MB/20MB/s=46080s=12.8h;
而采用本发明的方式,以CPU比重常数为0.7,内存比重常数为0.3为例,当虚拟化集群内发起克隆虚拟机的请求后,首先将虚拟机的的虚拟磁盘数据文件进行分片,监测第一主机、第二主机以及第三主机在最近的5分钟之内的CPU和内存使用率,根据法权重公式分别计算三个主机的分片权重:
某主机的算法权重=1-(该主机的CPU使用率×0.7+该主机的内存使用率×0.3);
以第一主机的CPU使用率为30%,内存使用率为80%,第二主机的CPU使用率为90%,内存使用率为20%,第三主机的CPU使用率为10%,内存使用率为60%为例,计算三个主机分片权重如下:
第一主机的分片权重=1-(30%×0.7+80%×0.3)=0.55;
第二主机的分片权重=1-(90%×0.7+20%×0.3)=0.31;
第三主机的分片权重=1-(10%×0.7+60%×0.3)=0.75;
当虚拟磁盘大小为900G时,将虚拟磁盘划分为三个分片的虚拟磁盘数据文件,
第一分片的虚拟磁盘数据文件大小=900GB×0.55/(0.55+0.31+0.75)=307GB;
第二分片的虚拟磁盘数据文件大小=900GB×0.31/(0.55+0.31+0.75)=173GB;
第三分片的虚拟磁盘数据文件大小=900GB×0.75/(0.55+0.31+0.75)=420GB;
第一主机负责读取第一分片的虚拟磁盘数据文件,执行克隆生成第一分片的克隆数据文件;
第二主机负责读取第二分片的虚拟磁盘数据文件,执行克隆生成第二分片的克隆数据文件;
第三主机负责读取第三分片的虚拟磁盘数据文件,执行克隆生成第三分片的克隆数据文件;
在不考虑共享存储池I/O上限的前提下,以第一主机的拷贝速度为20MB/s,第二主机的拷贝速度为13MB/s,第三主机的拷贝速度为28MB/s为例,计算三个分片的虚拟磁盘数据文件的拷贝时间如下:
第一分片的虚拟磁盘数据文件的拷贝时间=307GB*1024(MB)/20(MB/s)=4.37h;
第二分片的虚拟磁盘数据文件的拷贝时间=173GB*1024(MB)/13(MB/s)=3.79h;
第三分片的虚拟磁盘数据文件的拷贝时间=420GB*1024(MB)/28(MB/s)=4.27h;
根据木桶效应,取三个时间中的最长时间为虚拟磁盘全量拷贝完成时间为4.37h,与原有只采用第一主机进行拷贝时的12.8h,时间成本减少两倍多。
实施例4:
如图3所示,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的装置,包括:
虚拟化集群配置模块1,用于获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;
磁盘分片模块2,用于当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;
分片克隆模块3,用于虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;
分片整合模块4,用于将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆。
实施例5:
如图3所示,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的装置,包括:
虚拟化集群配置模块1,用于获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;虚拟化集群配置模块(1)包括:
共享存储池挂载单元1.1,用于获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
主机权限设置单元1.2,用于设置各主机对共享存储池均有读写权限;
虚拟机与主机对应单元1.3,用于在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
虚拟磁盘关联单元1.4,用于在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联;
磁盘分片模块2,用于当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;磁盘分片模块2包括:
主机监控单元2.1,用于获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
主机CPU及内存使用率监测单元2.2,用于监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
虚拟磁盘分片单元2.3,用于根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件;
分片克隆模块3,用于虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;分片克隆模块3包括:
磁盘分片查找单元3.1,用于虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
文件克隆单元3.2,用于各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件;
分片整合模块4,用于将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆;分片整合模块4包括:
分片整合单元4.1,用于将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
整合结果判断单元4.2,用于判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
克隆完成判定单元4.3,用于当克隆磁盘的数据文件与原虚拟磁盘的数据文件不一致时,判定虚拟机的虚拟磁盘的数据文件的克隆完成。
实施例6:
如图3所示,本发明提供一种基于共享存储的加速虚拟机磁盘克隆的装置,包括:
虚拟化集群配置模块1,用于获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;虚拟化集群配置模块(1)包括:
共享存储池挂载单元1.1,用于获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
主机权限设置单元1.2,用于设置各主机对共享存储池均有读写权限;
虚拟机与主机对应单元1.3,用于在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
虚拟磁盘关联单元1.4,用于在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联;
磁盘分片模块2,用于当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;磁盘分片模块2包括:
主机监控单元2.1,用于获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
主机CPU及内存使用率监测单元2.2,用于监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
虚拟磁盘分片单元2.3,用于根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件;虚拟磁盘分片单元2.3包括:
分片权重计算子单元,用于根据如下算法权重公式计算各主机的分片权重:
某主机的算法权重=1-(该主机的CPU使用率×CPU比重常数+该主机的内存使用率×内存比重常数),其中CPU比重常数+内存比重常数=1;
每个主机的算法权重即为该主机的分片权重;
磁盘分片子单元,用于获取虚拟磁盘的数据文件大小,按照每个主机的分片权重将虚拟磁盘划分为若干个分片的虚拟磁盘数据文件,每个主机对应各自分片的虚拟磁盘数据文件;
分片克隆模块3,用于虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;分片克隆模块3包括:
磁盘分片查找单元3.1,用于虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
文件克隆单元3.2,用于各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件;
分片整合模块4,用于将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆;分片整合模块4包括:
分片整合单元4.1,用于将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
整合结果判断单元4.2,用于判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
克隆完成判定单元4.3,用于当克隆磁盘的数据文件与原虚拟磁盘的数据文件不一致时,判定虚拟机的虚拟磁盘的数据文件的克隆完成。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (7)

1.一种基于共享存储的加速虚拟机磁盘克隆的方法,其特征在于,包括如下步骤:
S1.获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;
S2.当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;步骤S2具体步骤如下:
S21.获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
S22.监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
S23.根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件;步骤S23具体步骤如下:
S231.根据如下算法权重公式计算各主机的分片权重:
某主机的算法权重=1-(该主机的CPU使用率×CPU比重常数+该主机的内存使用率×内存比重常数),其中CPU比重常数+内存比重常数=1;
每个主机的算法权重即为该主机的分片权重;
S232.获取虚拟磁盘的数据文件大小,按照每个主机的分片权重将虚拟磁盘划分为若干个分片的虚拟磁盘数据文件,每个主机对应各自分片的虚拟磁盘数据文件;
S3.虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;
S4.将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆。
2.如权利要求1所述的基于共享存储的加速虚拟机磁盘克隆的方法,其特征在于,步骤S1具体步骤如下:
S11.获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
S12.设置各主机对共享存储池均有读写权限;
S13.在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
S14.在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联。
3.如权利要求2所述的基于共享存储的加速虚拟机磁盘克隆的方法,其特征在于,步骤S3具体步骤如下:
S31.虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
S32.各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件。
4.如权利要求3所述的基于共享存储的加速虚拟机磁盘克隆的方法,其特征在于,步骤S4具体步骤如下:
S41.将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
S42.判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
若一致,进入步骤S43;
若不一致,返回步骤S2;
S43.虚拟机的虚拟磁盘的数据文件的克隆完成。
5.一种基于共享存储的加速虚拟机磁盘克隆的装置,其特征在于,包括:
虚拟化集群配置模块(1),用于获取虚拟化集群的配置信息,并设置虚拟化集群挂载共享存储池,为虚拟机配置虚拟磁盘;
磁盘分片模块(2),用于当需要对虚拟机执行克隆动作时,根据虚拟化集群内各主机的CPU及内存使用率对虚拟磁盘的数据文件进行分片,生成若干分片的虚拟磁盘数据文件;磁盘分片模块(2)包括:
主机监控单元(2.1),用于获取到虚拟机执行克隆动作的请求时,启动虚拟化集群的主机监控;
主机CPU及内存使用率监测单元(2.2),用于监测虚拟化集群内各主机设定时间段内的CPU和内存使用率;
虚拟磁盘分片单元(2.3),用于根据算法权重公式计算各主机的分片权重,并根据各主机的分片权重对虚拟磁盘的数据文件执行分片,生成若干分片的虚拟磁盘数据文件;虚拟磁盘分片单元包括:
分片权重计算子单元,用于根据如下算法权重公式计算各主机的分片权重:
某主机的算法权重=1-(该主机的CPU使用率×CPU比重常数+该主机的内存使用率×内存比重常数),其中CPU比重常数+内存比重常数=1;
每个主机的算法权重即为该主机的分片权重;
磁盘分片子单元,用于获取虚拟磁盘的数据文件大小,按照每个主机的分片权重将虚拟磁盘划分为若干个分片的虚拟磁盘数据文件,每个主机对应各自分片的虚拟磁盘数据文件;
分片克隆模块(3),用于虚拟集群内各主机根据对应分片的虚拟磁盘数据文件并行执行克隆,生成对应分片的克隆数据文件;
分片整合模块(4),用于将各分片的克隆数据文件进行整合,完成虚拟机的虚拟磁盘的数据文件的克隆。
6.如权利要求5所述的基于共享存储的加速虚拟机磁盘克隆的装置,其特征在于,虚拟化集群配置模块(1)包括:
共享存储池挂载单元(1.1),用于获取虚拟集化集群的主机数目,并为各主机挂载共享存储池;
主机权限设置单元(1.2),用于设置各主机对共享存储池均有读写权限;
虚拟机与主机对应单元(1.3),用于在某个主机创建虚拟机,或者获取已有虚拟机运行所在的主机;
虚拟磁盘关联单元(1.4),用于在共享存储池创建虚拟磁盘,并建立虚拟机与虚拟磁盘的关联。
7.如权利要求5所述的基于共享存储的加速虚拟机磁盘克隆的装置,其特征在于,分片克隆模块(3)包括:
磁盘分片查找单元(3.1),用于虚拟化集群内各主机查找各自对应分片的虚拟磁盘数据文件;
文件克隆单元(3.2),用于各主机读取对应分片的虚拟磁盘数据文件,并行执行文件克隆,在共享存储池内生成若干分片的克隆数据文件;
分片整合模块(4)包括:
分片整合单元(4.1),用于将各分片的克隆数据文件进行整合,生成克隆磁盘的数据文件;
整合结果判断单元(4.2),用于判断克隆磁盘的数据文件与原虚拟磁盘的数据文件是否一致;
克隆完成判定单元(4.3),用于当克隆磁盘的数据文件与原虚拟磁盘的数据文件不一致时,判定虚拟机的虚拟磁盘的数据文件的克隆完成。
CN202111502069.0A 2021-12-09 2021-12-09 一种基于共享存储的加速虚拟机磁盘克隆的方法及装置 Active CN114385076B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111502069.0A CN114385076B (zh) 2021-12-09 2021-12-09 一种基于共享存储的加速虚拟机磁盘克隆的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111502069.0A CN114385076B (zh) 2021-12-09 2021-12-09 一种基于共享存储的加速虚拟机磁盘克隆的方法及装置

Publications (2)

Publication Number Publication Date
CN114385076A CN114385076A (zh) 2022-04-22
CN114385076B true CN114385076B (zh) 2023-08-25

Family

ID=81195081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111502069.0A Active CN114385076B (zh) 2021-12-09 2021-12-09 一种基于共享存储的加速虚拟机磁盘克隆的方法及装置

Country Status (1)

Country Link
CN (1) CN114385076B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1504905A (zh) * 2002-12-05 2004-06-16 �Ҵ���˾ 实现重叠操作的方法和系统
CN103890738A (zh) * 2011-08-30 2014-06-25 网络存储技术公司 用于保留克隆分离操作之后的存储对象中的消重的系统和方法
CN105653348A (zh) * 2015-12-30 2016-06-08 深圳市创想天空科技股份有限公司 一种虚拟机的克隆方法及系统
CN110704161A (zh) * 2019-09-27 2020-01-17 联想(北京)有限公司 虚拟机创建方法、装置及计算机设备
CN111651239A (zh) * 2020-06-04 2020-09-11 深信服科技股份有限公司 一种虚拟机克隆方法、装置、设备、介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1504905A (zh) * 2002-12-05 2004-06-16 �Ҵ���˾ 实现重叠操作的方法和系统
CN103890738A (zh) * 2011-08-30 2014-06-25 网络存储技术公司 用于保留克隆分离操作之后的存储对象中的消重的系统和方法
CN105653348A (zh) * 2015-12-30 2016-06-08 深圳市创想天空科技股份有限公司 一种虚拟机的克隆方法及系统
CN110704161A (zh) * 2019-09-27 2020-01-17 联想(北京)有限公司 虚拟机创建方法、装置及计算机设备
CN111651239A (zh) * 2020-06-04 2020-09-11 深信服科技股份有限公司 一种虚拟机克隆方法、装置、设备、介质

Also Published As

Publication number Publication date
CN114385076A (zh) 2022-04-22

Similar Documents

Publication Publication Date Title
US11960726B2 (en) Method and apparatus for SSD storage access
WO2017201977A1 (zh) 一种数据写、读方法、装置及分布式对象存储集群
US9128765B2 (en) Assigning restored virtual machine based on past application usage of requesting user
US20160291876A1 (en) Storage Pool Capacity Management
US11841861B1 (en) Constrained query execution
CN106406759B (zh) 一种数据存储方法及装置
US20120303905A1 (en) Method and apparatus for implementing cache
WO2021098267A1 (zh) 一种磁盘处理的方法、系统、设备及可读存储介质
WO2013078583A1 (zh) 优化数据访问的方法及装置、优化数据存储的方法及装置
US10884980B2 (en) Cognitive file and object management for distributed storage environments
CN111866209A (zh) 一种为云主机分配网卡的方法与设备
WO2019000949A1 (zh) 分布式存储系统中元数据存储方法、系统及存储介质
CN108475201B (zh) 一种虚拟机启动过程中的数据获取方法和云计算系统
CN114996173B (zh) 一种管理存储设备写操作的方法和装置
WO2017157145A1 (zh) 一种数据预取方法以及装置
CN115114232A (zh) 一种历史版本对象列举方法、装置及其介质
US9043535B1 (en) Minimizing application response time
CN114281989A (zh) 基于文本相似度的数据去重方法、装置及存储介质和服务器
CN116848517A (zh) 使用基于数据指纹的数据地址的高速缓存编索引
CN106970830B (zh) 一种分布式虚拟机的存储控制方法及虚拟机
CN114385076B (zh) 一种基于共享存储的加速虚拟机磁盘克隆的方法及装置
US11301436B2 (en) File storage method and storage apparatus
EP4321981A1 (en) Data processing method and apparatus
US20210311654A1 (en) Distributed Storage System and Computer Program Product
CN112835967B (zh) 基于分布式存储系统的数据处理方法、装置、设备和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant