CN103795759B - 一种虚拟机镜像文件的调度方法和系统 - Google Patents
一种虚拟机镜像文件的调度方法和系统 Download PDFInfo
- Publication number
- CN103795759B CN103795759B CN201210429448.6A CN201210429448A CN103795759B CN 103795759 B CN103795759 B CN 103795759B CN 201210429448 A CN201210429448 A CN 201210429448A CN 103795759 B CN103795759 B CN 103795759B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- image file
- machine
- instantiation
- physical
- 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
Links
Landscapes
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种虚拟机镜像文件的调度方法和系统,步骤A:远程获得所述虚拟机镜像文件的大小和镜像文件校验值;判断待装物理机是否存储有与解析得到镜像文件名称相同且校验值一致的镜像文件,如果是,则利用所述待装物理机上的镜像文件进行虚拟机实例化,并结束本流程;否则,执行步骤B;步骤B:判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小,如果小于,则查找并删除最近最少使用的镜像文件,并返回步骤B;如果大于,则获取所述虚拟机镜像文件,可以看出,本发明使用了一种优化算法,减少了处理相同虚拟机镜像文件的时间,合理调度镜像文件存储空间,加快了虚拟机实例化的过程。
Description
技术领域
本发明涉及云计算领域,特别是涉及一种虚拟机镜像文件的调度方法和系统。
背景技术
目前云计算大部分都是基于虚拟机技术完成的,因为虚拟机是独立于底层物理硬件运行的,我们可以为虚拟机配置与底层硬件上存在的物理组件完全不同的虚拟组件。现有技术主要基于hypervisor平台实现虚拟机实例化功能。这里的实例化特指生成虚拟机的过程。
针对虚拟机实例化上,有多种不同安装方式,其中较常用的是通过镜像形式安装,现有技术中,使用这种方式进行虚拟机实例化安装,一般会在需要预装虚拟机的物理机上预存虚拟机镜像文件,用来加快虚拟机实例化的速度,但是这只适用于有限数量的虚拟机镜像文件,当需要使用大量虚拟机镜像文件的时候,我们难以满足将所有镜像文件都预存到需要预装虚拟机的物理机上,而且,当本次虚拟机实例化需要使用的镜像文件曾经已经在这台物理机上使用过时,仍然需要重新进行预存,增加了相同镜像文件实例化的重复处理过程,减慢了虚拟机实例化的速度。
发明内容
为了解决上述技术问题,本发明实施例提供了一种虚拟机镜像文件的调度方法和系统,解决了重复处理相同虚拟机镜像文件的问题,及对本地虚拟机镜像文件存储空间的有效使用和调度的问题。
本发明实施例公开了如下技术方案:
一种虚拟机镜像文件的调度方法,
步骤A:待装物理机解析虚拟机配置文件中的信息,得到虚拟机镜像文件的镜像文件名称和镜像文件地址,通过所述镜像文件名称和镜像文件地址,远程获得所述虚拟机镜像文件的大小和镜像文件校验值;通过所述镜像文件名称及所述镜像文件校验值,判断待装物理机是否存储有与解析得到镜像文件名称相同且校验值一致的镜像文件,如果是,则利用所述待装物理机上的镜像文件进行虚拟机实例化,并结束本流程;否则,执行步骤B;
步骤B:判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小,如果小于,则从待装物理机用来存储虚拟机镜像文件的存储空间上查找并删除最近最少使用的镜像文件,并返回步骤B;如果大于,则通过所述镜像文件名称、镜像文件地址和镜像文件校验值远程获取所述虚拟机镜像文件,使用所述虚拟机镜像文件进行虚拟机实例化,并在待装物理机中更新所述虚拟机镜像文件校验值。
优选的,包括,使用最近最少使用算法LRU查找最近最少使用的镜像文件。
优选的,所述虚拟机镜像文件的存储空间大小具体为100GB。
优选的,在步骤A之前还包括,根据需要进行虚拟机实例化的虚拟机管理器hypervisor平台类型,在符合所述hypervisor平台类型的待装物理机中任选一个,将由所述虚拟机配置项、虚拟机实例化形式配置信息和虚拟机初始化配置信息所组成的虚拟机配置文件发送到待装物理机上。
优选的,所述虚拟机配置项由通过对系统服务器接收到的虚拟机的通用配置信息、网络配置信息和存储配置信息,统一转化成符合虚拟机实例化的hypervisor平台规范形式得到。
优选的,所述虚拟机安装方式信息包括网络安装方式和镜像安装方式,其中镜像安装方式包括cd-rom光盘安装方式和镜像克隆复制方式。
优选的,所述hypervisor平台类型具体为Xen、Kvm和Vmware esx/esxi。
一种虚拟机镜像文件的调度系统,包括:
解析比对单元,用于待装物理机解析虚拟机配置文件中的信息,得到虚拟机镜像文件的镜像文件名称和镜像文件地址,通过所述镜像文件名称和镜像文件地址,远程获得所述虚拟机镜像文件的大小和镜像文件校验值;通过所述镜像文件名称及所述镜像文件校验值,判断待装物理机是否存储有与解析得到镜像文件名称相同且校验值一致的镜像文件,如果是,则利用所述待装物理机上的镜像文件进行虚拟机实例化,并结束本流程;否则,执行判断单元;
判断单元,用于判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小,如果小于,则从待装物理机用来存储虚拟机镜像文件的存储空间上查找并删除最近最少使用的镜像文件,并再次判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小;如果大于,则通过所述镜像文件名称、镜像文件地址和镜像文件校验值远程获取所述虚拟机镜像文件,使用所述虚拟机镜像文件进行虚拟机实例化,并在待装物理机中更新所述虚拟机镜像文件校验值。
优选的,还包括:
发送单元,用于根据需要进行虚拟机实例化的虚拟机管理器hypervisor平台类型,在符合所述hypervisor平台类型的待装物理机中任选一个,将由所述虚拟机配置项、虚拟机安装方式信息和虚拟机软件信息所组成的虚拟机配置文件发送到待装物理机上。
优选的,还包括:
虚拟机配置项生成单元,用于通过系统服务器接收到的虚拟机的硬件信息、网络配置信息和磁盘信息,统一转化成符合虚拟机实例化的hypervisor平台规范形式的虚拟机配置项。
由上述实施例可以看出,本发明使用了一种优化算法,减少了处理相同虚拟机镜像文件的时间,合理调度镜像文件存储空间,加快了虚拟机实例化的过程。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种虚拟机镜像文件的调度方法的方法流程图;
图2为本发明一种虚拟机镜像文件的调度方法的另一个方法流程图;
图3为本发明获得虚拟机配置项的方法流程图;
图4为待装物理机接收到虚拟机配置文件后,进行虚拟机实例化的方法流程图;
图5为本发明一种虚拟机镜像文件的调度系统的系统结构图;
图6为本发明一种虚拟机镜像文件的调度系统的另一个系统结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例进行详细描述。
实施例一
进行虚拟机实例化,首先用户需要提供必要的虚拟机实例化信息,一般包括通用配置信息、网络配置信息和存储配置信息,以及虚拟机实例化形式配置信息和虚拟机初始化配置信息(上述信息在实施例二中会进行详细的描述),通过合理的转化,系统会将上述信息发送到待装物理机上,待装物理机根据接收到的信息中要求的安装方法获取虚拟机镜像文件或直接进行网络安装方法来完成虚拟机实例化,本实施例就是对待装物理机如何获取虚拟机镜像文件的过程进行详细的描述。
请参阅图1,其为本发明一种虚拟机镜像文件的调度方法的方法流程图,该方法包括以下步骤:
S101:待装物理机解析虚拟机配置文件中的信息,得到虚拟机镜像文件的镜像文件名称和镜像文件地址,通过所述镜像文件名称和镜像文件地址,远程获得所述虚拟机镜像文件的大小和镜像文件校验值;通过所述镜像文件名称及所述镜像文件校验值,判断待装物理机是否存储有与解析得到镜像文件名称相同且校验值一致的镜像文件,如果是,则利用所述待装物理机上的镜像文件进行虚拟机实例化,并结束本流程;否则,执行S102。
需要进一步说明的是,这里对虚拟机镜像文件的调度仅针对虚拟机安装方式中的镜像安装方式,即,在使用cd-rom光盘安装方式和镜像克隆复制方式来进行虚拟机实例化的时候才适用,而由于使用网络安装方式进行虚拟机实例化时并不会涉及虚拟机镜像文件,所以对网络安装方式不适用。
所述虚拟机镜像文件统一保存在镜像服务器中,并包含镜像文件的名称、所属虚拟机管理器hypervisor平台的类型、镜像文件的格式、镜像文件的大小、镜像文件的实际大小(未压缩前)和镜像文件校验值等相关信息。
区别于传统的镜像文件的定义,此处镜像文件形式可以是任何可用作虚拟机实例化的文件,即cd-rom的iso安装文件,原始的虚拟机镜像文件,虚拟机操作系统上重要文件系统的备份(/etc,/root,/lib,/lib64等等)以及这几种形式的各种打包方式(tar,tar.gz,gzip,bzip等)生成的压缩包都可以视为虚拟机的镜像文件,可被上传到镜像管理服务器上供其他用户和将来使用。用户甚至可以通过用户端工具上传、查看、修改和删除镜像服务器中的镜像文件。
S102:判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小,如果小于,则从待装物理机用来存储虚拟机镜像文件的存储空间上查找并删除最近最少使用的镜像文件,并返回S102;如果大于,则通过所述镜像文件名称、镜像文件地址和镜像文件校验值远程获取所述虚拟机镜像文件,使用所述虚拟机镜像文件进行虚拟机实例化,并在待装物理机中更新所述虚拟机镜像文件校验值。
优选的,使用LRU(最近最少使用算法)查找最近最少使用的镜像文件。
可以看出,对于虚拟机实例化来说,首先将镜像预存到待装物理机,可以减少相同镜像文件的实例化处理过程,当有基于同一个镜像文件进行实例化时,待装物理机不需要再次从远程镜像管理服务器上获取镜像文件,一方面减少了网络传输流量,另一方面加快了实例化过程。
现有技术中,由于每次使用镜像安装方式进行虚拟机实例化的时候都需要使用虚拟机镜像文件,即都要在本地预存虚拟机镜像文件,当经过多次安装后,保存在待装物理机上的虚拟机镜像文件就会越来越多,保存镜像文件额存储空间的越来越大,将直接影响到待装物理机的性能,降低待装物理机的工作效率。
而本实施例这里首先对所述虚拟机镜像文件存储空间进行了限定,优选的为100GB,再通过本实施例的调度方法,解决了上述问题。
当然,本发明并不对所述存储空间的具体大小进行限定,具体大小视各个待装物理机的具体存储境况而定。
本实施例在判断镜像文件是否相同的问题上待装物理机采用了获取远程镜像文件校验值的方式。这样只需要比对获取的校验值和待装物理机中存储的同名镜像文件的校验值是否一致即可,而不需要实时计算待装物理机中虚拟机镜像文件的存储空间中的镜像文件的实际校验值,加快实例化过程。
由本实施例可以看出,通过使用这种优化算法,减少了处理相同虚拟机镜像文件的时间,合理调度镜像文件存储空间,加快了虚拟机实例化的过程。
实施例二
请参阅图2,其为本发明一种虚拟机镜像文件的调度方法的另一个方法流程图,包括:
S201:通过对系统服务器接收到的虚拟机的通用配置信息、网络配置信息和存储配置信息,统一转化成符合虚拟机实例化的hypervisor平台规范形式的虚拟机配置项。
优选的,这里的hypervisor类型具体为Xen、Kvm和Vmware esx/esxi,本发明对hypervisor类型并不进行限定,可以为其他可用于实现虚拟机实例化的hypervisor类型。
用户可以通过基于agi的客户端工具或web页面访问系统服务器,在进入系统之前均需要经过认证和授权,且相关的用户登录和操作行为会记录到日志中,以便统一管理和审计。
本发明收集了现有技术中针对不同hypervisor平台类型的虚拟机安装需要提供的必要信息,并使用开源软件将其集成在统一的模板中,用户可以根据自身不同的需求选择不同的hypervisor平台类型进行相关信息的填写,具体流程如下:
请参阅图3,其为本发明获得虚拟机配置项的方法流程图,包括:
S301:用户发送需要安装的虚拟机的请求,通过系统服务器提供的针对各个hypervisor平台类型的统一的表单填写相关的虚拟机的通用配置信息、网络配置信息和存储配置信息,其中具体包括了对应不同hypervisor平台类型的必要信息:
如所述通用配置信息包括:虚拟机的操作系统信息、内存和cpu定义、vnc远程console、mac地址,启动方法(从光盘,网络或是磁盘启动),hypervisor平台类型(xen,kvm,vmware esx/esxi),hvm还是pvm(对xen)等。
所述存储配置信息包括:虚拟机的最少一块磁盘信息,比如磁盘类型(physical,iso file,created),磁盘的虚拟格式(和hypervisor相关,可选格式在配置界面自动关联hypervisor类型),磁盘大小,对应到虚拟机里的磁盘符(如/dev/sda),磁盘读写模式等。
所述网络配置信息包括:虚拟机的最少一块网卡信息,比如网卡可以分为nat,bridge,host-only三种形式,对vmware esx/esxi还额外支持vSwitch虚拟交换机网络配置方式,每块网卡可以选择手动指定mac地址,也可以选择随机分配生成。
S302:系统服务器对收集到的上述信息,根据hypervisor平台类型的不同,统一的转化成符合对应hypervisor平台规范形式的虚拟机配置项,即,能使对应hypervisor平台类型识别的数据形式。
S202:根据需要进行虚拟机实例化的hypervisor平台类型,在符合所述hypervisor平台类型的待装物理机中任选一个,将由所述虚拟机配置项、虚拟机实例化形式配置信息和虚拟机初始化配置信息所组成的虚拟机配置文件发送到待装物理机上。
所述虚拟机实例化形式配置信息包括:采用哪种虚拟机安装方式进行虚拟机实例化,现有cd-rom iso光盘启动安装、网络安装和克隆复制安装三种形式。由于cd-rom iso文件在本系统中也被作为镜像文件,因此第一种和第三种形式可以统一处理为镜像安装方式,此处配置信息一般通过直接导入镜像管理服务器上的镜像文件生成模板的方式自动填充,配置信息包括镜像文件的url、校验值、压缩形式和是cd-rom iso文件还是虚拟机镜像文件。对于网络安装,此处主要定义了kernel,vmlinz,kick start脚本的装机url信息,需要装机服务器和dhcp server支持,且对hvm和pvm装机过程会有所不同。
所述虚拟机初始化配置信息包括:针对克隆复制虚拟机的系统和应用软件环境,其中具体包括待装虚拟机的用户口令信息、虚拟机主机名、网络配置(ip,网关,路由,dns服务器等)和预安装的应用软件等。
S203和S204请参阅实施例一中的S101和S102。
请参阅图4,其为待装物理机接收到虚拟机配置文件后,进行虚拟机实例化的方法流程图,包括:
S401:待装物理机通过预安装的实例化agent解析接收到的转化为不同hypervisor平台类型识别的数据形式的虚拟机配置文件,并使用虚拟机配置文件中所要求的安装方式进行虚拟机实例化。
而现有技术中,针对每种的hypervisor平台,都有专门对应的虚拟机实例化agent,当待装物理机拥有多个不同种类hypervisor平台时,就必须安装所有专门的虚拟机实例化agent,并为此配套相应的管理工具,使得系统复杂庞大。而本发明通过统一的实例化agent为不同的hypervisor平台提供虚拟机实例化服务。
这里需要说明的是,待装物理机都需预安装实例化agent并将自己注册到系统服务器上,系统服务器同时记录待装物理机的hypervisor类型(xen,kvm,vmware esx/esxi)并可查看所有的可用待装物理机;待装物理机通过预安装的实例化agent完成具体的虚拟机实例化操作。
实例化的多形式和hypervisor平台无关性都是由实例化agent实现的,实例化Agent对hypervisor平台下虚拟机的操作做了统一封装,首先由于对于常见的hypervisor,libvirt有部分统一管理的接口,因此本发明基于libvirt这个开源的工具实现了对各hypervisor平台进行统一的访问、认证和操作,但各个hypervisor平台又有各自的特性,因此本发明还对各个hypervisor自带的管理工具进行统一的调用,如xen平台使用的是xm系列工具,kvm使用的是virsh系统工具,vmware esx/esxi使用的是vmware-cmd系列工具。
这里需要说明的是,如果使用网络安装方式进行虚拟机实例化时,不需要执行步骤S203和S204,原因实施例一中已经进行了详细描述,此处不再赘述。
S402:使用网络安装方式进行虚拟机实例化时,首先待装物理机根据解析虚拟机配置文件后得到的信息创建虚拟机磁盘(可以使用dd,qemu-img等工具)。
S403:在xen平台下,需要从虚拟机配置文件提供的参数获取kernel、ramdisk和kickstart文件(其中kickstart文件也可以不提供),使用xm createdom config命令启动虚拟机进入自动化网络装机过程,在没有kickstart文件的情况下,需要交互式进入装机过程。
S404:在hvm平台下(包括xen,kvm和vmware esx/esxi),只需要使用对应的libvirt接口和管理工具根据虚拟机初始配置文件启动虚拟机,并使用vnc客户端工具远程console连接该虚拟机进入交互式装机过程。
S405:关闭虚拟机。
S406:修改虚拟机启动项(boot)为disk方式。
S407:再次启动虚拟机,整个过程结束。
S408:使用镜像安装方式进行虚拟机实例化时,待装物理机通过使用实施例一中所述的方法获取所述虚拟机镜像文件。
S409:使用cd-rom光盘安装方式时,待装物理机根据解析虚拟机配置文件后得到的信息创建虚拟机磁盘(可以使用dd,qemu-img等工具),从光盘启动虚拟机进入光盘装机过程,使用vnc客户端工具console连接虚拟机进行交互式装机处理过程。进入步骤S405。
S410:使用镜像克隆复制方式。
S411:虚拟机镜像文件的操作系统为linux时,待装物理机根据解析虚拟机配置文件后得到的信息创建虚拟机磁盘。
S412:将虚拟机磁盘挂载到tmp目录随机生成的一个挂载目录(可以losetup,kpartx等工具),将整个虚拟机文件系统拷贝到该挂载目录下,再次根据解析虚拟机配置文件后得到的信息定制虚拟机系统的应用软件环境(包括虚拟机的用户,口令,主机名,网络配置如ip,gateway,路由,dns等等)和预安装第三方应用软件(chroot安装,支持rpm和源码安装),之后umount该挂载目录。进入步骤S407。
S413:虚拟机镜像文件为raw格式时,直接使用dd,tar,bunzip,gunzip等工具将获得的虚拟机镜像文件解压到虚拟机磁盘中。
S414:若解压后所述虚拟机镜像文件对应的虚拟机的操作系统为linux,进入步骤S412。
S415:若解压后所述虚拟机镜像文件对应的虚拟机的操作系统为windows,则进入步骤S407。
实施例三
与上述一种虚拟机镜像文件的调度方法相对应,本发明实施例还提供了一种虚拟机镜像文件的调度系统。请参阅图5,其为本发明一种虚拟机镜像文件的调度系统的系统结构图,包括解析比对单元501和判断单元502:
所述解析比对单元501,用于待装物理机解析虚拟机配置文件中的信息,得到虚拟机镜像文件的镜像文件名称和镜像文件地址,通过所述镜像文件名称和镜像文件地址,远程获得所述虚拟机镜像文件的大小和镜像文件校验值;通过所述镜像文件名称及所述镜像文件校验值,判断待装物理机是否存储有与解析得到镜像文件名称相同且校验值一致的镜像文件,如果是,则利用所述待装物理机上的镜像文件进行虚拟机实例化,并结束本流程;否则,执行判断单元。
所述判断单元502,用于判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小,如果小于,则从待装物理机用来存储虚拟机镜像文件的存储空间上查找并删除最近最少使用的镜像文件,并再次判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小;如果大于,则通过所述镜像文件名称、镜像文件地址和镜像文件校验值远程获取所述虚拟机镜像文件,使用所述虚拟机镜像文件进行虚拟机实例化,并在待装物理机中更新所述虚拟机镜像文件校验值。
实施例四
请参阅图6,其为本发明一种虚拟机镜像文件的调度系统的另一个系统结构图,包括虚拟机配置项生成单元601、发送单元602、解析比对单元501和判断单元502:
所述虚拟机配置项601生成单元,用于通过系统服务器接收到的虚拟机的硬件信息、网络配置信息和磁盘信息,统一转化成符合虚拟机实例化的hypervisor平台规范形式的虚拟机配置项。
所述发送单元602,用于根据需要进行虚拟机实例化的虚拟机管理器hypervisor平台类型,在符合所述hypervisor平台类型的待装物理机中任选一个,将由所述虚拟机配置项、虚拟机安装方式信息和虚拟机软件信息所组成的虚拟机配置文件发送到待装物理机上。
解析比对单元501和判断单元502已经在实施例三中进行了详细的描述,故在此处不再赘述。
由上述实施例可以看出,本发明使用了一种优化算法,减少了处理相同虚拟机镜像文件的时间,合理调度镜像文件存储空间,加快了虚拟机实例化的过程。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上对本发明所提供的一种虚拟机镜像文件的调度方法和系统进行了详细介绍,本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种虚拟机镜像文件的调度方法,其特征在于,
步骤A:待装物理机解析虚拟机配置文件中的信息,得到虚拟机镜像文件的镜像文件名称和镜像文件地址,通过所述镜像文件名称和镜像文件地址,远程获得所述虚拟机镜像文件的大小和镜像文件校验值;通过所述镜像文件名称及所述镜像文件校验值,判断待装物理机是否存储有与解析得到镜像文件名称相同且校验值一致的镜像文件,如果是,则利用所述待装物理机上的镜像文件进行虚拟机实例化,并结束本流程;否则,执行步骤B;
步骤B:判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小,如果小于,则从待装物理机用来存储虚拟机镜像文件的存储空间上查找并删除最近最少使用的镜像文件,并返回步骤B;如果大于,则通过所述镜像文件名称、镜像文件地址和镜像文件校验值远程获取所述虚拟机镜像文件,使用所述虚拟机镜像文件进行虚拟机实例化,并在待装物理机中更新所述虚拟机镜像文件校验值。
2.根据权利要求1所述的方法,其特征在于,包括,使用最近最少使用算法LRU查找最近最少使用的镜像文件。
3.根据权利要求1所述的方法,其特征在于,所述虚拟机镜像文件的存储空间大小具体为100GB。
4.根据权利要求1所述的方法,其特征在于,在步骤A之前还包括,根据需要进行虚拟机实例化的虚拟机管理器hypervisor平台类型,在符合所述hypervisor平台类型的待装物理机中任选一个,将由虚拟机配置项、虚拟机实例化形式配置信息和虚拟机初始化配置信息所组成的虚拟机配置文件发送到待装物理机上。
5.根据权利要求4所述的方法,其特征在于,所述虚拟机配置项由通过对系统服务器接收到的虚拟机的通用配置信息、网络配置信息和存储配置信息,统一转化成符合虚拟机实例化的hypervisor平台规范形式得到。
6.根据权利要求4所述的方法,其特征在于,虚拟机安装方式信息包括网络安装方式和镜像安装方式,其中镜像安装方式包括cd-rom光盘安装方式和镜像克隆复制方式。
7.根据权利要求4所述的方法,其特征在于,所述hypervisor平台类型具体为Xen、Kvm和Vmware esx/esxi。
8.一种虚拟机镜像文件的调度系统,其特征在于,包括:
解析比对单元,用于待装物理机解析虚拟机配置文件中的信息,得到虚拟机镜像文件的镜像文件名称和镜像文件地址,通过所述镜像文件名称和镜像文件地址,远程获得所述虚拟机镜像文件的大小和镜像文件校验值;通过所述镜像文件名称及所述镜像文件校验值,判断待装物理机是否存储有与解析得到镜像文件名称相同且校验值一致的镜像文件,如果是,则利用所述待装物理机上的镜像文件进行虚拟机实例化,并结束本流程;否则,执行判断单元;
判断单元,用于判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小,如果小于,则从待装物理机用来存储虚拟机镜像文件的存储空间上查找并删除最近最少使用的镜像文件,并再次判断待装物理机用来存储虚拟机镜像文件的剩余存储空间的大小是否大于所述虚拟机镜像文件的大小;如果大于,则通过所述镜像文件名称、镜像文件地址和镜像文件校验值远程获取所述虚拟机镜像文件,使用所述虚拟机镜像文件进行虚拟机实例化,并在待装物理机中更新所述虚拟机镜像文件校验值。
9.根据权利要求8所述的系统,其特征在于,还包括:
发送单元,用于根据需要进行虚拟机实例化的虚拟机管理器hypervisor平台类型,在符合所述hypervisor平台类型的待装物理机中任选一个,将由虚拟机配置项、虚拟机安装方式信息和虚拟机软件信息所组成的虚拟机配置文件发送到待装物理机上。
10.根据权利要求8所述的系统,其特征在于,还包括:
虚拟机配置项生成单元,用于通过系统服务器接收到的虚拟机的硬件信息、网络配置信息和磁盘信息,统一转化成符合虚拟机实例化的hypervisor平台规范形式的虚拟机配置项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210429448.6A CN103795759B (zh) | 2012-10-31 | 2012-10-31 | 一种虚拟机镜像文件的调度方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210429448.6A CN103795759B (zh) | 2012-10-31 | 2012-10-31 | 一种虚拟机镜像文件的调度方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103795759A CN103795759A (zh) | 2014-05-14 |
CN103795759B true CN103795759B (zh) | 2018-02-09 |
Family
ID=50671039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210429448.6A Active CN103795759B (zh) | 2012-10-31 | 2012-10-31 | 一种虚拟机镜像文件的调度方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103795759B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189551A (zh) * | 2018-08-09 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种创建中间件的方法、装置及计算机存储介质 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104199683B (zh) * | 2014-08-07 | 2017-10-17 | 新华三技术有限公司 | 一种iso镜像文件加载方法和设备 |
CN104156257A (zh) * | 2014-08-22 | 2014-11-19 | 成都致云科技有限公司 | 一种快速高效的云服务磁盘镜像管理方法 |
CN104156256A (zh) * | 2014-08-22 | 2014-11-19 | 成都致云科技有限公司 | 一种高效灵活的云主机磁盘克隆方法 |
CN106487850B (zh) * | 2015-08-29 | 2019-10-25 | 华为技术有限公司 | 一种云环境下获取镜像的方法、装置和系统 |
CN106528324A (zh) * | 2015-09-10 | 2017-03-22 | 华为技术有限公司 | 故障恢复的方法和装置 |
CN105159750A (zh) * | 2015-09-14 | 2015-12-16 | 浪潮集团有限公司 | 一种虚拟机创建的方法及装置 |
CN106685860B (zh) * | 2015-11-06 | 2020-09-11 | 阿里巴巴集团控股有限公司 | 网络虚拟化方法及设备 |
CN105278999A (zh) * | 2015-11-19 | 2016-01-27 | 国云科技股份有限公司 | 一种安全高效虚拟机软件部署的方法 |
CN105955674B (zh) * | 2016-06-16 | 2019-02-12 | 北京航空航天大学 | 虚拟机磁盘镜像模块化快速组装方法、装置和系统 |
CN106407045B (zh) * | 2016-09-29 | 2019-09-24 | 郑州云海信息技术有限公司 | 一种数据灾难恢复方法、系统及服务器虚拟化系统 |
CN106844003B (zh) * | 2016-12-26 | 2020-05-08 | 中国电子科技集团公司第三十研究所 | 一种虚拟机镜像的校验方法及装置 |
CN109460187B (zh) * | 2018-11-09 | 2022-05-03 | 郑州云海信息技术有限公司 | 一种qcow2文件数据一致性验证方法及验证终端 |
CN109814980A (zh) * | 2019-01-25 | 2019-05-28 | 新华三云计算技术有限公司 | 镜像文件获取方法及装置 |
CN110275717B (zh) * | 2019-05-17 | 2024-03-22 | 平安科技(深圳)有限公司 | 私有镜像克隆方法、装置、计算机设备及存储介质 |
CN113076171B (zh) * | 2020-01-03 | 2023-12-19 | 阿里巴巴集团控股有限公司 | 虚拟机装机方法及装置 |
CN111371885B (zh) * | 2020-02-29 | 2022-02-18 | 苏州浪潮智能科技有限公司 | 一种向VMWare虚拟机传输文件的方法、装置、设备和介质 |
CN111459606A (zh) * | 2020-03-03 | 2020-07-28 | 山东汇贸电子口岸有限公司 | 一种虚拟化下快速创建虚拟机的方法及服务器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102185928A (zh) * | 2011-06-01 | 2011-09-14 | 广州杰赛科技股份有限公司 | 一种在云计算系统创建虚拟机的方法及云计算系统 |
CN102521014A (zh) * | 2011-12-06 | 2012-06-27 | 北京航空航天大学 | 虚拟机的部署方法及装置 |
CN102708060A (zh) * | 2012-05-14 | 2012-10-03 | 华为技术有限公司 | 一种镜像文件访问方法、装置及系统 |
-
2012
- 2012-10-31 CN CN201210429448.6A patent/CN103795759B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102185928A (zh) * | 2011-06-01 | 2011-09-14 | 广州杰赛科技股份有限公司 | 一种在云计算系统创建虚拟机的方法及云计算系统 |
CN102521014A (zh) * | 2011-12-06 | 2012-06-27 | 北京航空航天大学 | 虚拟机的部署方法及装置 |
CN102708060A (zh) * | 2012-05-14 | 2012-10-03 | 华为技术有限公司 | 一种镜像文件访问方法、装置及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189551A (zh) * | 2018-08-09 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种创建中间件的方法、装置及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103795759A (zh) | 2014-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103795759B (zh) | 一种虚拟机镜像文件的调度方法和系统 | |
US11405274B2 (en) | Managing virtual network functions | |
US10635406B2 (en) | Determining the identity of software in software containers | |
US9075638B2 (en) | Efficient hosting of virtualized containers using read-only operating systems | |
US7823023B2 (en) | Test framework for testing an application | |
US8627310B2 (en) | Capturing multi-disk virtual machine images automatically | |
KR101442360B1 (ko) | 플랫폼들 간 가상 머신 이미지 포팅 | |
US11030025B2 (en) | Managing inter-process communications in a containerized application environment | |
US20170277524A1 (en) | Dynamic container deployment with parallel conditional layers | |
US8347071B2 (en) | Converting virtual deployments to physical deployments to simplify management | |
US10503486B2 (en) | Methods and apparatus to reduce application deployments sizes | |
US7886292B2 (en) | Methodology of individualized software deployment for hardware-independent personal computer mass development | |
EP2019358A1 (en) | A method and a system for the creation and deployment of a virtual machine appliance on virtualised servers | |
WO2012065815A1 (en) | Method and system for generating a virtual machine based on templates | |
CN103975306B (zh) | 用于创建虚拟设备的方法和系统 | |
US11418555B1 (en) | Systems and methods for streaming an application via object storage | |
CN110928554A (zh) | 一种部署方法、装置、设备及存储介质 | |
CN112286633A (zh) | 基于CloudStack平台的虚拟机创建方法、装置、设备及存储介质 | |
US20180060091A1 (en) | Effective management of virtual containers in a desktop environment | |
US11200049B2 (en) | Automated test authorization management | |
CN115774742A (zh) | 私有云的数据存储新增方法、装置、设备、介质及产品 | |
CN115016862A (zh) | 基于Kubernetes集群的软件启动方法、装置、服务器及存储介质 | |
JP6920501B1 (ja) | 情報処理システム、プログラム、及び情報処理方法 | |
JP2023545638A (ja) | コンテナ化されたソフトウェアの発見と特定 | |
CN109271179B (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 | ||
CP02 | Change in the address of a patent holder |
Address after: 100086 12, 1201, 3 building, 2 South Road, Haidian District Academy of Sciences, Beijing. Patentee after: Beijing Sohu New Media Information Technology Co., Ltd. Address before: 100084 Beijing Haidian District Zhongguancun East Road 1 hospital 9 building Sohu cyber Building 8 floor 802 room. Patentee before: Beijing Sohu New Media Information Technology Co., Ltd. |
|
CP02 | Change in the address of a patent holder |