本发明实施例涉及计算机,尤其涉及一种虚拟机磁盘挂载方法、装置、设备和存储介质。
背景技术:
1、kata(一种基于容器的轻量级虚拟化技术)虚拟化环境下读/写(i/o)方式主要使用virtio,virtio是i/o虚拟化中一种半虚拟化方案,需要在虚拟机(guest)的操作系统中运行virtio的前端程序,部署于存储设备的virtio的后端程序执行来自virtio的前端程序发送的请求。
2、现有技术中,guest执行scsi请求时,会将scsi请求提交到virtqueue(一套用于virito前端和后端的通信机制),并同步把scsi请求的id写入外围器件互联(peripheralcomponent interconnect,pci)配置空间。进而,模拟处理器软件(qemu)基于scsi请求的id到virtqueue获取scsi请求,并将scsi请求发送到pci设备的后端程序,以使pci设备的后端程序执行scsi请求,并将请求结果返回至virtio的后端程序。
3、在实现本发明的过程中,发明人发现现有技术中至少存在以下技术问题:
4、guest对pci配置空间的读/写会触发虚拟机监控程序(vm monitor,vmm)的trap,从而导致虚拟中断(vm_exit)事件,影响kata虚拟化环境下的存储性能。
技术实现思路
1、本发明提供一种虚拟机磁盘挂载方法、装置、设备和存储介质,以实现为虚拟机挂载存储设备,提升部署有该虚拟机的kata虚拟化环境的性能。
2、第一方面,本发明实施例提供了一种虚拟机磁盘挂载方法,包括:
3、接收到用户触发的为预设虚拟机挂载存储设备的挂载请求之后,根据所述挂载请求确定目标节点;
4、基于所述目标节点确定块设备层bdev之后,根据所述bdev创建vhost设备;
5、将所述vhost设备挂载至所述预设虚拟机。
6、第二方面,本发明实施例还提供了一种虚拟机磁盘挂载装置,包括:
7、接收模块,用于接收到用户触发的为预设虚拟机挂载存储设备的挂载请求之后,根据所述挂载请求确定目标节点;
8、创建模块,用于基于所述目标节点确定块设备层bdev之后,根据所述bdev创建vhost设备;
9、挂载模块,用于将所述vhost设备挂载至所述预设虚拟机。
10、第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
11、一个或多个处理器;
12、存储装置,用于存储一个或多个程序,
13、当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一所述的虚拟机磁盘挂载方法。
14、第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面中任一所述的虚拟机磁盘挂载方法。
15、上述发明中的实施例具有如下优点或有益效果:
16、本发明实施例提供一种虚拟机磁盘挂载方法,包括:接收到用户触发的为预设虚拟机挂载存储设备的挂载请求之后,根据所述挂载请求确定目标节点;基于所述目标节点确定块设备层bdev之后,根据所述bdev创建vhost设备;将所述vhost设备挂载至所述预设虚拟机。上述技术方案,接收到用户触发的挂载请求之后,首先可以根据需要进行挂载的预设虚拟机的挂载容量和kata虚拟化环境中各计算节点的剩余容量,确定用于为预设虚拟机进行挂载存储设备的目标节点,在确定目标节点之后,可以基于目标节点确定bdev,并根据bdev创建vhost设备,实现存储设备的创建,进而可以将vhost设备挂载至预设虚拟机,通过将目标节点所创建的vhost设备挂载至预设虚拟机,实现为预设虚拟机挂载存储设备,相比于现有技术,可以将预设虚拟机的i/o请求直接路由到部署于宿主机的vhost设备上,从而绕过qemu等虚拟化层的处理,提高i/o性能,进一步提升kata虚拟化环境的性能。
1.一种虚拟机磁盘挂载方法,其特征在于,包括:
2.根据权利要求1所述的虚拟机磁盘挂载方法,其特征在于,根据所述挂载请求确定目标节点,包括:
3.根据权利要求1所述的虚拟机磁盘挂载方法,其特征在于,基于所述目标节点确定块设备层bdev,包括:
4.根据权利要求2所述的虚拟机磁盘挂载方法,其特征在于,根据所述bdev创建vhost设备,包括:
5.根据权利要求1所述的虚拟机磁盘挂载方法,其特征在于,在基于所述目标节点确定块设备层bdev之后,还包括:
6.根据权利要求1所述的虚拟机磁盘挂载方法,其特征在于,将所述vhost设备挂载至所述预设虚拟机,包括:
7.根据权利要求1所述的虚拟机磁盘挂载方法,其特征在于,还包括:
8.一种虚拟机磁盘挂载装置,其特征在于,包括:
9.一种电子设备,其特征在于,所述电子设备包括:
10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的虚拟机磁盘挂载方法。