我们有一个在Xen上运行Ubuntu的VPS。 问题在于,一天一次,大约20-50分钟,随机时间,服务器变得完全没有响应的外部世界。 在这段时间之后,它再次变得响应,好像什么也没有发生,它不会失去正常运行时间,它不会重新启动。 它只是开始响应,就好像它已经在假死。
这些中断发生在非例外的内存和CPU的情况下,例如70%的内存,5%的CPU。 我已经停止了所有非必要的服务,所以使用非常平均。 这些中断不会特别发生在增加内存/ CPU(在日常任务期间)的时候,它们有时在非常低的CPU使用时间(<2%)时发生,但过去也在交换期间发生。
这些停电已经发生在Ubuntu 12.04 LTS和Ubuntu 14.04 LTS下 – 根本没有任何改变(我专门升级了Ubuntu,看看它是否帮助了这个问题)。
可以login我们的网站主机网站,并使用他们的pipe理控制台来查看这段时间内的错误信息。 据推测,这些消息来自Xen虚拟化,主要信息是这样的:
BUG: soft lockp - CPU#0 stuck for 22s! [ksoftireqd/0:3] (repeats many times) SysRq : Emergency Sync (Sometimes this is the only message in the console)
以前在不同负载情况下看到的其他人包括
BUG: soft lockup - CPU#0 stuck for 22s! [swapper/0:0]
(重复多次)或者:
INFO: rcu_sched detected stall on CPU 0 (t=15000 jiffies)
(重复多次,变大)
从谷歌search我已经尝试过各种内核参数,如nohz = off和acpi = off无济于事。 所有技术支持人员都表示,其他Ubuntu安装不会遭受同样的问题。
任何人有任何想法或经验与这个问题?
那么我无法find任何解决这个问题,无论我尝试。 最后,我用Debian 7.0取代了Ubuntu,问题消失了,还有一些exception的CPU使用情况没有出现在VPS的监视面板上(这种CPU使用率performance为逐渐增加, 3天达到10%,然后回落到0%,导致CPU使用率graphics出现“锯齿”模式)。 我没有尝试重新安装Ubuntu(尽pipe我尝试升级到14.04),因此我不能确定用DebianreplaceUbuntu就是解决scheme。 尽pipe如此,Debian的声誉如同人们所期待的那样稳定,但令人遗憾的是,对于Ubuntu来说,它的声誉也是如此。 我喜欢Ubuntu,而且我非常喜欢Unity,但是看起来Ubuntu在硬件上并不稳定。
我已经回答了我自己的问题,因为1)我确实find了解决scheme,2)我找不到其他地方的解决scheme(CentOS的情况除外,将CentOS 6降级为CentOS 5),所以如果可能不受欢迎给别人带来这个问题。 我知道我不会对解决scheme感到满意:用DebianreplaceUbuntu! 但最终,这是我做了什么来解决这个问题。 顺便说一下,我决定在Debian上,因为我发现没有Debian的这个问题的报告,而我发现Ubuntu和CentOS的这个问题的报告。
希望这有助于任何人在未来看到这个问题。
我们在类似的环境中遇到过这个问题:
我们的Splunk集群主pipe平均每五分钟发出一次这些警告。 CPU的负载会经常上升到35%,警告会列出splunkd或python作为最有可能导致locking的进程。
经过多次拔毛和咬牙切齿之后,我们绝望地将Virt-Manager中的磁盘总线设置从'virtio'改为'SATA'。
问题消失了。
目前我们还在监控系统,但自从发生变化(至今已有半个小时)以来,并没有再发出警告,CPU负载稳定在2%左右。
我知道打破香槟和烟花还为时过早,但我们充满希望。