Linux

XEN linux 客戶機上奇怪的波動時間

  • November 2, 2020

我在這里工作的一些伺服器有一個奇怪的問題。我們有幾個 XEN 客人,他們的目前時間波動。

# date;date;date;date;date;date;date
Thu Feb 25 16:00:40 PHT 2010
Thu Feb 25 16:00:48 PHT 2010
Thu Feb 25 16:00:40 PHT 2010
Thu Feb 25 16:00:48 PHT 2010
Thu Feb 25 16:00:40 PHT 2010
Thu Feb 25 16:00:48 PHT 2010
Thu Feb 25 16:00:40 PHT 2010

如上所示,時間在 16:00:48 和 16:00:40 之間波動,這對我們來說是個問題,因為在我們的一些腳本中計算時間差異變得不准確(例如,應該是幾毫秒的差異變成了一些第二個差異,甚至有時是負面差異)。

有問題的伺服器是 XEN 主機上的 linux 來賓。來賓系統上的時間會波動,但在主機本身是可以的。我已經排除了 ntpd,因為無論 ntpd 是否在來賓系統上執行,都會發生這種情況。

來賓處於完全虛擬化狀態。主人和客人的時間確實匹配,只是客人的時間在主人時間的幾秒鐘內波動,而主人時間沒有波動。

/proc/sys/xen/independent_wallclock 在主機中為 0,在來賓中不存在。Ntpd 服務已停止並禁用。在宿主機中設置 Independent_wallclock 為 1 沒有效果(即在客戶機中時間仍然波動)。雖然我無法重新啟動來賓,因為它是生產伺服器。週末可能可以做到這一點。

關於檢查什麼以及如何解決這個問題的任何想法?


經過長時間的搜尋和測試,完美執行的核心參數是:

divider=10 clocksource=acpi_pm

我使用這個頁面來確定哪些參數最適合我們使用的作業系統。這些資訊適用於 VMware,但令人驚訝的是也適用於 XEN。我們還重新啟用了 ntpd,因此我們有一個工作時間同步。

典型的時差。您需要設置 NTP 並為 VM 提供正確的核心 cmd 行

https://access.redhat.com/solutions/27865

可能的答案可能取決於一些細節。那是完全虛擬化還是半虛擬化?

如果那是準虛擬化來賓,則檢查以下輸出:

cat /proc/sys/xen/independent_wallclock

在來賓和 dom0 中。另外,檢查 dom0 中的時間。

當 dom0 中的時間正確且 /proc/sys/xen/independent_wallclock 在 dom0 和 domU 中均為“0”時,那麼來賓中的時間也應該正確。不要嘗試在任何客人中執行 ntpd,讓 dom0 保持時間。

不過,我不確定完全虛擬化(我猜 /proc/sys/xen/independent_wallclock 在 domU 中不可用,但您仍然可以檢查 dom0)。

引用自:https://serverfault.com/questions/116637