根据我之前将 IDE VM 磁盘迁移到 VirtIO SCSI 的经验,我在 virt-manager 中创建了一个 Win10 VM,主磁盘是设置时的 SCSI 磁盘。在 virt-manager 中,我创建了一个 VirtIO SCSI 控制器:
<controller type="scsi" index="0" model="virtio-scsi">
<address type="pci" domain="0x0000" bus="0x03" slot="0x00" function="0x0"/>
</controller>
然后我创建了一个磁盘(SCSI 磁盘 1),根据 virt-manager 的说法,它使用SCSI总线类型:
<disk type="file" device="disk">
<driver name="qemu" type="qcow2" discard="unmap"/>
<source file="/var/lib/libvirt/images/win10-enterprise.qcow2"/>
<target dev="sda" bus="scsi"/>
<boot order="2"/>
<address type="drive" controller="0" bus="0" target="0" unit="0"/>
</disk>
在 Win10 设置期间,我安装了RedHat VirtIO ISO并安装了驱动程序,以便 Win10 可以安装到 SCSI 磁盘:
安装后,我向虚拟机添加了另一个磁盘(VirtIO Disk 1 )。这次在 virt-manager 中,我选择VirtIO作为总线类型:
<disk type="file" device="disk">
<driver name="qemu" type="qcow2" discard="unmap"/>
<source file="/var/lib/libvirt/images/win10-enterprise-1.qcow2"/>
<target dev="vda" bus="virtio"/>
<address type="pci" domain="0x0000" bus="0x06" slot="0x00" function="0x0"/>
</disk>
VirtIO 磁盘似乎未链接到 virt-manager 中虚拟机概览上列出的任何控制器。我假设此磁盘是VirtIO 块设备。
在 Win10 客户虚拟机中,我注意到设备管理器中的主SCSI磁盘标记为“QEMU SCSI”磁盘,而VirtIO磁盘标记为“RedHat VirtIO SCSI”磁盘。用于 SCSI 磁盘的 VirtIO 存储控制器标记为“Red Hat VirtIO SCSI 控制器”:
我很困惑为什么 SCSI 磁盘没有被标记为 VirtIO SCSI 磁盘,以及 VirtIO 磁盘(假定为 VirtIO 块)是如何成为“VirtIO SCSI”磁盘而无需连接到任何类型的 SCSI 控制器。
问:我为该虚拟机配置的磁盘有什么区别吗?
问:从 virt-manager 的角度来看,使用VirtIO和SCSI总线类型的磁盘之间有什么区别,以及它们在虚拟机中如何呈现?
问:使用不同总线类型的磁盘之间是否存在性能差异?