在虚拟机中添加GPU资源的方法及装置制造方法及图纸

技术编号:31624434 阅读:21 留言:0更新日期:2021-12-29 19:00
本发明专利技术公开了一种在虚拟机中添加GPU资源的方法及装置,属于云服务领域。其中,该方法包括:在目标虚拟机的设备列表中获取待使用的GPU资源的设备标识信息,其中,目标虚拟机用于装载容器实例,根据设备标识信息确定GPU资源对应的PCIE标识信息,启动目标虚拟机,并根据PCIE标识信息将对应的GPU资源添加至目标虚拟机。通过本发明专利技术,解决了相关技术在虚拟机中热插GPU需要占用内存的技术问题,解除了在Kata流程中向虚拟机插入GPU资源时BIOS的限制。流程中向虚拟机插入GPU资源时BIOS的限制。流程中向虚拟机插入GPU资源时BIOS的限制。

【技术实现步骤摘要】
在虚拟机中添加GPU资源的方法及装置


[0001]本专利技术涉及云服务领域,具体而言,涉及一种在虚拟机中添加GPU资源的方法及装置。

技术介绍

[0002]相关技术中,社区版本的KATA组件(一种轻量级虚拟机的容器组件)中,通过使用PCIE(peripheral component interconnect express,高速串行计算机扩展总线)热插的方式,来实现在对应的容器实例中添加GPU(graphics processing unit,图形处理器)资源,从而实现将GPU资源应用于虚拟化环境中。
[0003]然而,这种通过PCIE热插的方式将GPU资源添加到虚拟化环境中的方案存在以下缺陷:当GPU所占用的内存过大的时候,例如当社区版的KATA试图热插一块Nvidia Tesla V100的GPU的时候,就会由于BIOS预留的内存不足,而以失败告终。并且,即便是通过修改BIOS的源码,重新编译BIOS,让其预留出足够多的内存,也无法应对未来可能出现的占用内存更高的GPU型号。同时,在当前的热插解决方案中,当需要热插多个GPU设备的时候,也会存在问题,导致GPU无法顺利的热插成功。
[0004]针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。

技术实现思路

