虚拟化方法、装置、电子设备、介质及资源虚拟化系统制造方法及图纸

技术编号:29788895 阅读:8 留言:0更新日期:2021-08-24 18:07
本公开实施例公开了一种虚拟化方法、装置、电子设备、介质及资源虚拟化系统,该虚拟化方法包括:建立中间设备与外接硬件之间的第一映射关系;为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源,从而对不支持SR‑IOV机制的外接硬件实现虚拟化支持,提高该些不支持SR‑IOV的机制的外界硬件的虚拟化效率。

【技术实现步骤摘要】
虚拟化方法、装置、电子设备、介质及资源虚拟化系统
本公开涉及信息
,具体涉及一种虚拟化方法、装置、电子设备、介质及资源虚拟化系统。
技术介绍
当前云计算环境下,外接硬件的池化、虚拟化和细粒度资源划分受到了广泛关注。本专利技术人发现,在外接硬件不支持SR-IOV(Single-rootI/Ovirtualization,单根I/O虚拟化)机制时,外接硬件的虚拟化是一个比较大的挑战,目前的虚拟化机制效率较低。
技术实现思路
为了解决相关技术中的问题,本公开实施例提供一种虚拟化方法、装置、电子设备、介质及资源虚拟化系统。第一方面,本公开实施例提供了一种虚拟化方法。具体地,该虚拟化方法包括:建立中间设备与外接硬件之间的第一映射关系;为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源。结合第一方面,本公开在第一方面的第一种实现方式中,所述第一映射关系包括以下任意一种或多种的组合:一个中间设备与一个外接硬件的硬件资源之间的映射关系;不同中间设备通过时间段划分的方式与同一外接硬件的不同硬件资源之间的映射关系;不同中间设备通过空间划分的方式与同一外接硬件的不同硬件资源之间的映射关系;同一中间设备与多个外接硬件的硬件资源之间的映射关系。结合第一方面或第一方面的第一种实现方式,本公开在第一方面的第二种实现方式中,所述基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源,包括:响应于虚拟机对所述虚拟资源的调用,基于所述第二映射关系确定与所述虚拟资源对应的中间设备;基于所述第一映射关系,通过与所述虚拟资源对应的中间设备调用所述外接硬件,产生处理结果;基于所述第二映射关系,将所述处理结果通过所述中间设备发送到所述虚拟机。结合第一方面的第二种实现方式,本公开在第一方面的第三种实现方式中,所述将所述处理结果通过所述中间设备发送到所述虚拟机,包括:所述外接硬件将所述处理结果按第一传输协议封装并发送到所述中间设备;所述中间设备解析接收到的数据,将所述处理结果按第二传输协议封装并发送到所述虚拟机。结合第一方面的第三种实现方式,本公开在第一方面的第四种实现方式中,所述外接硬件将所述处理结果按第一传输协议封装并发送到所述中间设备,包括:截获所述外接硬件发出的信息;在仅有一个与所述外接硬件对应的中间设备处于运行状态的情况下,将所截获的信息发送至处于运行状态的中间设备;在多个与所述外接硬件对应的中间设备处于运行状态的情况下,解析所截获的信息以确定目标中间设备,并将所截获的信息发送至所述目标中间设备。结合第一方面的第三种实现方式,本公开在第一方面的第五种实现方式中,所述中间设备解析接收到的数据,将所述处理结果按第二传输协议封装并发送到所述虚拟机,包括:所述中间设备解析接收到的数据,通过直接存储器访问、远程直接存储器访问、内存映射I/O中的至少一种,经地址转换后,将所述处理结果写入所述虚拟机驻留的主机的物理地址空间。第二方面,本公开实施例提供了一种虚拟化方法。具体地,该虚拟化方法包括:建立中间设备与PCIe设备之间的第一映射关系;为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述PCIe设备的硬件资源。第三方面,本公开实施例提供了一种虚拟化装置。具体地,该虚拟化装置包括:建立模块,被配置为建立中间设备与外接硬件之间的第一映射关系;创建模块,被配置为为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及提供模块,被配置为基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源。结合第三方面,本公开在第三方面的第一种实现方式中,所述第一映射关系包括以下任意一种或多种的组合:一个中间设备与一个外接硬件的硬件资源之间的映射关系;不同中间设备通过时间段划分的方式与同一外接硬件的不同硬件资源之间的映射关系;不同中间设备通过空间划分的方式与同一外接硬件的不同硬件资源之间的映射关系;同一中间设备与多个外接硬件的硬件资源之间的映射关系。结合第三方面或第三方面的第一种实现方式,本公开在第三方面的第二种实现方式中,所述提供模块包括:确定子模块,被配置为响应于虚拟机对所述虚拟资源的调用,基于所述第二映射关系确定与所述虚拟资源对应的中间设备;调用子模块,被配置为基于所述第一映射关系,通过与所述虚拟资源对应的中间设备调用所述外接硬件,产生处理结果;发送子模块,被配置为基于所述第二映射关系,将所述处理结果通过所述中间设备发送到所述虚拟机。结合第三方面的第二种实现方式,本公开在第三方面的第三种实现方式中,所述发送子模块包括:第一发送单元,被配置为通过所述外接硬件将所述处理结果按第一传输协议封装并发送到所述中间设备;第二发送单元,被配置为通过所述中间设备解析接收到的数据,将所述处理结果按第二传输协议封装并发送到所述虚拟机。结合第三方面的第三种实现方式,本公开在第三方面的第四种实现方式中,所述第一发送单元包括:截获子单元,被配置为截获所述外接硬件发出的信息;第一发送子单元,被配置为在仅有一个与所述外接硬件对应的中间设备处于运行状态的情况下,将所截获的信息发送至处于运行状态的中间设备;第二发送子单元,被配置为在多个与所述外接硬件对应的中间设备处于运行状态的情况下,解析所截获的信息以确定目标中间设备,并将所截获的信息发送至所述目标中间设备。结合第三方面的第三种实现方式,本公开在第三方面的第五种实现方式中,所述第二发送单元被配置为:通过所述中间设备解析接收到的数据,通过直接存储器访问、远程直接存储器访问、内存映射I/O中的至少一种,经地址转换后,将所述处理结果写入所述虚拟机驻留的主机的物理地址空间。第四方面,本公开实施例提供了一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机指令,所述一条或多条计算机指令被所述处理器执行以实现如第一方面、第一方面的第一种至第五种实现方式或第二方面中任一项所述的方法。第五方面,本公开实施例中提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如第一方面、第一方面的第一种至第五种实现方式或第二方面中任一项所述的方法。第六方面,本公开实施例中提供了一种资源虚拟化系统。具体地,该资源虚拟化系统包括目标侧设备,所述目标侧设备包括:硬件接口,用于接入外接硬件;中间设备,用于存本文档来自技高网...

