CN114816667A - 一种镜像文件处理方法、装置、存储介质及电子设备 - Google Patents

一种镜像文件处理方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN114816667A
CN114816667A CN202210465487.5A CN202210465487A CN114816667A CN 114816667 A CN114816667 A CN 114816667A CN 202210465487 A CN202210465487 A CN 202210465487A CN 114816667 A CN114816667 A CN 114816667A
Authority
CN
China
Prior art keywords
mirror image
file
image file
target
verification
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
Application number
CN202210465487.5A
Other languages
English (en)
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.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
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 China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202210465487.5A priority Critical patent/CN114816667A/zh
Publication of CN114816667A publication Critical patent/CN114816667A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种镜像文件处理方法、装置、存储介质及电子设备,在上传目标镜像文件时不再以单个的服务器为单位,而是通过将目标镜像文件上传至分布式文件系统,由分布式文件系统将目标镜像文件上传到目标服务器上,避免相同的目标镜像文件重复上传至目标服务器,当有多台目标服务器有创建虚拟机的需求时,只需从分布式文件系统上获取目标镜像文件,无需再次重复传输目标镜像文件,避免操作冗余,提高目标镜像文件导入目标服务器的速度与效率。此外,在镜像文件导入的过程中,对镜像文件进行兼容性校验,当镜像文件出现问题时可及时发现。

Description

