我有几个虚拟机由私人服务提供商托管。我知道他们使用 VMWare,而且我相信我的大多数虚拟机都在共享主机上。
我注意到我所有机器的窃取时间始终为 0%。
据我对 CPU 窃取时间的理解(虚拟化不是我的领域),这个窃取时间应该显示我的虚拟 CPU 等待真实 CPU 的时间。
那么我能从 0% 窃取时间推断出什么呢?
- 我的虚拟机位于专用机器上,或者至少是一台未充分利用的机器上?
- 窃取时间是“假的”还是被提供商人为设置为 0?
答案1
您应该推断硬件没有超载。差不多就是这样。不一定是专用于(虚拟机)的机器,但容量足够。唯一导致这种情况发生的原因是您的 VCPU 比实际核心多(因此有等待的机会),并且这些 VCPU 非常繁忙,导致等待。这通常是主机严重超载的标志。
答案2
除非有其他迹象表明存在问题,否则您应该假设窃取时间为 0%,并且物理主机无论出于何种原因都没有负载。