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