我需要在我的 EC2 实例中运行 ntpd 吗?

aha*_*son 42 ntpd amazon-ec2

我正在努力让一些服务器在 EC2 环境中运行,并且我注意到 ntpd 尝试同步(使用 CentOS)时出现一些错误。

我在这个网站上阅读,我得到的印象是我不需要运行 ntpd,因为 EC2 是 Xen 并且主机负责虚拟服务器的时间。
http://support.ntp.org/bin/view/Support/KnownOsIssues

这是准确的还是我需要弄清楚如何解决我遇到的错误?
cap_set_proc() 未能删除 root 权限
看起来它涉及构建新内核和其他我不想做的事情,如果我不需要的话。

Jo *_*iss 74

是的,您需要运行 ntpd。

我的时钟在 EC2 微型实例(运行 Ubuntu UEC Maverick)上关闭了 18.5 秒,正常运行时间为 5 天。

关机重启后又恢复正常了,好像有什么漂移。

顺便/sys/devices/system/clocksource/clocksource0/current_clocksourcexen一句,尽管如此。我不确定为什么它不起作用。

安装ntp包为我解决了这个问题。时钟保持准确,系统日志中没有任何可疑之处可能表明与 Xen 的时钟同步发生冲突。(它使用 ntp.ubuntu.com 作为其服务器。我不确定 AWS 网络中是否有我可以使用的 NTP 服务器,但 Ubuntu 服务器现在可以很好地运行。)

更新:我最近观察到,在我的(较新的?)实例上,时钟自动保持准确,没有运行 ntp。从评论来看,这似乎并不适用于每个人,所以最好还是使用 ntp 以防万一。

  • 我刚刚注意到我的一台服务器出现了几分钟的漂移,其中 `/sys/devices/system/clocksource/clocksource0/current_clocksource` 也设置为 `xen` (8认同)
  • 对于 pvops 内核,independent_wallclock sysctl 未被上游接受。较新的内核(可能是 2.6.24 及更高版本)表现为独立挂钟 == 1。因此唯一的解决方案是使用 NTP。 (3认同)
  • 这篇文章有来自(据说)一位 AWS 员工的评论,称 EC2 不同步时钟,因此您应该运行 NTP。https://forums.aws.amazon.com/thread.jspa?messageID=364749 (3认同)
  • ...此外,ntp.org 池有一些特定于亚马逊的服务器:http://forums.aws.amazon.com/message.jspa?messageID=312682 – Dan Pritts 2 月 15 日 22:21 (2认同)

小智 8

我们从小到大运行 Linux ec2 实例,我只是做了一个检查以确保它们同步。

所有服务器都在运行连接到亚马逊特定池的 ntp 守护进程。

server 0.amazon.pool.ntp.org iburst
server 1.amazon.pool.ntp.org iburst
server 2.amazon.pool.ntp.org iburst
server 3.amazon.pool.ntp.org iburst
Run Code Online (Sandbox Code Playgroud)

在出现错误之前可能并非如此,我只是想确保将来偶然发现此问题的人拥有最新信息。


Kam*_*iel 2

你不应该需要这样做。EC2 实例的时钟将同步到 Xen Dom0。您可以通过检查 的内容是否/proc/sys/xen/independent_wallclock为 0 来验证这一点。

  • @Kariem:较新的内核有 `/sys/devices/system/clocksource/clocksource0/current_clocksource`,请参阅下面的评论。 (8认同)
  • 对我来说 /sys/devices/system/clocksource/clocksource0/current_clocksource 包含“xen”,但机器上的时间仍然关闭了几分钟。 (4认同)
  • 我找不到这样的东西。该信息仍然适用吗? (2认同)