CN115509685A - 一种快速批量创建云主机的方法、装置、服务器及介质 - Google Patents
一种快速批量创建云主机的方法、装置、服务器及介质 Download PDFInfo
- Publication number
- CN115509685A CN115509685A CN202211217579.8A CN202211217579A CN115509685A CN 115509685 A CN115509685 A CN 115509685A CN 202211217579 A CN202211217579 A CN 202211217579A CN 115509685 A CN115509685 A CN 115509685A
- Authority
- CN
- China
- Prior art keywords
- mirror image
- mirror
- image
- sub
- cloud
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- 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/45562—Creating, deleting, cloning virtual machine instances
Abstract
本发明涉及一种快速批量创建云主机的方法、装置、服务器及介质,本申请将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像,通过第一镜像和第二镜像的镜像id建立两者之间的映射关系;需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷;按照所需创建云主机数量,克隆相应数量的镜像卷得到子镜像,将镜像卷的镜像信息合并到子镜像以删除子镜像与镜像卷之间联系;使用克隆得到的子镜像分别创建云主机。可以克隆镜像的克隆取代镜像的复制用于创建云主机的过程,提高创建云主机速度,极大提高创建云主机的速度,且降低底层存储IO资源消耗,对业务影响小。
Description
技术领域
本发明涉及云主机批量创建领域,尤其涉及一种快速批量创建云主机的方法、装置、服务器及介质。
背景技术
OpenStack的资源分配更加灵活,依靠虚拟化技术,可以按需分配到对应用户,比较适应于大数据应用对硬件资源动态变化的需求,因此随着云计算和大数据行业的兴起和发展,OpenStack也得到了大力推广。
使用OpenStack创建云主机有几种方式:通过镜像、镜像卷、云主机快照(也属于镜像)等,一般的创建云主机的镜像的镜像格式为qcow2格式,qcow格式的好处是:比raw格式文件更小,只有在虚拟机实际占用了磁盘空间时,其文件才会增长,能方便的减少迁移花费的流量,更适用于云计算系统,且支持写时拷贝、快照、加密等raw格式不支持的功能,通过镜像卷创建云主机的时候,需要先把qcow2的镜像拷贝到一个空卷上,制作一个镜像卷,然后再使用镜像卷启动云主机,这个创建过程有一个问题,qcow2镜像拷贝到空卷的时间会跟qcow2镜像大小有关,镜像越大,拷贝时间越久,如果需要批量创建云主机的时候,就需要分别拷贝qcow2镜像创建镜像卷,花费大量的时间,并占用存储网络带宽资源。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本发明提供一种快速批量创建云主机的方法、装置、服务器及介质。
第一方面,本发明提供一种快速批量创建云主机的方法,包括:将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像,通过第一镜像和第二镜像的镜像id建立两者之间的映射关系;
需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷;
按照所需创建云主机数量,克隆镜像卷得到相应数量的子镜像,将镜像卷的镜像信息合并到子镜像以删除子镜像与镜像卷之间联系;
使用克隆得到的子镜像分别创建云主机。
更进一步地,根据所述第一镜像的镜像格式类型选择相应的镜像格式转换工具,通过所述镜像格式转换工具将第一镜像转换为可以克隆的第二镜像;
统计基于所述镜像格式转换工具转换得到的可克隆的镜像格式类型,将可克隆的镜像格式类型存储于第二列表中,基于所述第二列表向用户提供可以作为第二镜像的镜像格式类型。
更进一步地,所述通过第一镜像和第二镜像的镜像id建立两者之间的映射关系包括:
根据第一镜像和第二镜像的镜像名查询相应的镜像id;
构建记录第一镜像和第二镜像映射关系的映射关系表,所述映射关系表中记录映射关系序号、第一镜像的镜像id及与第一镜像具有映射关系的第二镜像的镜像id和状态。
更进一步地,基于所述映射关系检测是否存在与第一镜像对应的第二镜像,对于不存在对应第二镜像的第一镜像,将所述第一镜像转换成第二镜像,并通过第一镜像和第二镜像的镜像id建立两者之间的映射关系。
更进一步地,所述需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷包括:
遍历批量创建云主机所基于的镜像的镜像格式类型,分析镜像是否为第一镜像,若为第一镜像,则获取第一镜像的镜像id,并根据映射关系和第一镜像的镜像id查找对应的第二镜像的镜像id,通过镜像id查询第二镜像,利用查询到的第二镜像创建镜像卷。
更进一步地,基于镜像格式类型识别镜像为第一镜像包括:获取不可克隆的镜像格式类型存储于第一列表中,获得镜像的镜像格式类型,检测所述镜像格式类型在第一列表中存在,是则判断镜像为第一镜像。
更进一步地,按照所需创建云主机数量,克隆相应数量的镜像卷得到子镜像,所克隆的子镜像名称包括克隆源镜像卷名称和顺序排列的编号;
克隆时,获取镜像卷历史克隆的最后一子镜像的子镜像名称中的编号,将编号依次加一直至加到所需创建云主机数量,得到本次克隆的全部子镜像的子镜像名称中的编号,将编号结合克隆源镜像卷名称得到全部子镜像的子镜像名称。
更进一步地,所述方法还包括:
云主机创建完成后,记录云主机id和所采用子镜像的匹配关系;
遍历所创建的云主机进行测试,统计失败云主机id,根据失败云主机id和匹配关系确定相应的子镜像,重新克隆子镜像创建云主机。
第二方面,本发明提供一种快速批量创建云主机的装置,包括:镜像转换模块,所述镜像转换模块将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像;
映射记录模块,所述映射记录模块通过相应第一镜像和第二镜像的镜像id建立两者之间的映射关系;
云主机创建模块,在通过第一镜像批量创建云主机时,所述云主机创建模块基于映射记录模块记录的映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷,并按照所需创建云主机数量,克隆镜像卷得到相应数量的子镜像,将镜像卷的镜像信息合并到子镜像以删除子镜像与镜像卷之间联系;使用克隆得到的子镜像分别创建云主机。
第三方面,本发明提供一种实现快速批量创建云主机的服务器,包括:至少一处理单元,总线单元和存储单元,其中,所述总线单元连接存储单元、处理单元,所述存储单元存储计算机程序,计算机程序被处理单元执行时实现所述的快速批量创建云主机的方法。
第四方面,本发明提供一种实现快速批量创建云主机的方法的存储介质,所述存储介质存储计算机程序,所述计算机程序被处理器执行时实现所述的快速批量创建云主机的方法。
本发明实施例提供的上述技术方案与现有技术相比具有如下优点:
本发明将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像,通过第一镜像和第二镜像的镜像id建立两者之间的映射关系;需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷;按照所需创建云主机数量,克隆相应数量的镜像卷得到子镜像,将镜像卷的镜像信息flattern合并到子镜像以删除子镜像与镜像卷之间联系;使用克隆得到的子镜像分别创建云主机。通过将无法克隆的第一镜像转换为可以克隆的第二镜像,在进行云主机创建时,利用第二镜像创建镜像卷,克隆镜像卷得到子镜像,在存储后端克隆镜像卷的速度可达到秒级,相比复制镜像文件创建镜像卷的方式大大减少所消耗的时间,提高创建云主机的速度。而且通过克隆的方式,可大量节省创建大镜像云主机时占用的底层存储IO资源,保证业务运行具有充足底层IO资源,对在运行业务影响小。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种快速批量创建云主机的方法的流程图;
图2为本发明实施例提供的将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像的流程图;
图3为本发明实施例提供的通过第一镜像和第二镜像的镜像id建立两者之间的映射关系的流程图;
图4为本发明实施例提供的需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷的流程图;
图5为本发明实施例提供的一种快速批量创建云主机的装置的示意图;
图6为发明实施例提供的一种实现快速批量创建云主机的服务器的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
实施例1
参阅图1所示,本发明提供一种快速批量创建云主机的方法,包括:
S100,将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像。具体实施过程中,参阅图2所示,步骤S100包括:
S101,预先获取不可克隆的镜像格式类型存储于第一列表中。
S102,统计OpenStack中上传的用于创建云主机的镜像,并存储于镜像列表中。在一种可行的实施方式中,将上传到OpenStack中用于创建云主机的无法可控的第一镜像选出。具体的,如通过“opensta ck image create"image01"--file image01.qcow2--disk-for mat qcow2--container-format bare--public”指令在OpenStack上传名为image01格式为qcow2的镜像。对于所上传的镜像将其镜像名和镜像格式类型组成字符增加到镜像列表中。
S103,遍历镜像列表中每个字符的镜像格式类型是否在第一列表中存在,若存在则执行S104,否则执行S105。统计不可克隆的镜像格式类型存储于第一列表中,分析镜像列表中镜像是否为第一镜像时,获得镜像的镜像格式类型,检测所得镜像格式类型在第一列表中是否存在,存在则判断镜像为第一镜像。
S104,判断该镜像为第一镜像并选出增加到第一镜像列表中。
S105,检测镜像列表是否遍历完,未遍历完则执行S103进行下一个字符的判断,遍历完则执行S106。
S106,遍历第一镜像列表中的第一镜像,选定第二镜像的镜像格式类型;根据第一镜像的镜像格式类型选择相应的镜像格式转换工具将第一镜像转换为可以克隆的第二镜像。一种可行的镜像转换工具为qemu-img工具,通过使用“qemu-img convert-f{第一镜像格式类型}-O{第二镜像格式类型}{第一镜像镜像名}.{第一镜像格式类型}{第二镜像镜像名}.{第二镜像格式类型}”将第一镜像转为第二镜像,{}中为相应的变量。
如第一镜像列表中记录image01_qcow2和image02_qcow2两个表示第一镜像的字符,其中,下划线前为第一镜像的镜像名,下划线后为镜像格式类型,遍历第一镜像列表中的字符,通过split指令以下划线为分隔处理遍历得到的每个字符取下划线前后两部分的镜像名im age01和镜像格式类型qcow2;选定第二镜像的镜像格式类型为raw,取第二镜像镜像名为image03,则将字符image01、qcow2、raw和ima ge代入到qemu-img工具转换镜像指令中“qemu-img convert-f qco w2-O raw image01.qcow2 image03.raw”将对应字符image01_qcow2的第一镜像image01.qcow2转换为第二镜像image03.raw。
在一种优选的实施方式中,统计基于所述镜像格式转换工具转换得到的可克隆的镜像格式类型,将可克隆的镜像格式类型存储于第二列表中,基于所述第二列表向用户提供可以作为第二镜像的镜像格式类型。
S200,通过第一镜像和第二镜像的镜像id建立两者之间的映射关系。具体实施过程中,参阅图3所示,所述步骤S200包括:
S201,预先构建一个记录第一镜像和第二镜像映射关系的映射关系表。所述映射关系表记录包括映射关系序号、第一镜像的镜像id与第一镜像具有映射关系的第二镜像id和状态。具体实施过程中,所述状态包括在使用或未使用状态。
S202,根据第一镜像和由第一镜像转换得到的第二镜像的镜像名查询相应的镜像id;具体的,获取第一镜像的镜像名和由第一镜像转换得到的第二镜像的镜像名,利用所得到的镜像名执行id查询命令“select id from glance where name=‘镜像名’”获取相应的镜像id。
S203,将第一镜像和由第一镜像转换得到的第二镜像的镜像id按照映射关系记录于映射关系表中。
S300,需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷。
具体实施过程中,参阅图4所示,步骤S300包括:
S301,统计创建云主机所基于的镜像于云主机镜像列表中。
S302,遍历云主机镜像列表中镜像的镜像格式类型是否在第一列表中存在,在则执行步骤S303。
S303,获取第一镜像的镜像id,并检测根据映射关系和第一镜像的镜像id是否能查找对应的第二镜像的镜像id,能则执行S304,否则执行S100和S200,对于无法找到对应第二镜像的第一镜像,转换成第二镜像,并通过第一镜像和第二镜像的镜像id建立两者之间的映射关系。
具体的,执行“select第二镜像的镜像id from映射关系表where第一镜像的镜像id=xxx”命令实现根据第一镜像的镜像id查到第二镜像的镜像id。
S304,通过镜像id找到第二镜像,利用查询到的第二镜像创建镜像卷。具体实施过程中,通过执行“cinder create--name镜像卷名称size--image第二镜像名称--availability-zone<az_name>--volume-type<volum_type_name>”实现利用第二镜像创建镜像卷。如执行cinder create--name image03_rbd size--image image03--availability-zone<az_name>--volume-type<volum_type_name>将第二镜像image03创建为名称为image03_rbd的镜像卷。
S400,按照所需创建云主机数量克隆镜像卷得到相应数量的子镜像,将镜像卷的镜像信息flattern合并到子镜像以删除子镜像与镜像卷之间联系。具体的,通过执行“rbdclone镜像卷名称子镜像名称”的执行实现克隆镜像卷。
在一种优选的实施方式中,所克隆的子镜像名称包括克隆源镜像卷名称和顺序排列的编号,如对于镜像卷image03_rbd,其子镜像命名为image03_rbd_clone01,image03_rbd_clone02……
克隆时,获取镜像卷历史克隆的最后一子镜像的子镜像名称中的编号,将编号从加一直至加到所需创建云主机数量,得到本次克隆的全部子镜像的子镜像名称中的编号,将编号结合克隆源镜像卷名称得到全部子镜像的子镜像名称。
克隆得到子镜像后,遍历得到的子镜像,将克隆源的镜像卷信息flattern合并到每个子镜像。
S500,使用克隆得到的子镜像分别创建云主机。具体的,执行“novaboot--flavor<flavor_id>--boot-volume子镜像名称--availability-zone<az_name>--nic net-id=<network_id><vm_name>--poll”实现使用克隆得到的子镜像分别创建云主机。在一种优选的实施方式中,遍历名称列表中的子镜像名称,基于遍历到的子镜像名称获取配置信息,将所遍历到的子镜像名称和相应的配置(--flavor、--availability-zone、--nic)代入到上述实现使用子镜像创建云主机的指令中。
在一种优选地实施方式中,创建完成云主机后,记录云主机id和所采用子镜像的匹配关系;遍历所创建的云主机进行测试,统计失败云主机id,根据失败云主机id和匹配关系确定相应的子镜像,重新克隆子镜像创建云主机。
实施例2
参阅图5所示,本发明实施例提供一种实现快速批量创建云主机的服务器,包括:至少一处理单元,总线单元和存储单元,其中,所述总线单元连接存储单元、处理单元,所述存储单元存储计算机程序,计算机程序被处理单元执行时实现所述的快速批量创建云主机的方法。具体的,将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像。通过第一镜像和第二镜像的镜像id建立两者之间的映射关系。需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷。按照所需创建云主机数量,克隆相应数量的镜像卷得到子镜像,将镜像卷的镜像信息flattern合并到子镜像以删除子镜像与镜像卷之间联系。使用克隆得到的子镜像分别创建云主机。
实施例3
参阅图5所示,本发明实施例提供一种快速批量创建云主机的装置,包括:
镜像检测模块,所述镜像检测模块用于遍历批量创建云主机所基于的镜像的镜像格式类型分析镜像是否为第一镜像;
镜像转换模块,所述镜像转换模块将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像;
映射记录模块,所述映射记录模块通过相应第一镜像和第二镜像的镜像id建立两者之间的映射关系;
云主机创建模块,在通过第一镜像批量创建云主机时,所述云主机创建模块基于映射记录模块记录的映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷,并按照所需创建云主机数量,克隆镜像卷得到相应数量的子镜像,将镜像卷的镜像信息合并到子镜像以删除子镜像与镜像卷之间联系;使用克隆得到的子镜像分别创建云主机。
云主机测试模块,所述云主机测试模块在云主机创建完成后,记录云主机id和所采用子镜像的匹配关系;遍历所创建的云主机进行测试,统计失败云主机id,根据失败云主机id和匹配关系确定相应的子镜像,重新克隆子镜像创建云主机。
实施例4
本发明实施例提供一种实现快速批量创建云主机的方法的存储介质,所述存储介质存储计算机程序,所述计算机程序被处理器执行时实现所述的快速批量创建云主机的方法。
本发明将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像,通过第一镜像和第二镜像的镜像id建立两者之间的映射关系;需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷;按照所需创建云主机数量,克隆相应数量的镜像卷得到子镜像,将镜像卷的镜像信息flattern合并到子镜像以删除子镜像与镜像卷之间联系;使用克隆得到的子镜像分别创建云主机。通过将无法克隆的第一镜像转换为可以克隆的第二镜像,在进行云主机创建时,利用第二镜像创建镜像卷,克隆镜像卷得到子镜像,在存储后端克隆镜像卷的速度可达到秒级,相比复制镜像文件创建镜像卷的方式大大减少所消耗的时间,提高创建云主机的速度。而且通过克隆的方式,可大量节省创建大镜像云主机时占用的底层存储IO资源,保证业务运行具有充足底层IO资源,对在运行业务影响小。
在本发明所提供的实施例中,应该理解到,所揭露的结构和方法,可以通过其它的方式实现。例如,以上所描述的结构实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,结构或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (11)
1.一种快速批量创建云主机的方法,其特征在于,包括:将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像,通过第一镜像和第二镜像的镜像id建立两者之间的映射关系;
需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷;
按照所需创建云主机数量,克隆镜像卷得到相应数量的子镜像,将镜像卷的镜像信息合并到子镜像以删除子镜像与镜像卷之间联系;
使用克隆得到的子镜像分别创建云主机。
2.根据权利要求1所述的快速批量创建云主机的方法,其特征在于,
根据所述第一镜像的镜像格式类型选择相应的镜像格式转换工具,通过所述镜像格式转换工具将第一镜像转换为可以克隆的第二镜像;
统计基于所述镜像格式转换工具转换得到的可克隆的镜像格式类型,将可克隆的镜像格式类型存储于第二列表中,基于所述第二列表向用户提供可以作为第二镜像的镜像格式类型。
3.根据权利要求1所述的快速批量创建云主机的方法,其特征在于,
所述通过第一镜像和第二镜像的镜像id建立两者之间的映射关系包括:
根据第一镜像和第二镜像的镜像名查询相应的镜像id;
构建记录第一镜像和第二镜像映射关系的映射关系表,所述映射关系表中记录映射关系序号、第一镜像的镜像id及与第一镜像具有映射关系的第二镜像的镜像id和状态。
4.根据权利要求1所述的快速批量创建云主机的方法,其特征在于,
基于所述映射关系检测是否存在与第一镜像对应的第二镜像,对于不存在对应第二镜像的第一镜像,将所述第一镜像转换成第二镜像,并通过第一镜像和第二镜像的镜像id建立两者之间的映射关系。
5.根据权利要求1所述的快速批量创建云主机的方法,其特征在于,所述需要通过第一镜像批量创建云主机时,基于所述映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷包括:
遍历批量创建云主机所基于的镜像的镜像格式类型分析镜像是否为第一镜像,若为第一镜像,则获取第一镜像的镜像id,并根据映射关系和第一镜像的镜像id查找对应的第二镜像的镜像id,通过镜像id查询第二镜像,利用查询到的第二镜像创建镜像卷。
6.根据权利要求5所述的快速批量创建云主机的方法,其特征在于,
基于镜像格式类型识别镜像为第一镜像包括:获取不可克隆的镜像格式类型存储于第一列表中,获得镜像的镜像格式类型,检测所述镜像格式类型在第一列表中存在,是则判断镜像为第一镜像。
7.根据权利要求1所述的快速批量创建云主机的方法,其特征在于,按照所需创建云主机数量,克隆相应数量的镜像卷得到子镜像,所克隆的子镜像名称包括克隆源镜像卷名称和顺序排列的编号;
克隆时,获取镜像卷历史克隆的最后一子镜像的子镜像名称中的编号,将编号从加一直至加到所需创建云主机数量,得到本次克隆的全部子镜像的子镜像名称中的编号,将编号结合克隆源镜像卷名称得到全部子镜像的子镜像名称。
8.根据权利要求1所述的快速批量创建云主机的方法,其特征在于,所述方法还包括:
云主机创建完成后,记录云主机id和所采用子镜像的匹配关系;
遍历所创建的云主机进行测试,统计失败云主机id,根据失败云主机id和匹配关系确定相应的子镜像,重新克隆子镜像创建云主机。
9.一种快速批量创建云主机的装置,其特征在于,包括:镜像转换模块,所述镜像转换模块将OpenStack中上传的无法克隆的第一镜像转换得到可以克隆的第二镜像;
映射记录模块,所述映射记录模块通过相应第一镜像和第二镜像的镜像id建立两者之间的映射关系;
云主机创建模块,在通过第一镜像批量创建云主机时,所述云主机创建模块基于映射记录模块记录的映射关系查到与第一镜像对应的第二镜像,使用查到的第二镜像创建镜像卷,并按照所需创建云主机数量,克隆镜像卷得到相应数量的子镜像,将镜像卷的镜像信息合并到子镜像以删除子镜像与镜像卷之间联系;使用克隆得到的子镜像分别创建云主机。
10.一种实现快速批量创建云主机的服务器,其特征在于,包括:至少一处理单元,总线单元和存储单元,其中,所述总线单元连接存储单元、处理单元,所述存储单元存储计算机程序,计算机程序被处理单元执行时实现如权利要求1-8任一所述的快速批量创建云主机的方法。
11.一种实现快速批量创建云主机的方法的存储介质,所述存储介质存储计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-8任一所述的快速批量创建云主机的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211217579.8A CN115509685A (zh) | 2022-09-30 | 2022-09-30 | 一种快速批量创建云主机的方法、装置、服务器及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211217579.8A CN115509685A (zh) | 2022-09-30 | 2022-09-30 | 一种快速批量创建云主机的方法、装置、服务器及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115509685A true CN115509685A (zh) | 2022-12-23 |
Family
ID=84508670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211217579.8A Pending CN115509685A (zh) | 2022-09-30 | 2022-09-30 | 一种快速批量创建云主机的方法、装置、服务器及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115509685A (zh) |
-
2022
- 2022-09-30 CN CN202211217579.8A patent/CN115509685A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109634718B (zh) | 云平台创建镜像的方法及系统 | |
CN112445579B (zh) | 零终端数据处理系统及其文件复制方法、装置 | |
JP4612912B1 (ja) | 情報処理装置、情報処理システムの制御方法およびプログラム | |
CN111061432B (zh) | 一种业务迁移方法、装置、设备及可读存储介质 | |
CN112000277B (zh) | 精简置备文件拷贝方法、装置、设备及可读存储介质 | |
CN111124286A (zh) | 一种基于Libcloud的多云管理实现方法 | |
CN113312155B (zh) | 虚拟机创建方法、装置、设备、系统及计算机程序产品 | |
CN112612417A (zh) | 数据迁移方法、装置、设备及存储介质 | |
CN115114232A (zh) | 一种历史版本对象列举方法、装置及其介质 | |
CN111026331A (zh) | 请求响应方法、装置、设备及计算机可读存储介质 | |
CN108228842B (zh) | Docker镜像库文件存储方法、终端、设备以及存储介质 | |
CN102004653B (zh) | 图像形成装置以及安装方法 | |
CN111522626B (zh) | 一种虚拟机列表生成方法、装置及电子设备 | |
CN114443058A (zh) | 一种在公有云创建私有镜像的方法及相关设备 | |
CN112445578A (zh) | 零终端数据处理系统及其文件复制方法、装置 | |
CN110515540B (zh) | 一种拓扑硬盘的方法及装置 | |
CN115509685A (zh) | 一种快速批量创建云主机的方法、装置、服务器及介质 | |
JP2021101319A (ja) | 情報処理装置及び情報処理プログラム | |
CN111845143B (zh) | 一种手持设备打印的方法及设备 | |
CN106484561B (zh) | 虚拟计算机系统和外部设备控制方法 | |
CN115061773A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
KR20110023580A (ko) | 데이터를 복구하기 위한 방법 및 시스템 | |
CN116991542B (zh) | 一种虚拟机快照方法、系统、电子设备及计算机存储介质 | |
JP5842437B2 (ja) | 情報処理装置及び情報処理プログラム | |
CN114936031B (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 |