移动到不同的 ProxMox 实例后 VM 性能差异

移动到不同的 ProxMox 实例后 VM 性能差异

我有两台 ProxMox 服务器,当我移动其中一台虚拟机时,它遇到了性能问题。

ProxMox 3.4 在 Intel Xeon E5606(2 个 CPU,每个 4 核,@2.13 GHz)上运行。ProxMox 4.1 在 Intel Xeon E5-2650L v3(2 个 CPU,每个 24 核,@1.8GHz)上运行

我已将两台虚拟机从 3.4 服务器移动到 4.1 服务器(我在 3.4 上进行了备份,在 4.1 上进行了恢复)。

VM 816 的性能似乎相同,但 VM 814 的性能受到很大影响(现在需要 4-6 分钟才能启动)。

关于他们的有趣事情:

  • 两者都采用较旧的“coreduo”处理器。
  • 814 正在运行 Fedora Core 6。
  • 816 正在运行 CentOS 6。
  • 814 使用 ide 作为其 HD。
  • 816 使用 virtio 作为其高清视频源。
  • 两台电脑的硬盘均设置为无缓存。

显然,立即可见的区别是一个是 ide,一个是 virtio。但它们在旧服务器上完全一样 - 为什么新服务器上的速度慢得多?我确实尝试将 814 切换到 virtio,但它无法启动。

最重要的是要弄清楚这是否与 ProxMox 4.1 上较新版本的 KVM 有关。我计划将旧服务器升级到最新的 proxmox,但如果这会破坏我的虚拟机,那将是一个问题。

uname -a 来自 VM 814:Linux SWBuild-Fedora.moberg 2.6.18-1.2798.fc6 #1 SMP 2006 年 10 月 16 日星期一 14:54:20 EDT i686 i686 i386 GNU/Linux

uname -a 来自 VM 816:Linux SWBuild-CentOS 2.6.32-71.el6.i686 #1 SMP 星期五 11 月 12 日 04:17:17 GMT 2010 i686 i686 i386 GNU/Linux

从 ps 获取的 KVM 行:

/usr/bin/kvm -id 814 -chardev socket,id=qmp,path=/var/run/qemu-server/814.qmp,server,nowait -mon chardev=qmp,mode=control -vnc unix:/var/run/qemu-server/814.vnc,x509,password -pidfile /var/run/qemu-server/814.pid -daemonize -smbios type=1,uuid=709a3672-bb7e-40a8-9815-69129f612924 -name SWBuild-Fedora -smp 1,sockets=1,cores=1,maxcpus=1 -nodefaults -boot menu=on,strict=on,reboot-timeout=1000 -vga cirrus -cpu coreduo,+kvm_pv_unhalt,+kvm_pv_eoi,enforce -m 512 -k en-us -device pci-bridge,id=pci.1,chassis_nr=1,总线=pci.0,地址=0x1e -device pci-bridge,id=pci.2,chassis_nr=2,总线=pci.0,地址=0x1f -device piix3-usb-uhci,id=uhci,总线=pci.0,地址=0x1.0x2 -device virtio-balloon-pci,id=balloon0,总线=pci.0,地址=0x3 -iscsi initiator-name=iqn.1993-08.org.debian:01:1a1a811322d -drive文件=/var/lib/vz/images/814/vm-814-disk-1.raw,如果=none,id=drive-ide0,格式=raw,缓存=none,aio=native,检测零=on -device ide-hd,总线=ide.0,单元=0,驱动器=drive-ide0,id=ide0,bootindex=100 -drive if=none,id=drive-ide2,媒体=cdrom,aio=threads -device ide-cd,总线=ide.1,单元=0,驱动器=drive-ide2,id=ide2,bootindex=200 -netdev 类型=tap,id=net0,ifname=tap814i0,脚本=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown -device e1000,mac=7A:9F:7F:7C:08:BA,netdev=net0,总线=pci.0,地址=0x12,id=net0

/usr/bin/kvm -id 816 -chardev socket,id=qmp,path=/var/run/qemu-server/816.qmp,server,nowait -mon chardev=qmp,mode=control -vnc unix:/var/run/qemu-server/816.vnc,x509,password -pidfile /var/run/qemu-server/816.pid -daemonize -smbios type=1,uuid=06458c85-061e-4783-9152-e0d7f8a9685d -name SWBuild-CentOS -smp 1,sockets=1,cores=1,maxcpus=1 -nodefaults -boot menu=on,strict=on,reboot-timeout=1000 -vga cirrus -cpu coreduo,+kvm_pv_unhalt,+kvm_pv_eoi,enforce -m 512 -k en-us -device pci-bridge,id=pci.1,chassis_nr=1,总线=pci.0,地址=0x1e -device pci-bridge,id=pci.2,chassis_nr=2,总线=pci.0,地址=0x1f -device piix3-usb-uhci,id=uhci,总线=pci.0,地址=0x1.0x2 -device virtio-balloon-pci,id=balloon0,总线=pci.0,地址=0x3 -iscsi initiator-name=iqn.1993-08.org.debian:01:1a1a811322d -drive文件=/var/lib/vz/images/816/vm-816-disk-1.raw,如果=无,id=drive-virtio0,格式=原始,缓存=无,aio=native,检测零=on -device virtio-blk-pci,驱动器=drive-virtio0,id=virtio0,总线=pci.0,地址=0xa,bootindex=100 -drive if=无,id=drive-ide2,media=cdrom,aio=threads -device ide-cd,总线=ide.1,单元=0,驱动器=drive-ide2,id=ide2,bootindex=200 -netdev 类型=tap,id=net0,ifname=tap816i0,脚本=/var/lib/qemu-server/pve-bridge,downscript=/var/lib/qemu-server/pve-bridgedown -device e1000,mac=F6:CE:EE:91:65:2B,netdev=net0,总线=pci.0,地址=0x12,id=net0,bootindex=300

注意:更改 814 上的操作系统实际上不是一个选择 - 此 VM 是根据从真实硬件获取的映像构建的,因此我们可以保留它。它用于构建我们的一些旧系统,我们确实没有时间验证修改后的构建系统。

更新:问题的根源可能是两台服务器上的 RAID 卡不同。在为新服务器指定规格时,另一位管理员记得我们没有 RAID 卡的闪存模块,因此我们以相同的方式为新服务器指定规格。

进一步调查显示,旧服务器中确实有闪存模块,并且该模块处于活动状态,可提供写入缓存。这一点,再加上不同的访问模式,很可能是性能差异的根源。

答案1

我不太明白为什么虚拟机会出现问题,但我发现如果我为该虚拟机打开写回缓存,它就会正常运行。

相关内容