本发明涉及计算机应用,尤其涉及一种带vdpa设备的虚拟机的创建方法、装置、设备及存储介质。
背景技术:
1、kubevirt是一种在kubernetes集群中管理和运行虚拟机的开源项目,用于将虚拟化技术与容器编排技术相结合,以提供弹性、灵活性的管理虚拟机工作负载的能力。vdpa(virtual data plane acceleration)是一种用于虚拟化环境的网络加速技术,可以提高虚拟机和容器的网络通信性能,降低虚拟化平台的网络虚拟化开销。dpu(data processingunit)是以数据为中心的专用处理器,可以完成网络、存储和安全的加速处理任务。
2、相关技术中,在通过kubevirt管理和运行虚拟机时,通常通过设置虚拟机的网络配置参数,以实现虚拟机的网络加速,但往往效果较差。理由在于:kubevirt目前不支持带vdpa设备的虚拟机创建,无法利用vdpa的网络加速与热迁移等特性;kubevirt目前也不支持调用dpu的管控接口,不能为虚拟机分配dpu资源提供加速服务。因此,目前缺乏一种带vdpa设备的虚拟机的创建方法。
技术实现思路
1、本发明提供了一种带vdpa设备的虚拟机的创建方法、装置、设备及存储介质,以解决目前缺乏一种带vdpa设备的虚拟机的创建方法的技术问题。
2、根据本发明的一方面,提供了一种带vdpa设备的虚拟机的创建方法,其中,该方法包括:
3、接收创建带vdpa设备的虚拟机vm资源的命令;
4、基于增加vdpa支持的kubevirt的组件,创建与所述vm资源对应的虚拟机实例vmi资源,以及创建与所述vmi资源对应的初始virt-launcher pod;
5、基于实现与dpu的管控接口对接的kubevirt的组件,对所述初始virt-launcherpod进行dpu的vdpa设备资源分配,得到第一virt-launcher pod,并对所述第一virt-launcher pod进行vdpa设备的网络配置,得到第二virt-launcher pod;
6、基于所述第二virt-launcher pod创建所述带vdpa设备的虚拟机。
7、根据本发明的另一方面,提供了一种带vdpa设备的虚拟机的创建装置,其中,该装置包括:
8、命令接收模块,用于接收创建带vdpa设备的虚拟机vm资源的命令;
9、资源创建模块,用于基于增加vdpa支持的kubevirt的组件,创建与所述vm资源对应的虚拟机实例vmi资源,以及创建与所述vim资源对应的初始virt-launcher pod;
10、资源配置模块,用于基于实现与dpu管控接口对接的kubevirt的组件,对所述初始virt-launcher pod进行dpu的vdpa设备资源分配,得到第一virt-launcher pod,并对所述第一virt-launcher pod进行vdpa网卡的网络配置,得第二virt-launcher pod;
11、虚拟机创建模块,基于所述第二virt-launcher pod创建所述带vdpa设备的虚拟机。
12、根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
13、至少一个处理器;以及
14、与所述至少一个处理器通信连接的存储器;其中,
15、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的带vdpa设备的虚拟机的创建方法。
16、根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的带vdpa设备的虚拟机的创建方法。
17、本发明实施例的技术方案,通过接收创建带vdpa设备的虚拟机vm资源的命令;基于增加vdpa支持的kubevirt的组件,创建与所述vm资源对应的虚拟机实例vmi资源,以及创建与所述vmi资源对应的初始virt-launcher pod;基于实现与dpu的管控接口对接的kubevirt的组件,对所述初始virt-launcher pod进行dpu的vdpa设备资源分配,得到第一virt-launcher pod,并对所述第一virt-launcher pod进行vdpa设备的网络配置,得到第二virt-launcher pod;基于所述第二virt-launcher pod创建所述带vdpa设备的虚拟机。解决目前缺乏一种带vdpa设备的虚拟机的创建方法的技术问题,实现了kubevirt的带vdpa设备的虚拟机创建。
18、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
1.一种带vdpa设备的虚拟机的创建方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述基于增加vdpa支持的kubevirt的组件,创建与所述vm资源对应的虚拟机实例vmi资源,以及创建与所述vmi资源对应的初始virt-launcher pod,包括:
3.根据权利要求1所述的方法,其特征在于,所述基于实现与dpu的管控接口对接的kubevirt的组件,对所述初始virt-launcher pod进行dpu的vdpa设备资源分配,得到第一virt-launcher pod,包括:
4.根据权利要求1所述的方法,其特征在于,所述对所述第一virt-launcher pod进行vdpa设备的网络配置,得第二virt-launcher pod,包括:
5.根据权利要求1所述的方法,其特征在于,所述基于所述第二virt-launcher pod创建所述带vdpa设备的虚拟机,包括:
6.根据权利要求1所述的方法,其特征在于,在基于增加vdpa支持的kubevirt的组件,创建与所述vm资源对应的虚拟机实例vmi资源,以及创建与所述vmi资源对应的初始virt-launcher pod之前,还包括:
7.根据权利要求6所述的方法,其特征在于,所述对kubevirt进行增加vdpa支持处理,包括:
8.根据权利要求1所述的方法,其特征在于,在基于实现与dpu的管控接口对接的kubevirt的组件,对所述初始virt-launcher pod进行dpu设备资源分配,得到第一virt-launcher pod,并对所述第一virt-launcher pod进行vdpa网卡的网络配置,得第二virt-launcher pod之前,还包括:
9.根据权利要求8所述的方法,其特征在于,所述响应于将kubevirt对接至dpu的管控接口的操作,对kubevirt与dpu的管控接口进行对接处理具体包括:
10.一种带vdpa设备的虚拟机的创建装置,其特征在于,包括:
11.一种电子设备,其特征在于,所述电子设备包括:
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-9中任一项所述的带vdpa设备的虚拟机的创建处理方法。