解决Openstack Zed平台创建vIOMMU虚拟机失败的问题

解决Openstack Zed平台创建vIOMMU虚拟机失败的问题

1、问题描述

虚拟机需要使用DPDK,要求云平台在创建虚拟机的时候能够将物理网卡或者通过SRIOV生成的虚拟网卡直通到虚拟机中,并配置虚拟机开启iommu_group功能且直通的网卡能够单独iommu_group分组。测试在使用开源Openstack zed版本的平台时,通过配置image参数hw_machine_type=‘q35’, hw_viommu_model=‘intel’( Zed版本vIOMMU新特性)可以实现虚拟机开启iommu_group功能且直通单张网卡时能够单独iommu_group分组,但是当修改直通的网卡数量为多张时出现虚拟机创建失败的问题。报错信息如下:

libvirt.libvirtError: internal error: qemu unexpectedly closed the monitor: 2025-02-08T08:11:48.152818Z qemu-system-x86_64: -device vfio-pci,host=0000:60:06.0,id=hostdev1,bus=pci.5,addr=0x0: VFIO_MAP_DMA failed: Cannot allocate memory
2025-02-08T08:11:48.210884Z qemu-system-x86_64: -device vfio-pci,host=0000:60:06.0,id=hostdev1,bus=pci.5,addr=0x0: VFIO_MAP_DMA failed: Cannot allocate memory
2025-02-08T08:11:48.211060Z qemu-system-x86_64: -device vfio-pci,host=0000:60:06.0,id=hostdev1,bus=pci.5,addr=0x0: vfio 0000:60:06.0: failed to setup container for group 149: memory listener initialization failed: Region pc.ram: vfio_dma_map(0x559ef941f2b0, 0xc0000, 0x7ff40000, 0x7f95bfec0000) = -12 (Cannot allocate memory)
2025-02-08 16:11:48.801 7 ERROR nova.virt.libvirt.guest Traceback (most recent call last):
2025-02-08 16:11:48.801 7 ERROR nova.virt.libvirt.guest   File "/var/lib/kolla/venv/lib/python3.10/site-packages/nova/virt/libvirt/guest.py", line 165, in launch
2025-02-08 16:11:48.801 7 ERROR nova.virt.libvirt.guest     return self._domain.createWithFlags(flags)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值