我们有一个在 Xen 上运行 Ubuntu 的 VPS。问题是,大约每天一次,大约 20-50 分钟,随机时间,服务器对外界完全没有响应。在这段时间之后,它再次变得响应,好像什么也没发生过一样,它不会失去正常运行时间,也不会重新启动。它只是再次开始响应,就好像它一直处于假死状态一样。
这些中断发生在非异常内存和 cpu 的条件下,例如 70% mem、5% cpu。我已经停止了所有非必要的服务,所以使用非常均匀。这些中断不会特别发生在内存/cpu 增加时(在日常任务期间),它们有时会在 cpu 使用率非常低 (<2%) 时发生,但在过去也发生在交换期间。
这些停电在 Ubuntu 12.04 LTS 和 Ubuntu 14.04 LTS 下都发生过——根本没有变化(我专门升级了 Ubuntu,看看它是否有助于解决这个问题)。
可以登录我们的虚拟主机站点,并使用他们的管理控制台查看这段时间内的错误消息。据推测,这些消息来自 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)
Run Code Online (Sandbox Code Playgroud)
之前在不同负载情况下看到的其他情况包括:
BUG: soft lockup - CPU#0 stuck for 22s! [swapper/0:0]
Run Code Online (Sandbox Code Playgroud)
(重复多次)或:
INFO: rcu_sched detected stall on CPU 0 (t=15000 jiffies)
Run Code Online (Sandbox Code Playgroud)
(随着 t 变大重复多次) …