一种虚拟机创建方法、装置、电子设备及存储介质制造方法及图纸

技术编号:35925655 阅读:15 留言:0更新日期:2022-12-10 11:18
本申请提供了一种虚拟机创建方法、装置、电子设备及存储介质,该方法包括:获取目标实例对应的多个元数据;针对每个元数据,确定该元数据是否为第一类元数据;若该元数据是第一类元数据,对该元数据进行解析获取该元数据中的值,该元数据中的值包括硬件设备添加方法以及硬件设备参数;执行不同第一类元数据对应的多个硬件设备添加方法,将每个第一类元数据对应的硬件设备参数写入到虚拟机的xml定义文件中;根据xml定义文件生成目标实例对应的虚拟机。通过采用上述虚拟机创建方法、装置、电子设备及存储介质,解决了在创建支持硬件设备的虚拟机时,创建效率低以及灵活性差的问题。创建效率低以及灵活性差的问题。创建效率低以及灵活性差的问题。

【技术实现步骤摘要】
一种虚拟机创建方法、装置、电子设备及存储介质


[0001]本申请涉及计算机
,具体而言,涉及一种虚拟机创建方法、装置、电子设备及存储介质。

技术介绍

[0002]随着虚拟化技术的不断发展,虚拟机被越来越广泛地应用在各个
,虚拟机是指通过软件模拟的具有完整硬件系统功能的完全隔离的一个独立的计算机系统,在实体计算机中能够完成的工作在虚拟机中都可以实现。在使用Openstack或者Qemu

kvm搭建虚拟化平台时,创建虚拟机时需要支持一些PCI硬件设备(PCI硬件设备是指通过PCI总线连接的设备)。
[0003]目前,在利用Openstack创建多个支持硬件设备的虚拟机时,每个虚拟机都需要调用写死的硬件支持代码,例如:当创建多个支持USB设备的虚拟机时,针对每个虚拟机都需要在该虚拟机对应的config.py文件中单独设置对应的LibvirtConfigGuestUSB类来进行USB设备的属性定义,导致在创建支持硬件设备的虚拟机时,创建效率低、灵活性差的问题。

技术实现思路