一种镜像文件处理方法、装置、存储介质及电子设备
技术领域
本申请涉及数据处理技术领域,更具体地说,涉及一种镜像文件处理方法、装置、存储介质及电子设备。
背景技术
随着时间的推移,越来越多的行业选择将服务上云,其中采用在远端服务器上建立虚拟机是常用的云资源使用方法。服务器上虚拟机的建设依赖于系统镜像,若想使用不在服务器上的镜像建立虚拟机,则需要向服务器导入镜像文件。
现有将镜像文件从本地传输至服务器的方式是基于网络传输直接向服务器导入外部镜像使用,使用安全拷贝(secure copy,scp)等命令进行服务器传输,由于镜像文件容量较大,从而导致该镜像文件导入服务器的速度慢,且在导入过中当镜像文件出现问题时无法被及时发现。
发明内容
有鉴于此,本申请公开了一种镜像文件处理方法、装置、存储介质及电子设备,旨在提高目标镜像文件导入目标服务器的速度与效率。此外,在镜像文件导入的过程中,对镜像文件进行兼容性校验,当镜像文件出现问题时可及时发现。
为了实现上述目的,其公开的技术方案如下:
本申请第一方面公开了一种镜像文件处理方法,所述方法包括:
当接收到镜像导入请求时,从对象存储桶中获取所述镜像导入请求对应的自定义镜像导入文件;
对所述自定义镜像导入文件进行兼容性校验,得到校验结果;所述兼容性校验用于校验所述自定义镜像导入文件的镜像格式、镜像文件大小和镜像虚拟尺寸是否符合兼容性要求;
若所述校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
优选的,所述对所述自定义镜像导入文件进行兼容性校验,得到校验结果,包括:
通过预设校验查询语句,从数据库中获取校验信息;所述校验信息至少包括镜像格式校验信息、预设镜像文件大小范围和预设镜像虚拟尺寸范围;
通过所述镜像格式校验信息、所述预设镜像文件大小范围和所述预设镜像虚拟尺寸范围对所述自定义镜像导入文件进行兼容性校验,得到校验结果。
优选的,所述若所述校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度,包括:
获取所述自定义镜像导入文件对应的镜像格式信息、镜像文件大小信息和镜像虚拟尺寸信息;
分别将所述镜像格式信息与所述镜像格式校验信息进行比对,并判断所述镜像文件大小信息是否在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息是否在所述预设镜像虚拟尺寸范围内;
若所述镜像格式信息与所述镜像格式校验信息一致,所述镜像文件大小信息在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息在所述预设镜像虚拟尺寸范围内,则确定所述校验结果通过校验;
将通过兼容性校验的校验结果确定为目标镜像文件;
通过预设镜像传输函数,将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
优选的,还包括:
将目标镜像文件上传至所述对象存储桶中进行存储。
优选的,还包括:
通过预设数据库更新语句,更新上传至分布式文件系统的目标镜像文件在数据库中对应的状态。
本申请第二方面公开了一种镜像文件处理装置,所述装置包括:
获取单元,用于当接收到镜像导入请求时,从对象存储桶中获取所述镜像导入请求对应的自定义镜像导入文件;
校验单元,用于对所述自定义镜像导入文件进行兼容性校验,得到校验结果;所述兼容性校验用于校验所述自定义镜像导入文件的镜像格式、镜像文件大小和镜像虚拟尺寸是否符合兼容性要求;
确定单元,用于若所述校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
优选的,所述校验单元,包括:
第一获取模块,用于通过预设校验查询语句,从数据库中获取校验信息;所述校验信息至少包括镜像格式校验信息、预设镜像文件大小范围和预设镜像虚拟尺寸范围;
第一校验模块,用于通过所述镜像格式校验信息、所述预设镜像文件大小范围和所述预设镜像虚拟尺寸范围对所述自定义镜像导入文件进行兼容性校验,得到校验结果。
优选的,所述确定单元,包括:
第二获取模块,用于获取所述自定义镜像导入文件对应的镜像格式信息、镜像文件大小信息和镜像虚拟尺寸信息;
比对判断模块,用于分别将所述镜像格式信息与所述镜像格式校验信息进行比对,并判断所述镜像文件大小信息是否在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息是否在所述预设镜像虚拟尺寸范围内;
第一确定模块,用于若所述镜像格式信息与所述镜像格式校验信息一致,所述镜像文件大小信息在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息在所述预设镜像虚拟尺寸范围内,则确定所述校验结果通过校验;
第二确定模块,用于将通过兼容性校验的校验结果确定为目标镜像文件;
上传模块,用于通过预设镜像传输函数,将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
本申请第三方面公开了一种存储介质,其特征在于,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如第一方面任意一项所述的镜像文件处理方法。
本申请第四方面公开了一种电子设备,包括存储器,以及一个或者一个以上的指令,其中一个或者一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如第一方面任意一项所述的镜像文件处理方法。
经由上述技术方案可知,本申请公开了一种镜像文件处理方法、装置、存储介质及电子设备,当接收到镜像导入请求时,从对象存储桶中获取所述镜像导入请求对应的自定义镜像导入文件,对自定义镜像导入文件进行兼容性校验,得到校验结果,兼容性校验用于校验自定义镜像导入文件的镜像格式、镜像文件大小和镜像虚拟尺寸是否符合兼容性要求,若校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将目标镜像文件上传至分布式文件系统,使分布式文件系统将目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至目标服务器,以提高目标镜像导入目标服务器的速度。通过上述方案,在上传目标镜像文件时不再以单个的服务器为单位,而是通过将目标镜像文件上传至分布式文件系统,由分布式文件系统将目标镜像文件上传到目标服务器上,避免相同的目标镜像文件重复上传至目标服务器,当有多台目标服务器(母机)有创建虚拟机的需求时,只需从分布式文件系统上获取目标镜像文件,无需再次重复传输目标镜像文件,避免操作冗余,提高目标镜像文件导入目标服务器的速度与效率。此外,在镜像文件导入的过程中,对镜像文件进行兼容性校验,当镜像文件出现问题时可及时发现。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种镜像文件处理方法的流程示意图;
图2为本申请实施例公开的镜像文件处理链路的示意图;
图3为本申请实施例公开的一种镜像文件处理装置的结构示意图;
图4为本申请实施例公开的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
由背景技术可知,现有将镜像文件从本地传输至服务器的方式是基于网络传输直接向服务器导入外部镜像使用,使用安全拷贝(secure copy,scp)等命令进行服务器传输,由于镜像文件容量较大,从而导致该镜像文件导入服务器的速度慢,且在导入过中当镜像文件出现问题时无法被及时发现。
为了解决上述问题,本申请实施例公开了一种镜像文件处理方法、装置、存储介质及电子设备,在上传目标镜像文件时不再以单个的服务器为单位,而是通过将目标镜像文件上传至分布式文件系统,由分布式文件系统将目标镜像文件上传到目标服务器上,避免相同的目标镜像文件重复上传至目标服务器,当有多台目标服务器有创建虚拟机的需求时,只需从分布式文件系统上获取目标镜像文件,无需再次重复传输目标镜像文件,避免操作冗余,提高目标镜像文件导入目标服务器的速度与效率。此外,在镜像文件导入的过程中,对镜像文件进行兼容性校验,当镜像文件出现问题时可及时发现。具体实现方式通过下述实施例具体进行说明。
参考图1所示,为本申请实施例公开的一种镜像文件处理方法,该镜像文件处理方法主要包括如下步骤:
S101:当接收到镜像导入请求时,从对象存储(Cloud Object Storage,COS)桶中获取镜像导入请求对应的自定义镜像导入文件。
在S101中,镜像导入请求通过预设信息来源获取得到。
预设信息来源可以是用户端、信息服务器等。
COS是一种无数据格式限制、可存储海量文件的分布式存储服务,具有高扩展、低成本、可靠安全等优点。COS桶无需分区管理,适用于数据分发等多种场景。
S102:对自定义镜像导入文件进行兼容性校验,得到校验结果;兼容性校验用于校验自定义镜像导入文件的镜像格式、镜像文件大小和镜像虚拟尺寸是否符合兼容性要求。
对自定义镜像导入文件进行兼容性校验,检查镜像的各属性,确保其满兼容性要求,避免上传后无法搭建虚拟机的情况。
其中,兼容性要求可以是自定义镜像导入文件的镜像格式是否符合的镜像格式校验信息的要求、可以是自定义镜像导入文件的镜像文件大小是否在预设镜像文件大小范围内的兼容性要求等。
具体兼容性要求的确定由技术人员根据实际情况进行设置,本申请不做具体限定。
具体对自定义镜像导入文件进行兼容性校验,得到校验结果的过程如下:
首先,通过预设校验查询语句,从数据库中获取校验信息;校验信息至少包括镜像格式校验信息、预设镜像文件大小范围和预设镜像虚拟尺寸范围。
其中,镜像格式校验信息包括RAW格式校验信息、VHD格式校验信息、QCOW2格式校验信息、VMDK格式的校验信息。
预设镜像文件大小范围不超过50G。
预设镜像虚拟尺寸范围不超过500G。
然后,通过镜像格式校验信息、预设镜像文件大小范围和预设镜像虚拟尺寸范围对自定义镜像导入文件进行兼容性校验,得到校验结果。
S103:判断校验结果是否通过兼容性校验,若校验结果通过兼容性校验,则执行S104,若校验结果未通过兼容性校验,则执行S105。
具体判断校验结果是否通过兼容性校验的过程如A1-A3所示。
A1:获取自定义镜像导入文件对应的镜像格式信息、镜像文件大小信息和镜像虚拟尺寸信息。
A2:分别将镜像格式信息与镜像格式校验信息进行比对,并判断镜像文件大小信息是否在预设镜像文件大小范围内,镜像虚拟尺寸信息是否在预设镜像虚拟尺寸范围内。
A3:若镜像格式信息与镜像格式校验信息一致,镜像文件大小信息在预设镜像文件大小范围内,镜像虚拟尺寸信息在预设镜像虚拟尺寸范围内,则确定校验结果通过校验。
S104:将通过兼容性校验的校验结果确定为目标镜像文件,并将目标镜像文件上传至分布式文件系统,使分布式文件系统将目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至目标服务器,以提高目标镜像导入目标服务器的速度。
在S104中,将通过兼容性校验的校验结果确定为目标镜像文件,通过预设镜像传输函数,将目标镜像文件上传至分布式文件系统,使分布式文件系统将目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至目标服务器,以提高目标镜像导入目标服务器的速度。
可选的,将目标镜像文件上传至对象存储桶中进行存储。
其中,将目标镜像从本地上传至对象存储桶,即COS桶中进行存储,在收到镜像导入请求后,从COS桶中下载用户要导入的自定义镜像文件,对自定义镜像文件执行兼容性校验等处理流程。
可选的,通过预设数据库更新语句,更新上传至分布式文件系统的目标镜像文件在数据库中对应的状态。
其中,通过“UPDATE‘t_external_img_info’SET<sql_str>WHERE‘taskId’=<taskId>”。通过填写sql_str,更新数据库中该taskId的信息。
本申请的每一个步骤及时同步数据库,该数据库全局可见,其他人对服务器环境的变化可以及时掌握,镜像传输过程中如出现的故障可以被及时发现并定位。
为了方便了解本申请的镜像文件处理的过程,结合图2进行说明,图2示出了镜像文件处理链路的示意图。
图2中,DESDB为虚拟机异步调度任务数据库,Qcloud API为计量计费调用接口,CVM-API为租户端调用接口,IMAGE-DES为镜像异步任务,VStation为虚机落位装箱调度系统,CCDB为租户端侧数据库,CCDB包括cOsconfig、cDeviceImage和cDeviceImage,cOsconfig为公共镜像数据表,cDeviceImage为系统盘镜像数据表,cDiskImage为数据盘镜像数据表,Image为镜像,HDFS为分布式文件系统,Image_stage为云上快速导入镜像装置、IMAGE DB为镜像相关数据库、cos为对象存储系统,母机在本方案中指代可运行、承载虚拟机或云服务器的物理服务器。
图2中,基于镜像文件处理链路,用户导入自定义镜像文件时不再以单个的服务器为单位,而是将进行兼容性校验的目标镜像文件上传至HDFS,使用HDFS下发目标镜像文件到目标服务器(母机)上,显著提高镜像导入的速度与效率,避免操作冗余。由于该链路基于HDFS实现,能实现高吞吐的数据量访问。并且,母机只需在首次新建虚拟机时下载该目标镜像文件,避免重复下发所造成的时间消耗,提高虚拟机的创建速度。
为规范流程,每次导入镜像会在ImageDB和CCDB数据库插入管理层数据。该数据库所有服务器可见,合理规范操作流程,规避出现相同镜像重复上传的情况。
部分代码目录如表1所示。
Figure BDA0003623834740000081
表1
其中,import_external_image_flow.py为核心代码,负责生产base镜像、转换镜像格式、上传镜像等,其中init函数摘要如下所示:
Figure BDA0003623834740000091
可以从代码中看出,使用CTaskTable().get_img_check()进行镜像校验,使用sql语句“selecti.*from‘t_external_img’as i;”从数据库中获取校验信息。随后使用image_backend.Qcow2Image创建一个qcow2镜像的对象,包含操作系统版本、镜像路径等重要信息。
image_backend.py内包含Qcow2Image类,定义了镜像的属性和方法,包括镜像id查询,镜像大小查询,镜像格式转换等。
image_transmit.py则定义了镜像HDFS传输函数,使用“hadoop fs–mkdir<dir>”和“hadoop fs–put<img><dir>”将镜像传输至服务器。
task_table.py则涉及一些数据库更新语句,用于更新数据库中镜像上传流程的状态。该代码中使用SQL语句实现该操作:“UPDATE‘t_external_img_info’SET<sql_str>WHERE‘taskId’=<taskId>”。通过填写sql_str,插入镜像数据,并基于taskId任务id,根据任务进度逐步更新数据库中该镜像的其他信息。
database.py则声明了一个数据库客户端的类,使用MySQL.connect建立数据库链接。
数据库链接是承载image-stage的物理服务器与数据库建立的链接。基于该链接,在t_external_img_info表中插入该镜像数据,其后,通过sql语句,在任务进行的过程中不断更新t_external_img_info表中taskId所对应的数据,比如镜像名称、vsize、子任务开始时间、子任务耗时等任务阶段运行结果。
数据库链接具体其实是从承载image-stage的物理机上链接数据库的,链接之后会通过sql语句将镜像名称、任务id等信息写入数据库。
config.py中定义了一系列字典结构的数据库信息,包括IP、端口号、用户名、密码等。
通过以上代码目录结构,实现云上快速导入镜像装置Image-stage的后端功能。
S105:不执行镜像上传操作。
本申请中,如若有多台服务器有创建虚拟机的需求,只需从分布式文件系统上获取,无需再次传输镜像,减少了冗余操作。
本申请实施例中,在上传目标镜像文件时不再以单个的服务器为单位,而是通过将目标镜像文件上传至分布式文件系统,由分布式文件系统将目标镜像文件上传到目标服务器上,避免相同的目标镜像文件重复上传至目标服务器,当有多台目标服务器有创建虚拟机的需求时,只需从分布式文件系统上获取目标镜像文件,无需再次重复传输目标镜像文件,避免操作冗余,提高目标镜像文件导入目标服务器的速度与效率。此外,在镜像文件导入的过程中,对镜像文件进行兼容性校验,当镜像文件出现问题时可及时发现。
基于上述实施例图1公开的一种镜像文件处理方法,本申请实施例还对应公开了一种镜像文件处理装置,如图3所示,该镜像文件处理装置包括获取单元301、校验单元302和确定单元303。
获取单元301,用于当接收到镜像导入请求时,从对象存储桶中获取镜像导入请求对应的自定义镜像导入文件。
校验单元302,用于对自定义镜像导入文件进行兼容性校验,得到校验结果;兼容性校验用于校验自定义镜像导入文件的镜像格式、镜像文件大小和镜像虚拟尺寸是否符合兼容性要求。
确定单元303,用于若校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将目标镜像文件上传至分布式文件系统,使分布式文件系统将目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至目标服务器,以提高目标镜像导入目标服务器的速度。
进一步的,校验单元302包括第一获取模块和第一校验模块。
第一获取模块,用于通过预设校验查询语句,从数据库中获取校验信息;校验信息至少包括镜像格式校验信息、预设镜像文件大小范围和预设镜像虚拟尺寸范围。
第一校验模块,用于通过镜像格式校验信息、预设镜像文件大小范围、和预设镜像虚拟尺寸范围对自定义镜像导入文件进行兼容性校验,得到校验结果。
进一步的,确定单元303包括第二获取模块、比对模块、第二校验模块、确定模块和上次模块。
第二获取模块,用于获取自定义镜像导入文件对应的镜像格式信息、镜像文件大小信息和镜像虚拟尺寸信息。
比对模块,用于分别将镜像格式信息与镜像格式校验信息进行比对,并判断镜像文件大小信息是否在预设镜像文件大小范围内,镜像虚拟尺寸信息是否在预设镜像虚拟尺寸范围内。
第二校验模块,用于若镜像格式信息与镜像格式校验信息一致,镜像文件大小信息在预设镜像文件大小范围内,镜像虚拟尺寸信息在预设镜像虚拟尺寸范围内,则确定校验结果通过校验。
确定模块,用于将通过兼容性校验的校验结果确定为目标镜像文件。
上传模块,用于通过预设镜像传输函数,将目标镜像文件上传至分布式文件系统,使分布式文件系统将目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至目标服务器,以提高目标镜像导入目标服务器的速度。
进一步的,镜像文件处理装置还包括上传单元。
上传单元,用于将目标镜像文件上传至对象存储桶中进行存储。
进一步的,镜像文件处理装置还包括更新单元。
更新单元,用于通过预设数据库更新语句,更新上传至分布式文件系统的目标镜像文件在数据库中对应的状态。
本申请实施例中,在上传目标镜像文件时不再以单个的服务器为单位,而是通过将目标镜像文件上传至分布式文件系统,由分布式文件系统将目标镜像文件上传到目标服务器上,避免相同的目标镜像文件重复上传至目标服务器,当有多台目标服务器(母机)有创建虚拟机的需求时,只需从分布式文件系统上获取目标镜像文件,无需再次重复传输目标镜像文件,避免操作冗余,提高目标镜像文件导入目标服务器的速度与效率。此外,在镜像文件导入的过程中,对镜像文件进行兼容性校验,当镜像文件出现问题时可及时发现。
本申请实施例还提供了一种存储介质,存储介质包括存储的指令,其中,在指令运行时控制存储介质所在的设备执行上述镜像文件处理方法。
本申请实施例还提供了一种电子设备,其结构示意图如图4所示,具体包括存储器401,以及一个或者一个以上的指令402,其中一个或者一个以上指令402存储于存储器401中,且经配置以由一个或者一个以上处理器403执行所述一个或者一个以上指令402执行上述镜像文件处理方法。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (10)

