У меня были некоторые серьезные проблемы с точностью времени на моих машинах Ubuntu EC2 с дрейфами больше чем 60 секунд.
Возможное решение работает ntpdate
или ntp
, но я не могу заставить их работать над EC2:
$ sudo ntpdate ntp.nasa.gov time-b.nist.gov
23 Jun 07:17:23 ntpdate[3878]: no server suitable for synchronization found
ntpdate
и ntp
.Какая-либо идея, как синхронизировать время на моих машинах?
$ sudo ntpdate -vd ntp.nasa.gov time-b.nist.gov
23 Jun 07:24:08 ntpdate[3890]: ntpdate 4.2.6p5@1.2349-o Wed Oct 9 19:08:07 UTC 2013 (1)
Looking for host ntp.nasa.gov and service ntp
host found : ntp-nasa.arc.nasa.gov
Looking for host time-b.nist.gov and service ntp
host found : time-b.nist.gov
transmit(198.123.30.132)
transmit(129.6.15.29)
transmit(198.123.30.132)
transmit(129.6.15.29)
transmit(198.123.30.132)
transmit(129.6.15.29)
transmit(198.123.30.132)
transmit(129.6.15.29)
transmit(198.123.30.132)
transmit(129.6.15.29)
198.123.30.132: Server dropped: no data
129.6.15.29: Server dropped: no data
server 198.123.30.132, port 123
stratum 0, precision 0, leap 00, trust 000
refid [198.123.30.132], delay 0.00000, dispersion 64.00000
transmitted 4, in filter 4
reference time: 00000000.00000000 Mon, Jan 1 1900 0:00:00.000
originate timestamp: 00000000.00000000 Mon, Jan 1 1900 0:00:00.000
transmit timestamp: d752549e.e0fc7517 Mon, Jun 23 2014 7:24:14.878
filter delay: 0.00000 0.00000 0.00000 0.00000
0.00000 0.00000 0.00000 0.00000
filter offset: 0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
delay 0.00000, dispersion 64.00000
offset 0.000000
server 129.6.15.29, port 123
stratum 0, precision 0, leap 00, trust 000
refid [129.6.15.29], delay 0.00000, dispersion 64.00000
transmitted 4, in filter 4
reference time: 00000000.00000000 Mon, Jan 1 1900 0:00:00.000
originate timestamp: 00000000.00000000 Mon, Jan 1 1900 0:00:00.000
transmit timestamp: d752549f.142f86b3 Mon, Jun 23 2014 7:24:15.078
filter delay: 0.00000 0.00000 0.00000 0.00000
0.00000 0.00000 0.00000 0.00000
filter offset: 0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
delay 0.00000, dispersion 64.00000
offset 0.000000
23 Jun 07:24:17 ntpdate[3890]: no server suitable for synchronization found
Ваши группы безопасности похожи на версию VPC, если это так, я должен был открыть UDP123/UDP* на моем Сетевом ACLs для нее для работы. VPCs имеют два слоя пакетной фильтрации, Сеть ACL, сопровождаемый Группами безопасности. SGs С СОХРАНЕНИЕМ ИНФОРМАЦИИ (не требуйте входящих правил при соединении сначала), но NACLs являются НЕ СОХРАНЯЮЩИМИ СОСТОЯНИЕ (потребуйте правил получить пакеты). После того как я добавил соответствующую строку конфигурации, NTP работал отлично.
Я только добавил строку к своим внешним NACL, которые выполняют мои сервисные экземпляры, таким образом, они могут получить доступ к внешнему NTP, они затем выполняют прокси NTP для остальной части моей сети.
Удачи!
В EC2 -u
флаг требуется:
$ sudo ntpdate -u ntp.nasa.gov time-b.nist.gov
24 Jun 11:16:33 ntpdate[27714]: adjust time server 129.6.15.29 offset 0.047272 sec
Из руководства:
-u Direct ntpdate to use an unprivileged port for outgoing packets. This is most useful when behind a firewall that blocks incoming traffic to
privileged ports, and you want to synchronise with hosts beyond the firewall. Note that the -d option always uses unprivileged ports.
Amazon предоставляет Услугу Синхронизации Времени Amazon, которая устраняет дрейф времени, который Вы испытываете. Полные шаги для принятия каждого экземпляра EC2:
sudo apt-get remove ntp
sudo apt install chrony
sudo vim /etc/chrony/chrony.conf
отредактировать файл для включения server 169.254.169.123 prefer iburst
sudo /etc/init.d/chrony restart
chronyc sources -v
и проверяя, что вывод включает '^* 169.254.169.123'ls /usr/share/zoneinfo/
sudo timedatectl set-timezone /usr/share/zoneinfo/America/Chicago