Ubuntu 14.04上的KVM上的Windows Server 2012。 运行一段时间,然后放慢速度

我将Windows Server 2012 Essentials作为运行在Ubuntu 14.04 LTS上的KVM上的虚拟机运行。

它在重新启动后performance非常好,但过了一段时间后开始变慢,变慢了。 这可能是几个小时或一天后。 我还没有发现在使用和减慢速度之间有明显的模式。

Windows VM有三个虚拟磁盘,两个是LVM,一个是LVM上的250 GB VMDK文件。 我打算将VMDK文件转换为直接LVM,这可能会有助于性能,但我不认为这是我目前的问题。 我们使用最新的virtio驱动程序。

当它变慢时,变得相当糟糕。 在菜单出现之前,右击任务栏可能需要5秒钟或更长的时间。 主机上的VNC或Windows服务器上的RDP的性能大致相同。 文件共享访问,DNS等都是我们局域网上的客户端缓慢。

重新启动Windows VM可以解决问题。 我不需要重新启动主机。

在Windows服务器上没有额外的应用程序运行,除了每四个小时检查一次文件更改的CloudBerry备份。 这似乎并不是这样。 扫描更改需要几分钟的时间,但如果在重新启动后立即运行,服务器仍然运行得很快。

此服务器为networking连接的打印机提供打印服务。

当东西变慢时,主机上qemu进程的CPU使用率会上升。 它总是有点高峰,但我认为高峰期更高,持续时间更长。 在Windows任务pipe理器中,我没有注意到任何特别的事情。

我知道KVM上的Windows当然不被微软支持,所以总是有点赌博。 也许这是一个愚蠢的想法,但安装和早期的performance已经绝对完美。

任何想法或build议? 我应该用什么工具或方法来追踪这个问题?

看来这个问题是由3.13内核中的一个内核错误引起的,当识别内存共享的时候,KSM有点过分了。 ( https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1341195

我们通过将/ etc / default / qemu-kvm中的KSM_ENABLED设置为0来解决这个问题。或者,我们可以升级到3.14内核。

这不是真的值得被称为一个答案,但…以防其他人有同样的问题。

我无法解释,但问题是通过在不同的硬件上转移到不同的KVM主机解决的,但我不认为这是一个真正的硬件问题。

我们有两台服务器。

思科有2个四核心的特效。 Linux显示16 cpu。 我想这是与超线程。

带有2个双核处理器的HP DL360。 Linux显示8 cpu。

两个都运行Ubuntu 14.04 LTS的最新更新。

问题是在Cisco上运行的Windows 2012 VM。 在重新启动后,它会工作得很好,但在第二天慢慢地变坏,直到它几乎不可用。 我通常分配2个VCPU给虚拟机。 如果我只分配了1个VCPU,问题就不会那么严重了,但是仍然会很糟糕。 没有别的似乎帮助。 我无法find客户或主机上的任何日志中的任何内容。

最后,我预感到我们的虚拟机(我们的磁盘空间有点低),并将Windows 2012移到惠普。 它一直工作完美一个星期。 我不认为思科有问题的原因是,我们在惠普的四台Linux虚拟机现在在思科上运行得非常好。

除了移动主机之外,为了方便起见,我只做了其他更改,将Windows C:驱动器从Linux LVM更改为qcow2文件。 我想可能是这样,而不是这个举动。 磁盘性能对我们来说不是问题。

在我的一台KVM服务器Ubuntu 14.04上遇到同样的问题。 我有2个相同的戴尔供应链服务器和我有这个问题的机器之一。 原来这是由“Logical Processor”已启用的BIOS设置引起的。 禁用此function解决了慢速执行的Windows 2012问题。