[0004]有鉴于此,本申请的目的在于提供一种虚拟机创建方法、装置、电子设备及存储介质,以解决在创建支持硬件设备的虚拟机时,创建效率低、灵活性差的问题。
[0005]第一方面,本申请实施例提供了一种虚拟机创建方法,包括:
[0006]获取目标实例对应的多个元数据;
[0007]针对每个元数据,确定该元数据是否为第一类元数据,第一类元数据是定义硬件设备属性的元数据;
[0008]若该元数据是第一类元数据,对该元数据进行解析获取该元数据中的值,该元数据中的值包括硬件设备添加方法以及硬件设备参数;
[0009]执行不同第一类元数据对应的多个硬件设备添加方法,将每个第一类元数据对应的硬件设备参数写入到虚拟机的xml定义文件中;
[0010]根据xml定义文件生成目标实例对应的虚拟机。
[0011]可选地,确定该元数据是否为第一类元数据,包括:确定该元数据对应的键值对中键的取值是否为设定格式;若键值对中键的取值为设定格式,确定该元数据为第一类元数据。
[0012]可选地,元数据还包括第二类元数据,第二类元数据是指Openstack可直接识别的元数据;获取目标实例对应的多个元数据,包括:确定目标实例中第二类元数据的取值;按照设定格式设置目标实例中第二类元数据的键值对的取值。
[0013]可选地,确定该元数据对应的键值对中的键是否为设定格式,包括:确定该元数据对应的键值对中键的取值是否以设定字符开头;若键值对中键的取值是以设定字符开头,确定该元数据对应的键值对中的键为设定格式。
[0014]可选地,执行不同第一类元数据对应的多个硬件设备添加方法,包括:针对每个第一类元数据,确定该第一类元数据对应的硬件设备添加方法;将该第一类元数据对应的硬件设备参数作为该硬件设备添加方法的参数,并执行该硬件设备添加方法。
[0015]可选地,根据xml定义文件生成目标虚拟机,包括:将xml定义文件发送至Libvirt;Libvirt根据xml定义文件中的硬件设备参数生成目标虚拟机。
[0016]可选地,第一类元数据包括音频元数据和/或USB元数据。
[0017]第二方面,本申请实施例还提供了一种虚拟机创建装置,所述装置包括:
[0018]元数据确定模块,用于获取目标实例对应的多个元数据;
[0019]类型确定模块,用于针对每个元数据,确定该元数据是否为第一类元数据,第一类元数据是定义硬件设备属性的元数据;
[0020]数据解析模块,用于若该元数据是第一类元数据,对该元数据进行解析获取该元数据中的值,该元数据中的值包括硬件设备添加方法以及硬件设备参数;
[0021]参数写入模块,用于执行不同第一类元数据对应的多个硬件设备添加方法,将每个第一类元数据对应的硬件设备参数写入到虚拟机的xml定义文件中;
[0022]虚拟机创建模块,用于根据xml定义文件生成目标实例对应的虚拟机。
[0023]第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的虚拟机创建方法的步骤。
[0024]第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的虚拟机创建方法的步骤。
[0025]本申请实施例带来了以下有益效果:
[0026]本申请实施例提供的一种虚拟机创建方法、装置、电子设备及存储介质,能够针对待创建的虚拟机确定该虚拟机对应的目标示例的多个元数据,不同的元数据可以对应不同的硬件设备,利用元数据中的硬件设备添加方法将多个硬件设备参数写入虚拟机的xml定义文件中,以生成支持硬件设备的虚拟机,与现有技术中的虚拟机创建方法相比,解决了在创建支持硬件设备的虚拟机时,创建效率低、灵活性差的问题。
[0027]为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0028]为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0029]图1示出了本申请实施例所提供的虚拟机创建方法的流程图;
[0030]图2示出了本申请实施例所提供的虚拟机创建装置的结构示意图;
[0031]图3示出了本申请实施例所提供的电子设备的结构示意图。
具体实施方式
[0032]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。
[0033]值得注意的是,在本申请提出之前,随着虚拟化技术的不断发展,虚拟机被越来越广泛地应用在各个
,虚拟机是指通过软件模拟的具有完整硬件系统功能的完全隔离的一个独立的计算机系统,在实体计算机中能够完成的工作在虚拟机中都可以实现。在使用Openstack或者Qemu

kvm搭建虚拟化平台时,创建虚拟机时需要支持一些PCI硬件设备(PCI硬件设备是指通过PCI总线连接的设备)。目前,在利本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟机创建方法,其特征在于,包括:获取目标实例对应的多个元数据;针对每个元数据,确定该元数据是否为第一类元数据,所述第一类元数据是定义硬件设备属性的元数据;若该元数据是第一类元数据,对该元数据进行解析获取该元数据中的值,该元数据中的值包括硬件设备添加方法以及硬件设备参数;执行不同第一类元数据对应的多个硬件设备添加方法,将每个第一类元数据对应的硬件设备参数写入到虚拟机的xml定义文件中;根据所述xml定义文件生成目标实例对应的虚拟机。2.根据权利要求1所述的方法,其特征在于,所述确定该元数据是否为第一类元数据,包括:确定该元数据对应的键值对中键的取值是否为设定格式;若键值对中键的取值为设定格式,确定该元数据为第一类元数据。3.根据权利要求1所述的方法,其特征在于,所述元数据还包括第二类元数据,所述第二类元数据是指Openstack可直接识别的元数据;所述获取目标实例对应的多个元数据,包括:确定所述目标实例中第二类元数据的取值;按照设定格式设置所述目标实例中第一类元数据的键值对的取值。4.根据权利要求2所述的方法,其特征在于,所述确定该元数据对应的键值对中的键是否为设定格式,包括:确定该元数据对应的键值对中键的取值是否以设定字符开头;若键值对中键的取值是以设定字符开头,确定该元数据对应的键值对中键的取值为设定格式。5.根据权利要求1所述的方法,其特征在于,所述执行不同第一类元数据对应的多个硬件设备添加方法,包括:针对每个第一类元数据,确定该第一类元数据对应的硬件设备添加方法;将该第一类元数据对应的硬件设备参数...

【专利技术属性】
技术研发人员:马小虎莫林成陈艳虎
申请(专利权)人:北京淳中科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1