VGPU遗留BUG处理

发布时间 2023-04-20 08:27:48作者: A57

1.OpenStack-Y版创建VGPU云主机会报错

  • 源码问题
https://opendev.org/openstack/nova/commit/c3800f7863116412e90029381085cd01ebeae220#diff-66b7016f94f8c778a7f492a590959cbbb33f460d
  • 代码手动拉下来 全部替换掉
https://opendev.org/openstack/nova/src/branch/stable/yoga/nova/virt/libvirt
  • 拉取代码
git clone -b stable/yoga https://opendev.org/openstack/nova.git
  • 替换目录
cd /usr/lib/python3/dist-packages/nova

mv virt/ virt.back

cp -rfv /root/nova/virt /usr/lib/python3/dist-packages/nova/

2.重启服务器后发现VGPU消失了,创建软连接解决

  • 显卡1创建软连接
ln -s /sys/devices/pci0000\:97/0000\:97\:02.0/0000\:98\:00.0/mdev_supported_types vgpu1
  • 显卡2软件软连接
ln -s /sys/devices/pci0000\:30/0000\:30\:02.0/0000\:31\:00.0/mdev_supported_types vgpu2
  • 找云主机ID
cd /etc/libvirt/qemu/
grep -RnA 3 "mdev"
  • 创建软连接添加create找到显卡驱动
ln -s /sys/bus/mdev/devices mdev

cd mdev

echo "f0c58cc5-d91c-4269-a4b0-f9f4d90e42ec" > ~/vgpu1/nvidia-527/create

3.win11去虚拟化

  • Win11不要关机,停止nova-compute服务 手动修改配置文件
systemctl stop nova-compute
  • 修改win11 xml文件
# xml文件路径
cd /etc/libvirt/qemu/




virsh edit instance-00000019
 <features>
    <acpi/>
    <apic/>
    ```中间内容全删除
    <kvm>
      <hidden state='on'/> #添加
    </kvm>
    ```中间内容全删除
  </features>
  <cpu mode='host-passthrough' check='none' migratable='on'> # 修改
    <topology sockets='1' dies='2' cores='2' threads='1'/>  # 不动
    <feature policy='disable' name='hypervisor'/> #添加此行
  </cpu>
  • 然后用virsh重启虚拟机 让配置生效 然后再启动compute服务
# 重启虚拟机
virsh destroy instance-0000001a

virsh start instance-0000001a


# 启动compute
service nova-compute start