CN105094948A - 一种虚拟机的系统镜像文件更新方法、云数据中心及系统 - Google Patents
一种虚拟机的系统镜像文件更新方法、云数据中心及系统 Download PDFInfo
- Publication number
- CN105094948A CN105094948A CN201510465356.7A CN201510465356A CN105094948A CN 105094948 A CN105094948 A CN 105094948A CN 201510465356 A CN201510465356 A CN 201510465356A CN 105094948 A CN105094948 A CN 105094948A
- Authority
- CN
- China
- Prior art keywords
- image file
- virtual machine
- computational resource
- system image
- resource pond
- 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
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明实施例公开了一种虚拟机的系统镜像文件管理方法,包括:接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,根据目标计算资源池创建第三虚拟机;在第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和系统镜像文件的增量数据;根据系统镜像文件的增量数据和第一系统母卷的数据合成新的系统镜像文件;在目标计算资源池中创建第三虚拟机的第二系统母卷,并将新的系统镜像文件存储至第二系统母卷;根据第二系统母卷生成第二快照,根据第二快照创建第三链接克隆卷,以及根据第三链接克隆卷启动第三虚拟机。本发明实施例还公开了一种云数据中心和系统。采用本发明,减少系统镜像文件的更新时间和存储空间。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种虚拟机的系统镜像文件更新方法、云数据中心及系统。
背景技术
在目前的云数据中心中,通常包括计算服务器、对象存储服务器、镜像文件服务、认证服务、用户界面服务等。其中,镜像文件服务事项虚拟机镜像文件查找及检索系统,并为用户的虚拟机提供系统镜像文件,满足用户对操作系统的需求。镜像文件空间可以加载Ubuntu、windowsXP、centos等操作系统。各个操作系统由不同的版本,通常镜像文件的数量非常多。
在云数据中心的运营过程中,当需要对镜像文件进行更新时,管理员需要进行新的镜像文件的制作和分发,依次将新的镜像文件导入到虚拟机中,30-40个镜像文件往往需要耗费数周的时间来完成。目前的镜像文件的更新方式的数据量较大,因此备份所需时间较长,备份数据占据的存储空间也较大。而且需要对不同的云数据中心上的镜像文件进行更新时,数据的传输量也很大
发明内容
本发明实施例所要解决的技术问题在于,提供一种虚拟机的系统镜像文件更新方法、云数据中心及系统。可解决镜像文件更新时间长且占用存储空间大的问题。
为了解决上述技术问题,本发明实施例提供了一种虚拟机的系统镜像文件的更新方法,包括:
云数据中心接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
结合第一方面,在第一种可能的实现方式中,所述从多个计算资源池中选择目标计算资源池包括:
获取所述多个计算资源池中各个计算资源池的资源利用率,以及将资源利用率最小的计算资源池作为目标计算资源池;其中,所述资源利用率包括:CPU利用率、磁盘利用率和内存利用率中的一种或多种。
结合第一方面,在第二种可能的实现方式中,所述云数据中心在接收到虚拟机创建请求的情况下,从多个计算资源池中选择目标计算资源池,以及在所述目标计算资源出中创建第三虚拟机之前,还包括:
在所述系统镜像文件需要更新的情况下,获取第一快照;其中,所述第一快照是根据所述预设的第一系统母卷生成的;
根据所述第一快照创建第二链接克隆卷,并根据所述第二链接克隆卷启动第二虚拟机;
在通过所述第二虚拟机完成对所述系统镜像文件的更新操作后,将新的系统镜像文件存储至所述第二链接克隆卷;
关闭所述第二虚拟机,以及对所述第二链接克隆卷中的所述新的系统镜像文件和所述第一快照进行数据差分处理得到所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述获取根据所述第一快照包括:
提取所述系统镜像文件,并将所述系统镜像文件写入创建的第一系统母卷;
将所述第一系统母卷克隆到除所述目标计算资源池的其他计算资源池中;
根据所述目标计算资源池中的第一系统母卷生成所述第一快照,以及根据所述第一快照创建第一链接克隆卷;
根据所述第一链接克隆卷启动第一虚拟机。
结合第一方面的第二种可能的实现方式,在第四种可能的实现方式中,所述关闭所述第二虚拟机,以及根据所述更新后的第二链接克隆卷和所述第一快照生成所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态,还包括:
确定与所述云数据中心关联的其他云数据中心的网络地址,根据所述网络地址向其他云数据中心分发所系统镜像文件的增量数据。
本发明实施例第二方面提供了一种云数据中心,包括:
创建模块,用于接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
获取模块,用于在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
合成模块,用于根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
存储模块,用于在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
启动模块,用于根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
结合第二方面,在第一种可能的实现方式中,所述创建模块包括:
获取所述多个计算资源池中各个计算资源池的资源利用率,以及将资源利用率最小的计算资源池作为目标计算资源池;其中,所述资源利用率包括:CPU利用率、磁盘利用率和内存利用率中的一种或多种。
结合第二方面,在第二种可能的实现方式中,还包括:
配置模块,用于在所述系统镜像文件需要更新的情况下,获取第一快照;其中,所述第一快照是根据所述预设的第一系统母卷生成的;
根据所述第一快照创建第二链接克隆卷,并根据所述第二链接克隆卷启动第二虚拟机;
在通过所述第二虚拟机完成对所述系统镜像文件的更新操作后,将新的系统镜像文件存储至所述第二链接克隆卷;
关闭所述第二虚拟机,以及对所述第二链接克隆卷中的所述新的系统镜像文件和所述第一快照进行数据差分处理得到所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述配置模块用于:
提取所述系统镜像文件,并将所述系统镜像文件写入创建的第一系统母卷;
将所述第一系统母卷克隆到除所述目标计算资源池的其他计算资源池中;
根据所述目标计算资源池中的第一系统母卷生成所述第一快照,以及根据所述第一快照创建第一链接克隆卷;
根据所述第一链接克隆卷启动第一虚拟机。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,还包括:
分发模块,用于确定与所述云数据中心关联的其他云数据中心的网络地址,根据所述网络地址向其他云数据中心分发所系统镜像文件的增量数据。
本发明实施例第三方面提供了一种云通信系统,包括云客户端和至少一个云数据中心,其中,所述云客户端用于在系统镜像文件需要更新时,向数据中心发送虚拟机创建请求;
云数据中心用于接收到所述云客户端发送的虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
实施本发明实施例,具有如下有益效果:
云数据中心需要更新虚拟机的系统镜像文件时,根据旧的系统镜像文件和增量数据合成新的镜像文件,能有效减少镜像文件更新时间和存储空间的占用,同时使用快照和链接克隆卷启动虚拟机,能减少虚拟机的部署时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种虚拟机的系统镜像文件管理方法的流程示意图;
图2是本发明实施例提供的一种虚拟机的系统镜像文件管理方法的另一流程示意图;
图3-图6是本发明实施例提供的一种虚拟机的系统镜像文件管理方法的原理示意图;
图7是本发明实施例提供的一种云数据中心的结构示意图;
图8是本发明实施例提供的一种云数据中心的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,为本发明实施例提供的一种虚拟机的系统镜像文件更新方法的流程示意图,在本发明实施例中,所述方法包括:
S101、云数据中心接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机。
具体的,云数据中心的计算能力、存储能力和网络能力进行虚拟化,划分为至少一个计算资源池,用户可利用计算资源池中的计算资源创建虚拟机。云数据中心接收虚拟机创建请求时,从多个计算资源池中选择一个目标计算资源池,目标计算资源池可以是其中任意一个计算资源池或根据预设的策略选择的一个计算资源池,利用选择的目标计算资源池创建第三虚拟机。
S102、在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据。
具体的,第三虚拟机需要使用系统镜像文件进行启动,云数据中心判断第三虚拟机的系统镜像文件是否发生更新,在系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据。其中第一系统母卷用于存储系统镜像文件,系统镜像文件的增量数据为新的系统镜像文件和旧的系统镜像文件的之间进行数据差分运算得到的数据。其中,数据差分算法可以是:diff、bsDiff、Xdelta、RTPatch、ExeDiff等
S103、根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件。
具体的,根据系统镜像文件的增量数据和第一系统母卷的数据合成新的系统镜像文件,合成算法为差分算法的逆运算,第一系统母卷的数据为旧的系统镜像文件。
S104、在所述目标资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷。
具体的,在目标计算资源池中创建第三虚拟机的第二系统母卷,并将合成后得到的新的系统母卷存储至第二系统母卷中。
S105、根据所述第二系统母卷的数据生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
具体的,数据根据第二系统母卷中的新的系统镜像文件创建第二快照,根据第二快照创建第三链接克隆卷,根据第三链接克隆卷启动虚拟机,虚拟机在第三链接克隆卷上进行读写操作,同时减少存储资源的占用。
实施本发明的实施例,云数据中心需要更新虚拟机的系统镜像文件时,根据旧的系统镜像文件和增量数据合成新的镜像文件,能有效减少镜像文件更新时间和存储空间的占用,同时使用快照和链接克隆卷启动虚拟机,能减少虚拟机的部署时间。
参见图2,为本发明实施例提供的一种虚拟机的系统镜像文件的管理方法,在本发明实施例中,所述方法包括:
S201、提取系统镜像文件,并将系统镜像文件写入创建的第一系统母卷中。
具体的,系统镜像文件可存储在本地或远程的存储服务器上,系统镜像文件可以是windows镜像文件、Ubuntu镜像文件或Linux镜像文件等。云数据中心在多个计算资源池中选择一个计算资源池作为目标计算资源池,在目标计算资源池中创建第一母卷,并将系统镜像文件存储至第一母卷中,计算资源池的存储能力可由块存储集群提供,块存储集群的组织形式本发明不作限制。其中,创建第一母卷的方法可以是:云数据中心调用块存储集群提供的镜像创建卷API:create_volume_from_image(image_id,pool_id)创建第一母卷,并将系统镜像文件存储至创建的第一母卷中,image_id表示系统镜像文件的标识,pool_id表示计算资源池的标识。
S202、将第一系统母卷克隆至除目标计算资源池的其他计算资源池中。
具体的,云数据中心将第一系统母卷克隆至除目标计算资源池的其他计算资源池中,其他计算资源池中的系统母卷的数据和目标计算资源池中的系统母卷中的数据相同,这样便于其他计算资源池可以利用目标计算资源池中的增量数据进行系统镜像文件的更新。其中,卷克隆的方法可以是:云数据中心调用卷克隆API:clone_volume(volume_id,from_pool_id,to_pool_id),volume_id表示复制的卷,本实施例指第一系统母卷,from_pool_id表示源计算资源池的标识,本实施例指目标计算资源池的标识,to_pool_id表示目的计算资源池的标识,本实施例指多个计算资源池中除目标计算资源池的其他计算资源池的标识。
S203、根据目标计算资源池中的第一系统母卷生成第一快照,以及根据第一快照创建第一链接克隆卷。
具体的,当用户要创建虚拟机时,云数据中心根据第一系统母卷生成第一快照,并根据第一快照创建第一链接克隆卷,使用第一链接克隆卷启动创建的虚拟机。例如,云数据中心使用卷创建快照API:create_snapshot(volume_id)创建第一快照,其中,volune_id表示卷的标识,本实施例指第一系统母卷的标识;然后云数据中心根据链接克隆卷API:create_linkclone_from_snapshot(snapshot_id)创建链接克隆卷,其中snapshot_id表示快照的标识,本实施例指第一快照的标识。
S204、根据第一链接克隆卷启动第一虚拟机。
具体的,云数据中心使用第一链接克隆卷启动在目标计算资源池。例如,云数据中心使用卷启动虚拟机API:boot_instance(volume_id,pool_id)在选定的计算资源池中完成虚拟机的创建和启动过程。其中,volume_id表示卷的标识,本实施例中指第一链接克隆卷的标识;pool_id表示计算资源池的标识,本实施例中指目标计算资源池的标识
S205、在原始系统镜像需要更新的情况下,获取第一快照。
具体的,当系统镜像文件发生重大安全漏洞、功能异常、组件紧急更新等情况时,旧的系统镜像文件需要更新,此时云数据中心获取第一快照,第一快照是第一系统母卷的快照。
S206、根据第一快照创建第二链接克隆卷,并根据第二链接克隆卷启动第二虚拟机。
具体的,云数据中心按照S203的方法根据第一快照创建第二链接克隆卷,根据第二链接克隆卷启动第二虚拟机。其中,第二虚拟机位于目标计算资源池中。
S207、在通过第二虚拟机完成对系统镜像文件的更新操作后,将新的系统镜像文件存储至第二链接克隆卷。
具体的,用户登陆第二虚拟机后,更新更新动作,将新的系统镜像文件导入到第二虚拟机中,这样第二链接克隆卷中存储有新的系统镜像文件。
S208、关闭第二虚拟机,以及对第二链接克隆卷中的新的系统镜像文件和第一快照进行数据差分处理得到系统镜像文件的增量数据,将系统镜像文件标记为已更新状态。
具体的,完成更新操作后,关闭第二虚拟机,云数据中心根据第二链接克隆卷中的新的系统镜像文件和第一快照进行数据差分处理得到增量数据,并将系统镜像文件标记为已更新状态。例如,云数据中心使用增量备份创建API:create_backup_by_snapshot(is_incre,snapshot_id,volume_id)生成第二链接克隆卷中的数据和第一快照之间的增量数据,得到增量数据后,云数据中心可以获取关联的其他云数据中心的网络地址,根据网络地址将增量数据同步到其他云数据中心,使其他云数据中心根据增量数据更新各自的系统镜像文件。
S209、云数据中心接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据目标计算资源池创建第三虚拟机。
具体的,云数据中心接收到虚拟机创建请求时,从多个计算资源池中选择一个计算资源池作为目标计算资源池,选择的策略可以是:选择资源利用率最低的计算资源池作为目标计算资源池,根据目标计算资源池创建第三虚拟机。
S210、在第三虚拟机的系统镜像文件已更新的情况下,获取第一系统母卷的数据和系统镜像文件的增量数据。
具体的,云数据中心检测系统镜像文件是否发生更新,可以通过系统镜像文件的更新标识来判断是否发生更新,在系统镜像文件发生更新的情况下,云数据中心获取第一系统母卷的数据和系统镜像文件的增量数据。其中,第一系统母卷的数据即为旧的系统镜像文件。
S211、根据系统镜像文件的增量数据和第一系统母卷的数据合成新的系统镜像文件。
具体的,云数据中心可以调用备份恢复卷API:restore_volume(volume_id,backup_id)来合成新的系统镜像文件,其中volume_id指第一系统母卷的标识,backup_id表示增量数据的标识。
S213、在目标计算资源池中创建第二系统母卷,并将新的系统镜像文件存储至第二系统母卷。
S214、根据第二系统母卷生成第二快照,根据第二快照创建第三链接克隆卷,以及根据第三链接克隆卷启动第三虚拟机。
具体的,云云数据中心操使用卷创建快照apicreate_snapshot(volume_id)为第二系统母卷创建第二快照,然后使用链接克隆卷创建apicreate_linkclnoe_from_snapshot(snapshot_id)创建第三链接克隆卷;使用卷启动虚拟机apiboot_instance(volume_id,pool_id)在选定的目标计算资源池中完成租户第三虚拟机创建和启动过程。
云数据中心需要更新虚拟机的系统镜像文件时,根据旧的系统镜像文件和增量数据合成新的镜像文件,能有效减少镜像文件更新时间和存储空间的占用,同时使用快照和链接克隆卷启动虚拟机,能减少虚拟机的部署时间。
参见图3至图6,为本发明实施例提供的一种虚拟机的系统镜像文件管理方法的原理图,在本发明实施例中,母卷1为上述的第一系统母卷,windows镜像为上述的系统镜像文件,计算资源池1为上述的目标计算资源池。
云数据中心包括n个计算资源池,计算资源池1、计算资源池2、……、计算资源池n,云数据中心从镜像存储服务器中拉取windows镜像文件,云数据中心利用块存储集群提供的存储能力在计算资源池1中创建母卷1,将拉取的系统镜像文件存储至母卷1中,然后使用卷克隆方法将母卷1克隆值计算资源池2至计算资源池n中,每个计算资源池中的母卷1的数据相同。云数据中心在计算资源池1中生成母卷1的快照1,根据快照1创建链接克隆卷1,然后使用链接克隆卷1启动虚拟机1。当windows镜像需要更新时,云数据中心根据快照1创建链接克隆卷2,然后使用链接克隆卷2启动虚拟机2,用户登录虚拟机2,将新的windows镜像导入至虚拟机2后完成镜像更新后,关闭虚拟机2,此处链接克隆卷2中存储新的windows镜像。云数据中心根据预设的数据差分算法将快照1和链接克隆卷2的数据进行差分后得到windows镜像增量更新(即旧的系统镜像文件的增量数据),云数据中心将得到的增量镜像增量更新发送给其他的云数据中心。需要在云数据中心上创建虚拟机2时,云数据中心使用母卷1的数据和windows镜像增量更新合成新的windows镜像,存储至母卷2中,云数据中心生成母卷2的快照2,根据快照2创建链接克隆卷3,使用链接克隆卷3启动虚拟机3。
参见图7,为本发明实施例提供的一种云数据中心的结构示意图,在本发明实施例中,所述云数据中心包括:创建模块701、获取模块702、合成模块703、存储模块704和启动模块705。
创建模块,用于接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
获取模块,用于在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
合成模块,用于根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
存储模块,用于在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
启动模块,用于根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
本发明实施例和方法实施例一基于同一构思,其带来的技术效果也相同,具体原理请操作方法实施例一的描述,此处不再赘述。
可选的,所述创建模块包括:
获取所述多个计算资源池中各个计算资源池的资源利用率,以及将资源利用率最小的计算资源池作为目标计算资源池;其中,所述资源利用率包括:CPU利用率、磁盘利用率和内存利用率中的一种或多种。
可选的,所述云数据中心还包括:
配置模块,用于在所述系统镜像文件需要更新的情况下,获取第一快照;其中,所述第一快照是根据所述预设的第一系统母卷生成的;
根据所述第一快照创建第二链接克隆卷,并根据所述第二链接克隆卷启动第二虚拟机;
在通过所述第二虚拟机完成对所述系统镜像文件的更新操作后,将新的系统镜像文件存储至所述第二链接克隆卷;
关闭所述第二虚拟机,以及对所述第二链接克隆卷中的所述新的系统镜像文件和所述第一快照进行数据差分处理得到所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态。
可选的,所述配置模块用于:
提取所述系统镜像文件,并将所述系统镜像文件写入创建的第一系统母卷;
将所述第一系统母卷克隆到除所述目标计算资源池的其他计算资源池中;
根据所述目标计算资源池中的第一系统母卷生成所述第一快照,以及根据所述第一快照创建第一链接克隆卷;
根据所述第一链接克隆卷启动第一虚拟机。
可选的,所述云数据中心还包括:
分发模块,用于确定与所述云数据中心关联的其他云数据中心的网络地址,根据所述网络地址向其他云数据中心分发所系统镜像文件的增量数据。
本发明实施例和方法实施例二基于同一构思,其带来的技术效果也相同,具体原理请操作方法实施例二的描述,此处不再赘述。
参见图8,为本发明实施例提供的一种云数据中心的结构示意图,在本发明实施例中,云数据中心包括处理器81、存储器83和通信接口82。通信接口82用于与外部设备进行通信。云数据中心中的处理器的数量可以是一个或多个。本发明的一些实施例中,处理器81、存储器83和通信接口82可通过总线或其他方式连接。云数据中心可以用于执行图1所示的方法。关于本实施例涉及的术语的含义以及举例,可以参考图1对应的实施例。此处不再赘述。
其中,存储器83中存储程序代码。处理器81用于调用存储器82中存储的程序代码,用于执行以下操作:
接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
在本发明的一些实施例中,处理器81执行所述从多个计算资源池中选择目标计算资源池包括:
获取所述多个计算资源池中各个计算资源池的资源利用率,以及将资源利用率最小的计算资源池作为目标计算资源池;其中,所述资源利用率包括:CPU利用率、磁盘利用率和内存利用率中的一种或多种。
在本发明的一些实施例中,处理器执行所述在接收到虚拟机创建请求的情况下,从多个计算资源池中选择目标计算资源池,以及在所述目标计算资源出中创建第三虚拟机之前,还用于执行:
在所述系统镜像文件需要更新的情况下,获取第一快照;其中,所述第一快照是根据所述预设的第一系统母卷生成的;
根据所述第一快照创建第二链接克隆卷,并根据所述第二链接克隆卷启动第二虚拟机;
在通过所述第二虚拟机完成对所述系统镜像文件的更新操作后,将新的系统镜像文件存储至所述第二链接克隆卷;
关闭所述第二虚拟机,以及对所述第二链接克隆卷中的所述新的系统镜像文件和所述第一快照进行数据差分处理得到所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态。
在本发明的一些实施例中,处理器81执行所述获取根据所述第一快照包括:
提取所述系统镜像文件,并将所述系统镜像文件写入创建的第一系统母卷;
将所述第一系统母卷克隆到除所述目标计算资源池的其他计算资源池中;
根据所述目标计算资源池中的第一系统母卷生成所述第一快照,以及根据所述第一快照创建第一链接克隆卷;
根据所述第一链接克隆卷启动第一虚拟机。
在本发明的一些实施例中,处理器还用于执行:
确定与所述云数据中心关联的其他云数据中心的网络地址,根据所述网络地址向其他云数据中心分发所系统镜像文件的增量数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (11)
1.一种虚拟机的系统镜像文件管理方法,其特征在于,包括:
云数据中心接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
2.如权利要求1所述的方法,其特征在于,所述从多个计算资源池中选择目标计算资源池包括:
获取所述多个计算资源池中各个计算资源池的资源利用率,以及将资源利用率最小的计算资源池作为目标计算资源池;其中,所述资源利用率包括:CPU利用率、磁盘利用率和内存利用率中的一种或多种。
3.如权利要求1所述的方法,其特征在于,所述云数据中心在接收到虚拟机创建请求的情况下,从多个计算资源池中选择目标计算资源池,以及在所述目标计算资源出中创建第三虚拟机之前,还包括:
在所述系统镜像文件需要更新的情况下,获取第一快照;其中,所述第一快照是根据所述预设的第一系统母卷生成的;
根据所述第一快照创建第二链接克隆卷,并根据所述第二链接克隆卷启动第二虚拟机;
在通过所述第二虚拟机完成对所述系统镜像文件的更新操作后,将新的系统镜像文件存储至所述第二链接克隆卷;
关闭所述第二虚拟机,以及对所述第二链接克隆卷中的所述新的系统镜像文件和所述第一快照进行数据差分处理得到所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态。
4.如权利要求3所述的方法,其特征在于,所述获取根据所述第一快照包括:
提取所述系统镜像文件,并将所述系统镜像文件写入创建的第一系统母卷;
将所述第一系统母卷克隆到除所述目标计算资源池的其他计算资源池中;
根据所述目标计算资源池中的第一系统母卷生成所述第一快照,以及根据所述第一快照创建第一链接克隆卷;
根据所述第一链接克隆卷启动第一虚拟机。
5.如权利要求3所述的方法,其特征在于,所述关闭所述第二虚拟机,以及根据所述更新后的第二链接克隆卷和所述第一快照生成所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态,还包括:
确定与所述云数据中心关联的其他云数据中心的网络地址,根据所述网络地址向其他云数据中心分发所系统镜像文件的增量数据。
6.一种云数据中心,其特征在于,包括:
创建模块,用于接收到虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
获取模块,用于在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
合成模块,用于根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
存储模块,用于在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
启动模块,用于根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
7.如权利要求6的云数据中心,其特征在于,所述创建模块包括:
获取所述多个计算资源池中各个计算资源池的资源利用率,以及将资源利用率最小的计算资源池作为目标计算资源池;其中,所述资源利用率包括:CPU利用率、磁盘利用率和内存利用率中的一种或多种。
8.如权利要求6所述的云数据中心,其特征在于,还包括:
配置模块,用于在所述系统镜像文件需要更新的情况下,获取第一快照;其中,所述第一快照是根据所述预设的第一系统母卷生成的;
根据所述第一快照创建第二链接克隆卷,并根据所述第二链接克隆卷启动第二虚拟机;
在通过所述第二虚拟机完成对所述系统镜像文件的更新操作后,将新的系统镜像文件存储至所述第二链接克隆卷;
关闭所述第二虚拟机,以及对所述第二链接克隆卷中的所述新的系统镜像文件和所述第一快照进行数据差分处理得到所述系统镜像文件的增量数据,将所述系统镜像文件标记为已更新状态。
9.如权利要求8所述的数据中心,其特征在于,所述配置模块用于:
提取所述系统镜像文件,并将所述系统镜像文件写入创建的第一系统母卷;
将所述第一系统母卷克隆到除所述目标计算资源池的其他计算资源池中;
根据所述目标计算资源池中的第一系统母卷生成所述第一快照,以及根据所述第一快照创建第一链接克隆卷;
根据所述第一链接克隆卷启动第一虚拟机。
10.如权利要求8所述的数据中心,其特征在于,还包括:
分发模块,用于确定与所述云数据中心关联的其他云数据中心的网络地址,根据所述网络地址向其他云数据中心分发所系统镜像文件的增量数据。
11.一种云通信系统,其特征在于,包括云客户端和至少一个云数据中心,其中,所述云客户端用于在系统镜像文件需要更新时,向数据中心发送虚拟机创建请求;
云数据中心用于接收到所述云客户端发送的虚拟机创建请求时,从多个计算资源池中选择目标计算资源池,以及根据所述目标计算资源池创建第三虚拟机;
在所述第三虚拟机的系统镜像文件已更新的情况下,获取预设的第一系统母卷的数据和所述系统镜像文件的增量数据;
根据所述系统镜像文件的增量数据和所述第一系统母卷的数据合成新的系统镜像文件;
在所述目标计算资源池中创建所述第三虚拟机的第二系统母卷,并将所述新的系统镜像文件存储至所述第二系统母卷;
根据所述第二系统母卷生成第二快照,根据所述第二快照创建第三链接克隆卷,以及根据所述第三链接克隆卷启动所述第三虚拟机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510465356.7A CN105094948B (zh) | 2015-07-31 | 2015-07-31 | 一种虚拟机的系统镜像文件更新方法、云数据中心及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510465356.7A CN105094948B (zh) | 2015-07-31 | 2015-07-31 | 一种虚拟机的系统镜像文件更新方法、云数据中心及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105094948A true CN105094948A (zh) | 2015-11-25 |
CN105094948B CN105094948B (zh) | 2018-11-09 |
Family
ID=54575457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510465356.7A Active CN105094948B (zh) | 2015-07-31 | 2015-07-31 | 一种虚拟机的系统镜像文件更新方法、云数据中心及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105094948B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808167A (zh) * | 2016-03-10 | 2016-07-27 | 深圳市杉岩数据技术有限公司 | 一种基于sr-iov的链接克隆的方法、存储设备及系统 |
CN106469084A (zh) * | 2016-08-30 | 2017-03-01 | 华为技术有限公司 | 一种链接克隆母卷管理方法和装置 |
CN107197022A (zh) * | 2017-06-02 | 2017-09-22 | 华南理工大学 | OpenStack存储优化方法及系统 |
CN107273146A (zh) * | 2016-04-08 | 2017-10-20 | 中兴通讯股份有限公司 | 虚拟机升级方法及装置 |
CN107291391A (zh) * | 2017-06-21 | 2017-10-24 | 郑州云海信息技术有限公司 | 一种用于分布式存储系统的数据处理方法和系统 |
CN108255577A (zh) * | 2017-12-20 | 2018-07-06 | 深圳市杉岩数据技术有限公司 | 一种虚拟机启动的加速方法和装置 |
CN108572889A (zh) * | 2018-03-12 | 2018-09-25 | 新华三云计算技术有限公司 | 一种系统还原方法及装置 |
CN108701048A (zh) * | 2017-09-29 | 2018-10-23 | 华为技术有限公司 | 数据加载方法及装置 |
CN108874406A (zh) * | 2018-06-28 | 2018-11-23 | 郑州云海信息技术有限公司 | 一种升级包制作方法及装置 |
CN109688180A (zh) * | 2017-10-19 | 2019-04-26 | 阿里巴巴集团控股有限公司 | 一种基于镜像的云服务软件升级方法和装置 |
CN110109734A (zh) * | 2019-05-15 | 2019-08-09 | 苏州浪潮智能科技有限公司 | 一种无状态虚拟机的实现方法及装置 |
CN106790719B (zh) * | 2017-03-21 | 2019-12-06 | 杭州迪普科技股份有限公司 | 一种存储镜像配置信息的方法及装置 |
WO2020233311A1 (zh) * | 2019-05-20 | 2020-11-26 | 中兴通讯股份有限公司 | 一种基于云平台数据中心的虚拟机备份方法及装置 |
US20200409738A1 (en) * | 2019-06-27 | 2020-12-31 | Netapp Inc. | Virtual machine backup from computing environment to storage environment |
CN113282566A (zh) * | 2020-02-19 | 2021-08-20 | 中国移动通信集团上海有限公司 | 数据库生成方法、装置、设备及存储介质 |
CN114168262A (zh) * | 2021-12-03 | 2022-03-11 | 中国人寿保险股份有限公司上海数据中心 | 一种基于lru置换算法的云平台镜像缓存管理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521083A (zh) * | 2011-12-13 | 2012-06-27 | 广州杰赛科技股份有限公司 | 一种云计算系统中虚拟机备份方法和系统 |
CN103699459A (zh) * | 2013-12-31 | 2014-04-02 | 汉柏科技有限公司 | 基于qcow2快照的虚拟机数据增量备份方法及系统 |
CN103942292A (zh) * | 2014-04-11 | 2014-07-23 | 华为技术有限公司 | 虚拟机镜像文件处理方法、装置及系统 |
CN104375877A (zh) * | 2014-10-15 | 2015-02-25 | 国云科技股份有限公司 | 一种虚拟机在线快照生成与删除方法 |
-
2015
- 2015-07-31 CN CN201510465356.7A patent/CN105094948B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521083A (zh) * | 2011-12-13 | 2012-06-27 | 广州杰赛科技股份有限公司 | 一种云计算系统中虚拟机备份方法和系统 |
CN103699459A (zh) * | 2013-12-31 | 2014-04-02 | 汉柏科技有限公司 | 基于qcow2快照的虚拟机数据增量备份方法及系统 |
CN103942292A (zh) * | 2014-04-11 | 2014-07-23 | 华为技术有限公司 | 虚拟机镜像文件处理方法、装置及系统 |
CN104375877A (zh) * | 2014-10-15 | 2015-02-25 | 国云科技股份有限公司 | 一种虚拟机在线快照生成与删除方法 |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808167A (zh) * | 2016-03-10 | 2016-07-27 | 深圳市杉岩数据技术有限公司 | 一种基于sr-iov的链接克隆的方法、存储设备及系统 |
CN105808167B (zh) * | 2016-03-10 | 2018-12-21 | 深圳市杉岩数据技术有限公司 | 一种基于sr-iov的链接克隆的方法、存储设备及系统 |
CN107273146A (zh) * | 2016-04-08 | 2017-10-20 | 中兴通讯股份有限公司 | 虚拟机升级方法及装置 |
CN107273146B (zh) * | 2016-04-08 | 2021-11-19 | 中兴通讯股份有限公司 | 虚拟机升级方法及装置 |
CN106469084A (zh) * | 2016-08-30 | 2017-03-01 | 华为技术有限公司 | 一种链接克隆母卷管理方法和装置 |
CN106469084B (zh) * | 2016-08-30 | 2020-06-26 | 华为技术有限公司 | 一种链接克隆母卷管理方法和装置 |
CN106790719B (zh) * | 2017-03-21 | 2019-12-06 | 杭州迪普科技股份有限公司 | 一种存储镜像配置信息的方法及装置 |
CN107197022A (zh) * | 2017-06-02 | 2017-09-22 | 华南理工大学 | OpenStack存储优化方法及系统 |
CN107197022B (zh) * | 2017-06-02 | 2020-01-10 | 华南理工大学 | OpenStack存储优化方法及系统 |
CN107291391A (zh) * | 2017-06-21 | 2017-10-24 | 郑州云海信息技术有限公司 | 一种用于分布式存储系统的数据处理方法和系统 |
CN107291391B (zh) * | 2017-06-21 | 2021-03-09 | 郑州云海信息技术有限公司 | 一种用于分布式存储系统的数据处理方法和系统 |
CN108701048A (zh) * | 2017-09-29 | 2018-10-23 | 华为技术有限公司 | 数据加载方法及装置 |
WO2019061352A1 (zh) * | 2017-09-29 | 2019-04-04 | 华为技术有限公司 | 数据加载方法及装置 |
CN108701048B (zh) * | 2017-09-29 | 2020-09-11 | 华为技术有限公司 | 数据加载方法及装置 |
US10838829B2 (en) | 2017-09-29 | 2020-11-17 | Huawei Technologies Co., Ltd. | Method and apparatus for loading data from a mirror server and a non-transitory computer readable storage medium |
CN109688180A (zh) * | 2017-10-19 | 2019-04-26 | 阿里巴巴集团控股有限公司 | 一种基于镜像的云服务软件升级方法和装置 |
CN109688180B (zh) * | 2017-10-19 | 2022-05-10 | 阿里巴巴集团控股有限公司 | 一种基于镜像的云服务软件升级方法和装置 |
CN108255577A (zh) * | 2017-12-20 | 2018-07-06 | 深圳市杉岩数据技术有限公司 | 一种虚拟机启动的加速方法和装置 |
CN108572889A (zh) * | 2018-03-12 | 2018-09-25 | 新华三云计算技术有限公司 | 一种系统还原方法及装置 |
CN108874406A (zh) * | 2018-06-28 | 2018-11-23 | 郑州云海信息技术有限公司 | 一种升级包制作方法及装置 |
CN110109734A (zh) * | 2019-05-15 | 2019-08-09 | 苏州浪潮智能科技有限公司 | 一种无状态虚拟机的实现方法及装置 |
CN110109734B (zh) * | 2019-05-15 | 2021-08-06 | 苏州浪潮智能科技有限公司 | 一种无状态虚拟机的实现方法及装置 |
WO2020233311A1 (zh) * | 2019-05-20 | 2020-11-26 | 中兴通讯股份有限公司 | 一种基于云平台数据中心的虚拟机备份方法及装置 |
US20200409738A1 (en) * | 2019-06-27 | 2020-12-31 | Netapp Inc. | Virtual machine backup from computing environment to storage environment |
US11615001B2 (en) | 2019-06-27 | 2023-03-28 | Netapp, Inc. | Incremental restore of a virtual machine |
US11650886B2 (en) | 2019-06-27 | 2023-05-16 | Netapp, Inc. | Orchestrator for orchestrating operations between a computing environment hosting virtual machines and a storage environment |
US11853104B2 (en) | 2019-06-27 | 2023-12-26 | Netapp, Inc. | Virtual machine backup from computing environment to storage environment |
US11977461B2 (en) | 2019-06-27 | 2024-05-07 | Netapp, Inc. | Incremental restore of a virtual machine |
CN113282566A (zh) * | 2020-02-19 | 2021-08-20 | 中国移动通信集团上海有限公司 | 数据库生成方法、装置、设备及存储介质 |
CN113282566B (zh) * | 2020-02-19 | 2023-07-04 | 中国移动通信集团上海有限公司 | 数据库生成方法、装置、设备及存储介质 |
CN114168262A (zh) * | 2021-12-03 | 2022-03-11 | 中国人寿保险股份有限公司上海数据中心 | 一种基于lru置换算法的云平台镜像缓存管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105094948B (zh) | 2018-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105094948A (zh) | 一种虚拟机的系统镜像文件更新方法、云数据中心及系统 | |
US8738883B2 (en) | Snapshot creation from block lists | |
CN104219099A (zh) | 一种服务器集群自动部署的方法和装置 | |
CN110188000A (zh) | 基于虚拟化以及iSCSI或FC的应用容灾方法及系统 | |
CN103970585A (zh) | 创建虚拟机的方法及装置 | |
CN111273871B (zh) | 容器平台上动态分配存储资源的方法及装置 | |
CN111124475A (zh) | 存储管理的方法、电子设备和计算机可读存储介质 | |
CN113934707A (zh) | 云原生数据库、数据库扩容方法、数据库缩容方法和装置 | |
CN110908609A (zh) | 一种磁盘处理的方法、系统、设备及可读存储介质 | |
CN108075914B (zh) | 一种动态扩容缩容的方法及网络设备 | |
CN105302663A (zh) | 一种镜像开机方法和终端设备 | |
CN110764918A (zh) | 一种容器集群中主节点管理方法 | |
CN101770378A (zh) | Bios配置计算机的方法、服务器及计算机 | |
CN103838589A (zh) | 一种插件删除、恢复方法及客户端 | |
EP3533198B1 (en) | Highly available and reliable secret distribution infrastructure | |
CN110058925A (zh) | 一种在云计算系统中创建虚拟机的方法 | |
CN114124739B (zh) | 部署FreeSWITCH服务的方法、装置、电子设备及存储介质 | |
CN105404530A (zh) | 一种实现简易部署和使用私有云的系统及方法 | |
CN105208093A (zh) | 一种云操作系统中计算资源池的构建方法和系统 | |
WO2016107219A1 (zh) | 数据恢复方法及装置 | |
CN103389909A (zh) | 一种渲染农场节点虚拟化部署系统及其应用 | |
CN114553859A (zh) | 一种bmc配置管理方法、装置、电子设备及存储介质 | |
CN108418720A (zh) | 一种路由设备配置信息的恢复方法、装置以及路由设备 | |
CN106155911B (zh) | 一种请求远程内存的方法和装置 | |
CN104091132A (zh) | 在路由设备上运行插件的方法、装置及路由设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200420 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 301, A building, room 3, building 301, foreshore Road, No. 310053, Binjiang District, Zhejiang, Hangzhou Patentee before: Huawei Technologies Co.,Ltd. |
|
TR01 | Transfer of patent right |