1.一种镜像文件处理方法,其特征在于,所述方法包括:
当接收到镜像导入请求时,从对象存储桶中获取所述镜像导入请求对应的自定义镜像导入文件;
对所述自定义镜像导入文件进行兼容性校验,得到校验结果;所述兼容性校验用于校验所述自定义镜像导入文件的镜像格式、镜像文件大小和镜像虚拟尺寸是否符合兼容性要求;
若所述校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
2.根据权利要求1所述的方法,其特征在于,所述对所述自定义镜像导入文件进行兼容性校验,得到校验结果,包括:
通过预设校验查询语句,从数据库中获取校验信息;所述校验信息至少包括镜像格式校验信息、预设镜像文件大小范围和预设镜像虚拟尺寸范围;
通过所述镜像格式校验信息、所述预设镜像文件大小范围和所述预设镜像虚拟尺寸范围对所述自定义镜像导入文件进行兼容性校验,得到校验结果。
3.根据权利要求2所述的方法,其特征在于,所述若所述校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度,包括:
获取所述自定义镜像导入文件对应的镜像格式信息、镜像文件大小信息和镜像虚拟尺寸信息;
分别将所述镜像格式信息与所述镜像格式校验信息进行比对,并判断所述镜像文件大小信息是否在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息是否在所述预设镜像虚拟尺寸范围内;
若所述镜像格式信息与所述镜像格式校验信息一致,所述镜像文件大小信息在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息在所述预设镜像虚拟尺寸范围内,则确定所述校验结果通过校验;
将通过兼容性校验的校验结果确定为目标镜像文件;
通过预设镜像传输函数,将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
4.根据权利要求1所述的方法,其特征在于,还包括:
将目标镜像文件上传至所述对象存储桶中进行存储。
5.根据权利要求1所述的方法,其特征在于,还包括:
通过预设数据库更新语句,更新上传至分布式文件系统的目标镜像文件在数据库中对应的状态。
6.一种镜像文件处理装置,其特征在于,所述装置包括:
获取单元,用于当接收到镜像导入请求时,从对象存储桶中获取所述镜像导入请求对应的自定义镜像导入文件;
校验单元,用于对所述自定义镜像导入文件进行兼容性校验,得到校验结果;所述兼容性校验用于校验所述自定义镜像导入文件的镜像格式、镜像文件大小和镜像虚拟尺寸是否符合兼容性要求;
确定单元,用于若所述校验结果通过兼容性校验,则将通过兼容性校验的校验结果确定为目标镜像文件,并将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
7.根据权利要求6所述的装置,其特征在于,所述校验单元,包括:
第一获取模块,用于通过预设校验查询语句,从数据库中获取校验信息;所述校验信息至少包括镜像格式校验信息、预设镜像文件大小范围和预设镜像虚拟尺寸范围;
第一校验模块,用于通过所述镜像格式校验信息、所述预设镜像文件大小范围和所述预设镜像虚拟尺寸范围对所述自定义镜像导入文件进行兼容性校验,得到校验结果。
8.根据权利要求7所述的装置,其特征在于,所述确定单元,包括:
第二获取模块,用于获取所述自定义镜像导入文件对应的镜像格式信息、镜像文件大小信息和镜像虚拟尺寸信息;
比对判断模块,用于分别将所述镜像格式信息与所述镜像格式校验信息进行比对,并判断所述镜像文件大小信息是否在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息是否在所述预设镜像虚拟尺寸范围内;
第一确定模块,用于若所述镜像格式信息与所述镜像格式校验信息一致,所述镜像文件大小信息在所述预设镜像文件大小范围内,所述镜像虚拟尺寸信息在所述预设镜像虚拟尺寸范围内,则确定所述校验结果通过校验;
第二确定模块,用于将通过兼容性校验的校验结果确定为目标镜像文件;
上传模块,用于通过预设镜像传输函数,将所述目标镜像文件上传至分布式文件系统,使所述分布式文件系统将所述目标镜像文件上传到目标服务器,避免相同的目标镜像文件重复上传至所述目标服务器,以提高所述目标镜像导入所述目标服务器的速度。
9.一种存储介质,其特征在于,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如权利要求1至5任意一项所述的镜像文件处理方法。
10.一种电子设备,其特征在于,包括存储器,以及一个或者一个以上的指令,其中一个或者一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如权利要求1至5任意一项所述的镜像文件处理方法。
CN202210465487.5A 2022-04-29 2022-04-29 一种镜像文件处理方法、装置、存储介质及电子设备 Pending CN114816667A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210465487.5A CN114816667A (zh) 2022-04-29 2022-04-29 一种镜像文件处理方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210465487.5A CN114816667A (zh) 2022-04-29 2022-04-29 一种镜像文件处理方法、装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN114816667A true CN114816667A (zh) 2022-07-29

