我正在使用AWS,并且在EC2服务器上…
[dalvarado@mymachine ~]$ uname -a
Linux mydomain.org 3.14.33-26.47.amzn1.x86_64 #1 SMP Wed Feb 11 22:39:25 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
我的时钟偏离了一分钟,所以尽管我已经安装了NTPD并运行
[dalvarado@mymachine ~]$ sudo service ntpd status
ntpd (pid 22963) is running...
看起来ntp数据包被阻止了,或者有其他问题,因为我收到了这个错误…
[dalvarado@mymachine ~]$ sudo ntpdate pool.ntp.org
2 Apr 16:43:50 ntpdate[23748]: no server suitable for synchronization found
有人知道AWS是否有另一台服务器我应该联系以获取NTP信息,或者是否有其他我需要的额外配置吗?
谢谢,-Dave
编辑:包括注释的输出。。。
[dalvarado@mymachine ~]$ sudo ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
173.44.32.10 .INIT. 16 u - 1024 0 0.000 0.000 0.000
deekayen.net .INIT. 16 u - 1024 0 0.000 0.000 0.000
dhcp-147-115-21 .INIT. 16 u - 1024 0 0.000 0.000 0.000
time-b.timefreq .INIT. 16 u - 1024 0 0.000 0.000 0.000
第二次编辑:
以下是/etc/ntp.conf文件的内容
# For more information about this file, see the man pages
# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).
driftfile /var/lib/ntp/drift
# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict default nomodify notrap nopeer noquery
# Permit all access over the loopback interface. This could
# be tightened as well, but to do so would effect some of
# the administrative functions.
restrict 127.0.0.1
restrict ::1
# Hosts on local network are less restricted.
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
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
#broadcast 192.168.1.255 autokey # broadcast server
#broadcastclient # broadcast client
#broadcast 224.0.1.1 autokey # multicast server
#multicastclient 224.0.1.1 # multicast client
#manycastserver 239.255.254.254 # manycast server
#manycastclient 239.255.254.254 autokey # manycast client
# Enable public key cryptography.
#crypto
includefile /etc/ntp/crypto/pw
# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography.
keys /etc/ntp/keys
# Specify the key identifiers which are trusted.
#trustedkey 4 8 42
# Specify the key identifier to use with the ntpdc utility.
#requestkey 8
# Specify the key identifier to use with the ntpq utility.
#controlkey 8
# Enable writing of statistics records.
#statistics clockstats cryptostats loopstats peerstats
# Enable additional logging.
logconfig =clockall =peerall =sysall =syncall
# Listen only on the primary network interface.
interface listen eth0
interface ignore ipv6
# Disable the monitoring facility to prevent amplification attacks using ntpdc
# monlist command when default restrict does not include the noquery flag. See
# CVE-2013-5211 for more details.
# Note: Monitoring will not be disabled with the limited restriction flag.
disable monitor
下面是"ntpq-p"的输出
sudo ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
173.44.32.10 .INIT. 16 u - 1024 0 0.000 0.000 0.000
deekayen.net .INIT. 16 u - 1024 0 0.000 0.000 0.000
dhcp-147-115-21 .INIT. 16 u - 1024 0 0.000 0.000 0.000
time-b.timefreq .INIT. 16 u - 1024 0 0.000 0.000 0.000
(2018)亚马逊现在建议"只"使用他们的169.254.169.123
NTP服务器,因为
您的实例不需要访问internet,也不必配置安全组规则或网络ACL规则来允许访问。
(看起来链接本地"亚马逊时间同步服务"是在2017年底推出的)
注意:169.254.169.123
服务器进行"跳跃抹黑",不应与互联网上其他(非亚马逊)NTP服务器混合使用,这些服务器不以完全相同的方式进行抹黑。亚马逊还建议使用chrony
而不是ntpd
,除非您陷入chrony
不可用的遗留情况。与ntpd
相比,chrony
在实现同步方面更快、更准确、更健壮。
是的,您应该使用至少3台和最好是5台或5台以上的服务器,这些服务器级别较低,距离您的实例很近(往返时间)。
亚马逊提供了一些详细说明如何配置ntp的文档。需要注意的是,您不需要使用列出的池服务器——它们是公共ntp池的前端,亚马逊的负载平衡到该池;你可以选择任何你喜欢的服务器,只需记住为任何新地址更新你的安全/ACL设置。
您提供的输出
[dalvarado@mymachine ~]$ sudo ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
173.44.32.10 .INIT. 16 u - 1024 0 0.000 0.000 0.000
deekayen.net .INIT. 16 u - 1024 0 0.000 0.000 0.000
dhcp-147-115-21 .INIT. 16 u - 1024 0 0.000 0.000 0.000
time-b.timefreq .INIT. 16 u - 1024 0 0.000 0.000 0.000
显示无法访问您配置的服务器。
Refid=.INIT.
表示您尚未初始化指向引用服务器的命令。您每1024秒轮询一次,但它们都有reach=0
,因此您无法访问它们,也无法从任何服务器接收时间。这就是为什么你的时钟仍然是错的。
也许你的防火墙/网络安全设置太苛刻了,你正在阻止访问这些主机,或者更可能是端口。
做一些网络级的诊断,因为这似乎是你的问题所在——如果你需要进一步的帮助,还请包括你的ntp.conf
和ntpq -pcrv
的输出。
一旦你解决了可达性问题,请检查ntpq -p
中的数字是否显示了有效数据,你应该会发现你的问题已经解决,时钟也会像预期的那样得到控制。
只是提醒人们使用AWS时间服务169.254.169.123;此服务器不是truentp服务器,因为它不能正确处理闰秒。相反,AWS服务器会进行"跳跃抹黑"。
这可能适合也可能不适合您的设置,并且您应该永远不要在同一配置或同一时间域中将普通NTP和跳跃涂抹的NTP服务器混合在一起。你应该选择一个标准并坚持下去,以避免出现任何问题。
Amazon在此处记录NTP。它们在Amazonlinux发行版中包含NTP配置。我目前运行的一个亚马逊实例在/etc/ntp.conf中列出了这些服务器,这也是他们的文档建议的:
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