这是我的问题。我有一台 Xen 服务器,上面有 8 个 CPU 和 6 个正在运行的虚拟机,每个虚拟硬盘都在不同的物理硬盘上运行。一切正常,但有时一台虚拟机几乎占用了整个 CPU,如果 Domain-0 占用了 90%,这是正常的,虚拟机的 CPU 使用率为 500%。我已经改进了,它不取决于谁在使用 VM,即使没有人在使用服务器,这种情况仍然会发生。我不知道发生了什么。有人知道吗?或者有人遇到过同样的事情吗?
答案1
抱歉,如果我写了一些你已经知道的东西,以下是我的看法:
1) Xen 分配给 DomU 的虚拟 CPU 与物理机 CPU 不同...具有 4 个虚拟 CPU 的虚拟机可以在某个时刻将这 4 个虚拟 CPU 全部映射到 1 个物理 CPU - 例如 - 这样,您可以在 DomU 中获得 400% 的使用率,在 Dom0 上获得 100% 的使用率 - 但如果您有足够的核心,这些情况就不会发生,xen 并没有那么愚蠢。您应该检查“xm vcpu-list”以找出答案,并使用“xm vcpu-pin”来玩一会儿
2) 然后是信用调度 - Xen 测量每个 domU 花费了多少 CPU 资源,但默认情况下没有上限。我可能应该尝试设置该上限,并观察它是否会真正减慢速度 - 该机器上的服务是否会开始滞后或某些东西是否会减慢很多。
3) 您在这段时间登录过这台机器吗?它的 IO 负载大吗?它正在交换吗?