Family

ID=82509719

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210465487.5A Pending CN114816667A (zh) 2022-04-29 2022-04-29 一种镜像文件处理方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN114816667A (zh)

Similar Documents

Publication Publication Date Title
CN110825420B (zh) 分布式集群的配置参数更新方法、装置、设备及存储介质
CN107783816A (zh) 虚拟机的创建方法及装置、大数据集群创建的方法及装置
CN106506587A (zh) 一种基于分布式存储的Docker镜像下载方法
CN108133007A (zh) 一种数据同步方法和系统
CN113742033B (zh) 一种kubernetes集群联邦系统及其实现方法
US9900386B2 (en) Provisioning data to distributed computing systems
CN107273440A (zh) 计算机应用、数据存储方法、微服务和微数据库
CN108446326B (zh) 一种基于容器的异构数据管理方法及系统
CN111064626B (zh) 配置更新方法、装置、服务器及可读存储介质
CN103593215A (zh) 用于信息处理系统映像网络传递的系统和方法
CN109672752A (zh) 数据同步的方法及节点
CN114116684B (zh) 基于Docker容器化的深度学习大模型与大数据集版本管理方法
CN115858488A (zh) 基于数据治理的平行迁移方法、装置及可读介质
CN108573063A (zh) 一种数据查询方法及系统
CN116974948B (zh) 业务系统测试方法、系统、设备和介质
EP3349416B1 (en) Relationship chain processing method and system, and storage medium
WO2014180401A1 (zh) 业务模型的适配方法及系统
CN114816667A (zh) 一种镜像文件处理方法、装置、存储介质及电子设备
CN116627925A (zh) 一种基于k8s环境的业务日志数据处理方法及装置
CN115587141A (zh) 一种数据库同步方法和装置
CN109814911A (zh) 用于管理脚本程序的方法、装置、计算机设备及存储介质
US20180063242A1 (en) Method and apparatus for operating infrastructure layer in cloud computing architecture
CN110347654A (zh) 一种上线集群特性的方法和装置
CN113127292A (zh) 一种适用于多云管理的运维、监控方法
CN118092982B (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