KVM安装Windows默认使用的是qemu虚拟化IDE硬盘模式,在这种情况下,IO性能比较低,如果使用virtio的方式可以提高虚拟机IO性能。

于是我想将这台虚拟机迁移到openstack中管理 openstack创建的windows虚拟机为virtio驱动

虚拟机xml文件中默认的disk部分为ide

    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='xxxxx/win2012-csg-bak-20230814.raw'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>

于是我直接改为virtio的 会直接蓝屏

    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='xxxxx/win2012-csg-bak-20230814.raw'/>
      <target dev='vda' bus='virtio'/>
    </disk>

解决办法:

1、创建一块新的磁盘 

 qemu-img  create -f qcow2 test.img 1G

2、编辑虚拟机xml文件 加入这个磁盘

    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='xxxx/test.img'/>
      <target dev='vdb' bus='virtio'/>
    </disk>

3、开机 然后就会在设备管理器中发现未识别的SCSI的设备 右键查找驱动 选择提前下载的virtiso的iso解压文件夹路径 他会自己找驱动安装

4、修改虚拟机xml文件 将添加的那块盘删除 系统盘改为

    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='xxxxx/win2012-csg-bak-20230814.raw'/>
      <target dev='vda' bus='virtio'/>
    </disk>

5、开机就不会蓝屏了

大概就是原来的ide模式 直接改程virtio不好使 需要新增一个磁盘 指定为virtio格式 原来的系统盘还是ide 然后开机

这时候设备管理器就会看到未识别的virtio格式的磁盘 安装virtio驱动即可 最后删除添加的盘 将系统盘改为virtio

08-24 16:45