我被一个 Centos 5.3 VM(在 Proxmox 上运行)卡住了,它表现出巨大的时钟漂移。它被配置为每 5 分钟运行一次 ntpdate,但在两次执行之间时钟仍然不同步长达 20 秒。我已经尝试运行 ntpd (并停止 cron 作业),但它没有报告任何错误/我看不到任何地方创建了 ntp.drift 文件并且时钟继续漂移。
我在集群上运行了大约 30 个虚拟机和相同数量的容器——没有其他任何东西出现同样的问题。/etc/ntp.conf中除了服务器地址没有其他配置
我被一个 Centos 5.3 VM(在 Proxmox 上运行)卡住了,它表现出巨大的时钟漂移。它被配置为每 5 分钟运行一次 ntpdate,但在两次执行之间时钟仍然不同步长达 20 秒。我已经尝试运行 ntpd (并停止 cron 作业),但它没有报告任何错误/我看不到任何地方创建了 ntp.drift 文件并且时钟继续漂移。
我在集群上运行了大约 30 个虚拟机和相同数量的容器——没有其他任何东西出现同样的问题。/etc/ntp.conf中除了服务器地址没有其他配置
内核对时间调整的想法需要修复。该
ntpd
过程通常会规定这一点,因此随着时间越来越接近现实,变化率会降低。这可能是由于您尝试修复时间步长而产生的交互结果ntpdate
。我的建议是,你要确保你知道你是在使用
systemd
' 时间同步,ntpd
还是围绕ntpdate
./etc/adjtime
开(在你的问题中看到它的内容会很有趣)在一台同步良好的机器上,我有以下值
/etc/adjtime
,文件本身最后一次修改是在 2 月。不要复制这些值查看
man 5 adjtime
您可以看到,这些值表明该系统的系统漂移为 0.001341 秒/天(一秒漂移为两年),并且它最后一次调整是在 2 月。相当稳定。哦,系统时钟以 UTC 正确运行。在您的情况下需要考虑的其他事项
有一些有用的参考资料解释(除其他外)CentOS 5.3 没有
kvm-clock
内核模块,如果没有这个模块,当 Hypervisor 暂时(并且正确地)使 VM 的 CPU 资源匮乏时,VM 的时钟会减慢甚至停止。该模块保持 VM 内核的时间准确。
您可以使用此命令检查您自己的情况,该命令应报告
kvm-clock
:这两个参考文献中的第一个还建议更新到最新的 CentOS 5.3(当时是相关的),因为这解决了他们的时间问题。不过,2021 年可能并不现实。
另一个消息来源建议添加
divider=10 clocksource=acpi_pm
到内核引导行,但这是针对 VMware 的,可能不适用于带有 kvm 的 Proxmox。