我在设置 KVM 来宾时遇到了一些严重的磁盘性能问题。使用一个简单的dd
测试,qcow2 映像所在的主机上的分区(镜像 RAID 阵列)的写入速度超过120MB/s,而我的客户机的写入速度为0.5 到 3MB/s。
- 客户机配置了几个 CPU 和 4G 内存,目前没有运行任何其他东西;目前这是一个完全最小的安装。
- 性能使用
time dd if=/dev/zero of=/tmp/test oflag=direct bs=64k count=16000
. - 来宾配置为使用 virtio,但这似乎对性能没有影响。
- 主机分区是 4kb 对齐的(无论如何,主机上的性能都很好)。
- 在磁盘上使用写回缓存可以大大提高报告的性能,但我宁愿不使用它;即使没有它,性能也应该比这好得多。
- 主机和来宾都运行 Ubuntu 12.04 LTS,它带有 qemu-kvm 1.0+noroms-0ubuntu13 和 libvirt 0.9.8-2ubuntu17.1。
- 主机启用了截止日期 IO 调度程序,而来宾没有任何操作。
似乎有很多调整 kvm 性能的指南,我最终会到达那里,但似乎我应该在这个时间点获得比这更好的性能,所以看起来有些地方已经很不对劲了。
更新 1
突然当我现在回去测试时,它是26.6 MB/s;这更像是我对 qcrow2 的预期。我会留下这个问题,以防有人对可能出现的问题有任何想法(以防它再次神秘地返回)。
更新 2
我不再担心 qcow2 性能,只是使用原始图像切换到 RAID1 之上的 LVM,仍然使用 virtio,但在磁盘驱动器上设置 cache='none' 和 io='native'。写入性能现在是 appx。135MB/s使用与上述相同的基本测试,因此在可以如此轻松地完全解决问题时,找出问题所在似乎没有多大意义。