[0005]本专利技术实施例提供了一种在虚拟机中添加GPU资源的方法及装置。
[0006]根据本专利技术实施例的一个方面,提供了一种在虚拟机中添加GPU资源的方法,包括:在目标虚拟机的设备列表中获取待使用的GPU资源的设备标识信息,其中,所述目标虚拟机用于装载容器实例;根据所述设备标识信息确定所述GPU资源对应的PCIE标识信息;启动所述目标虚拟机,并根据所述PCIE标识信息将对应的GPU资源添加至所述目标虚拟机。
[0007]进一步,根据所述设备标识信息确定所述GPU资源对应的PCIE标识信息包括:获取所述目标虚拟机对应的KATA组件中的指定配置选项,其中,所述指定配置选项用于指示带启动参数的虚拟机接口;检测所述指定配置选项的标志位,其中,所述标志位用于指示是否添加所述GPU资源;在确定添加所述GPU资源的情况下,根据所述设备标识信息确定所述PCIE标识信息;将所述PCIE标识信息存储至所述目标虚拟机对应的管理程序配置的指定数据结构中,其中,所述指定数据结构用于存储PCIE标识信息。
[0008]进一步,根据所述设备标识信息确定所述PCIE标识信息包括:枚举所述目标虚拟机的设备列表中的所有设备标识信息,在所述设备列表中选择设备标识信息符合预设条件的所述GPU资源;根据物理机的内核目录判断所述GPU资源是否为有效设备,其中,所述物理机用于承载所述目标虚拟机;在所述GPU资源为有效设备的情况下,从所述内核目录中提取所述GPU资源对应的PCIE编号,其中,所述PCIE标识信息包括所述PCIE编号。
[0009]进一步,所述设备标识信息包括设备文件路径的前缀字符和全部字符,在所述设备列表中选择设备标识信息符合预设条件的所述GPU资源包括:针对所述设备列表中的每
个设备标识信息,提取设备文件路径的前缀字符和全部字符;采用第一预设字符比对所述前缀字符,以及采用第二预设字符比对所述全部字符;在所述第一预设字符与所述前缀字符相同且所述第二预设字符与所述全部字符不同的情况下,确定所述设备标识信息对应的设备为符合预设条件的GPU资源。
[0010]进一步,根据物理机的内核目录判断所述GPU资源是否为有效设备包括:提取所述GPU资源对应的虚拟机接口的VFIO编号;查询所述内核目录,并判断所述内核目录中是否存在所述VFIO编号;在所述内核目录中存在所述VFIO编号的情况下,确定所述GPU资源为有效设备。
[0011]进一步,在将所述PCIE标识信息存储至所述目标虚拟机对应的管理程序配置的指定数据结构中的步骤之后,所述方法还包括:对所述指定数据结构中的PCIE标识信息进行去重。
[0012]进一步,所述PCIE标识信息包括PCIE编号,所述根据所述PCIE标识信息将对应的GPU资源添加至所述目标虚拟机包括:解析所述PCIE编号,以将所述PCIE编号转换为虚拟操作系统模拟器的启动参数,所述启动参数用于在启动所述目标虚拟机的过程中添加所述GPU资源;将所述启动参数添加到所述虚拟操作系统模拟器的开机命令中;执行所述开机命令,以基于所述目标虚拟机的镜像启动所述目标虚拟机。
[0013]进一步,所述目标虚拟机的镜像包括所述GPU资源对应的驱动程序和透传工具,所述方法还包括:通过所述透传工具将所述GPU资源和所述驱动程序添加到所述目标虚拟机的容器实例中。
[0014]根据本专利技术实施例的另一个方面,提供了一种在虚拟机中添加GPU资源的装置,包括:获取模块,用于在目标虚拟机的设备列表中获取待使用的GPU资源的设备标识信息,其中,所述目标虚拟机用于装载容器实例;确定模块,用于根据所述设备标识信息确定所述GPU资源对应的PCIE标识信息;启动模块,用于启动所述目标虚拟机,并根据所述PCIE标识信息将对应的GPU资源添加至所述目标虚拟机。
[0015]进一步,所述确定模块包括:获取单元,用于获取所述目标虚拟机对应的KATA组件中的指定配置选项,其中,所述指定配置选项用于指示带启动参数的虚拟机接口;检测单元,用于检测所述指定配置选项的标志位,其中,所述标志位用于指示是否添加所述GPU资源;确定单元,用于在确定添加所述GPU资源的情况下,根据所述设备标识信息确定所述PCIE标识信息;存储单元,用于将所述PCIE标识信息存储至所述目标虚拟机对应的管理程序配置的指定数据结构中,其中,所述指定数据结构用于存储PCIE标识信息。
[0016]进一步,所述确定单元包括:选择子单元,用于枚举所述目标虚拟机的设备列表中的所有设备标识信息,在所述设备列表中选择设备标识信息符合预设条件的所述GPU资源;判断子单元,用于根据物理机的内核目录判断所述GPU资源是否为有效设备,其中,所述物理机用于承载所述目标虚拟机;提取子单元,用于在所述GPU资源为有效设备的情况下,从所述内核目录中提取所述GPU资源对应的PCIE编号,其中,所述PCIE标识信息包括所述PCIE编号。
[0017]进一步,所述设备标识信息包括设备文件路径的前缀字符和全部字符,所述选择子单元还用于:针对所述设备列表中的每个设备标识信息,提取设备文件路径的前缀字符和全部字符;采用第一预设字符比对所述前缀字符,以及采用第二预设字符比对所述全部
字符;在所述第一预设字符与所述前缀字符相同且所述第二预设字符与所述全部字符不同的情况下,确定所述设备标识信息对应的设备为符合预设条件的GPU资源。
[0018]进一步,所述判断子单元还用于:提取所述GPU资源对应的虚拟机接口的VFIO编号;查询所述内核目录,并判断所述内核目录中是否存在所述VFIO编号;在所述内核目录中存在所述VFIO编号的情况下,确定所述GPU资源为有效设备。
[0019]进一步,所述确定模块本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在虚拟机中添加GPU资源的方法,其特征在于,包括:在目标虚拟机的设备列表中获取待使用的GPU资源的设备标识信息,其中,所述目标虚拟机用于装载容器实例;根据所述设备标识信息确定所述GPU资源对应的PCIE标识信息;启动所述目标虚拟机,并根据所述PCIE标识信息将对应的GPU资源添加至所述目标虚拟机。2.根据权利要求1所述的方法,其特征在于,根据所述设备标识信息确定所述GPU资源对应的PCIE标识信息包括:获取所述目标虚拟机对应的KATA组件中的指定配置选项,其中,所述指定配置选项用于指示带启动参数的虚拟机接口;检测所述指定配置选项的标志位,其中,所述标志位用于指示是否添加所述GPU资源;在确定添加所述GPU资源的情况下,根据所述设备标识信息确定所述PCIE标识信息;将所述PCIE标识信息存储至所述目标虚拟机对应的管理程序配置的指定数据结构中,其中,所述指定数据结构用于存储PCIE标识信息。3.根据权利要求2所述的方法,其特征在于,根据所述设备标识信息确定所述PCIE标识信息包括:枚举所述目标虚拟机的设备列表中的所有设备标识信息,在所述设备列表中选择设备标识信息符合预设条件的所述GPU资源;根据物理机的内核目录判断所述GPU资源是否为有效设备,其中,所述物理机用于承载所述目标虚拟机;在所述GPU资源为有效设备的情况下,从所述内核目录中提取所述GPU资源对应的PCIE编号,其中,所述PCIE标识信息包括所述PCIE编号。4.根据权利要求3所述的方法,其特征在于,所述设备标识信息包括设备文件路径的前缀字符和全部字符,在所述设备列表中选择设备标识信息符合预设条件的所述GPU资源包括:针对所述设备列表中的每个设备标识信息,提取设备文件路径的前缀字符和全部字符;采用第一预设字符比对所述前缀字符,以及采用第二预设字符比对所述全部字符;在所述第一预设字符与所述前缀字符相同且所述第二预设字符与所述全部字符不同的情况下,确定所述设备标识信息对应的设备为符合预设条件的GPU资源。5.根据权利要求3所述的方法,其特征在于,根据物理机的内核目录判断所述GP...

【专利技术属性】
技术研发人员:姜智成
申请(专利权)人:北京金山云网络技术有限公司
类型:发明
国别省市:

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

1