【技术保护点】
1.一种虚拟化方法,包括:/n建立中间设备与外接硬件之间的第一映射关系;/n为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及/n基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源。/n

【技术特征摘要】
1.一种虚拟化方法,包括:
建立中间设备与外接硬件之间的第一映射关系;
为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及
基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源。


2.根据权利要求1所述的方法,其中,所述第一映射关系包括以下任意一种或多种的组合:
一个中间设备与一个外接硬件的硬件资源之间的映射关系;
不同中间设备通过时间段划分的方式与同一外接硬件的不同硬件资源之间的映射关系;
不同中间设备通过空间划分的方式与同一外接硬件的不同硬件资源之间的映射关系;
同一中间设备与多个外接硬件的硬件资源之间的映射关系。


3.根据权利要求1或2所述的方法,其中,所述基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源,包括:
响应于虚拟机对所述虚拟资源的调用,基于所述第二映射关系确定与所述虚拟资源对应的中间设备;
基于所述第一映射关系,通过与所述虚拟资源对应的中间设备调用所述外接硬件,产生处理结果;
基于所述第二映射关系,将所述处理结果通过所述中间设备发送到所述虚拟机。


4.根据权利要求3所述的方法,其中,所述将所述处理结果通过所述中间设备发送到所述虚拟机,包括:
所述外接硬件将所述处理结果按第一传输协议封装并发送到所述中间设备;
所述中间设备解析接收到的数据,将所述处理结果按第二传输协议封装并发送到所述虚拟机。


5.根据权利要求4所述的方法,其中,所述外接硬件将所述处理结果按第一传输协议封装并发送到所述中间设备,包括:
截获所述外接硬件发出的信息;
在仅有一个与所述外接硬件对应的中间设备处于运行状态的情况下,将所截获的信息发送至处于运行状态的中间设备;
在多个与所述外接硬件对应的中间设备处于运行状态的情况下,解析所截获的信息以确定目标中间设备,并将所截获的信息发送至所述目标中间设备。


6.根据权利要求4所述的方法,其中,所述中间设备解析接收到的数据,将所述处理结果按第二传输协议封装并发送到所述虚拟机,包括:
所述中间设备解析接收到的数据,通过直接存储器访问、远程直接存储器访问、内存映射I/O中的至少一种,经地址转换后,将所述处理结果写入所述虚拟机驻留的主机的物理地址空间。


7.一种虚拟化方法,包括:
建立中间设备与PCIe设备之间的第一映射关系;
为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及
基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述PCIe设备的硬件资源。


8.一种虚拟化装置,包括:
建立模块,被配置为建立中间设备与外接硬件之间的第一映射关系;
创建模块,被配置为为虚拟机创建虚拟资源,并建立所述中间设备和所述虚拟资源之间的第二映射关系;以及
提供模块,被配置为基于所述第一映射关系和所述第二映射关系,通过所述虚拟资源向所述虚拟机提供所述外接硬件的硬件资源。


9.根据权利要求8所述的装置,其中,所述第一映射关系包括以下任意一种或多种的组合:
一个中间设备与一个外接硬件的硬件资源之间的映射关系;
不同中间设备通过时间段划分的方式与同一外接硬件的不同硬件资源之间的映射关系;
不同中间设备通过空间划分的方式与同一外接硬件的不同硬件资源之间的映射关系;
同一中间设备与多个外接硬件的硬件资源之间的映射关系。


10.根据权利要求8或9所述的装置,其中,所述提供模块包括:
确定子模块,被配置为响应于虚拟机对所述虚拟资源的调用,基于所述第二映射关系确定与所述虚拟资源对应的中间设备;
调用子模块,被配置为基于所述第一映射关系,通过与所述虚拟资源对应的中间设备调用所述外接硬件,产生处理结果;
发送子模块,被配置为基于所述第二映射关系,将所述处理结果通过所述中间设备发送到所述虚拟机。


11.根据权利要求10所述的装置,其中,所述发送子模块包括:
第一发送单元,被配置为通过所...

【专利技术属性】
技术研发人员:方兴
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1