在使用亚马逊的EC2服务来对抗时钟漂移时,我应该使用NTP服务器吗?

时间:2015-04-02 16:49:41

标签: amazon-web-services time amazon-ec2 ntp system-clock

我正在使用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信息的另一台服务器,或者我还需要其他其他配置?

谢谢, - 戴夫

编辑:包括评论的输出......

[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

3 个答案:

答案 0 :(得分:10)

是的,你应该使用至少3个和理想 5个或更多服务器,这些服务器是你的实例的低层和接近(往返时间)。

亚马逊提供了一些documents,详细说明了如何配置ntp。应该注意的是,您不需要使用列出的池服务器 - 它们是Amazon负载均衡的公共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.confntpq -pcrv的输出。

修复可访问性问题后,请检查ntpq -p中的数字是否显示有效数据,您应该发现问题已排序,时间会按预期进行检查。

答案 1 :(得分:7)

亚马逊documents NTP here。它们包括NTP配置及其Amazon Linux发行版。我当前运行的Amazon实例在/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

答案 2 :(得分:7)

(2018)Amazon now recommend "just" using their 169.254.169.123 NTP server,因为

  

您的实例不需要访问Internet,并且不必配置安全组规则或网络ACL规则就可以访问。

(看起来像link-local "Amazon Time Sync Service" was introduced in late 2017

注意dispatch()服务器执行“ leap smearing”,并且不应将Internet以外的其他(非Amazon)NTP服务器与其他服务器混合使用涂抹方法完全相同。亚马逊还建议使用chrony而不是withRedux,除非您陷入无法使用compared to ntpd, chrony is faster at achieving synchronization, more accurate and more robusthandleMove(geography, evt) { const x = evt.clientX const y = evt.clientY + window.pageYOffset this.props.store.dispatch( // [UPDATE] Add store show({ origin: { x, y }, content: geography.properties.name, }) ) } handleLeave() { this.props.store.dispatch(hide()) // [UPDATE] Add store } 的传统情况。