У меня около 70 экземпляров Linux, работающих в кластере OpenStack, который в настоящее время состоит из двух вычислительных узлов и одного контроллера. Кроме того, эти машины находятся в RackSpace DC в рамках их программы «Частное облако», поэтому все наши ресурсы выделены.
Раньше мы использовали только серверы NTP RackSpace для синхронизации часов на всех наших экземплярах, но Check_MK часто уведомлял нас о том, что экземпляры синхронизируются сами с собой [слой 10], подразумевая, что серверы NTP не отвечают. Учитывая, что только 4/70+ экземпляров имели общедоступные IP-адреса, я предположил, что NTP-серверы RackSpace ограничивают нас, поскольку они будут видеть в 35+ раз больше обычных запросов NTP, исходящих от двух наших вычислительных хостов. Это казалось логичным, поскольку 4 экземпляра с общедоступными IP-адресами никогда не вызывали жалоб на NTP.
Чтобы решить эту проблему, я изменил ntpd.conf в наших экземплярах, чтобы включить наш узел контроллера вместе с серверами Rackspace, чтобы у нас, по крайней мере, был запасной вариант, когда серверы RS перестанут отвечать. [книга рецептов NTP, которую мы используем, не позволяет нам устанавливать предпочтения] Однако это не остановило и даже не уменьшило количество жалоб на NTP. Я видел last
записи в ntpq -p
более 60 минут для всех трех хозяев. Я не могу понять, как ограничение скорости на основе IP может вступить в силу с узлом контроллера, поскольку экземпляры и контроллер находятся в частной сети и обмениваются данными через нее, где каждый экземпляр имеет свой собственный IP-адрес.
Что может быть причиной этого? Насколько я могу судить, в restrict default
линия, которая вызовет то, что мы переживаем.
ntp.conf
из экземпляра:
driftfile /var/lib/ntp/ntp.drift
statsdir /var/log/ntpstats/
leapfile /etc/ntp.leapseconds
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server controller01.dfw.domain.com iburst
restrict controller01.dfw.domain.com nomodify notrap noquery
server time.dfw1.rackspace.com iburst
restrict time.dfw1.rackspace.com nomodify notrap noquery
server time2.dfw1.rackspace.com iburst
restrict time2.dfw1.rackspace.com nomodify notrap noquery
restrict default kod notrap nomodify nopeer noquery
restrict 127.0.0.1 nomodify
restrict -6 default kod notrap nomodify nopeer noquery
restrict -6 ::1 nomodify
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
ntp.conf
от узла контроллера:
driftfile /var/lib/ntp/ntp.drift
statsdir /var/log/ntpstats/
leapfile /etc/ntp.leapseconds
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server 0.pool.ntp.org iburst
restrict 0.pool.ntp.org nomodify notrap noquery
server 1.pool.ntp.org iburst
restrict 1.pool.ntp.org nomodify notrap noquery
server 2.pool.ntp.org iburst
restrict 2.pool.ntp.org nomodify notrap noquery
server 3.pool.ntp.org iburst
restrict 3.pool.ntp.org nomodify notrap noquery
restrict default kod notrap nomodify nopeer noquery
restrict 127.0.0.1 nomodify
restrict -6 default kod notrap nomodify nopeer noquery
restrict -6 ::1 nomodify
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
Контроллер:
# ntpq -npcrv
remote refid st t when poll reach delay offset jitter
==============================================================================
+66.79.167.34 129.6.15.28 2 u 933 1024 377 50.360 3.898 5.064
-208.53.158.34 164.244.221.197 2 u 372 1024 377 27.384 6.635 5.323
+173.230.158.30 199.102.46.73 2 u 780 1024 357 47.656 0.897 0.596
*129.250.35.251 209.51.161.238 2 u 373 1024 377 40.828 1.786 0.163
127.127.1.0 .LOCL. 10 l 84d 64 0 0.000 0.000 0.000
associd=0 status=0615 leap_none, sync_ntp, 1 event, clock_sync,
version="ntpd 4.2.6p3@1.2290-o Tue Jun 5 20:12:08 UTC 2012 (1)",
processor="x86_64", system="Linux/3.2.0-54-generic", leap=00, stratum=3,
precision=-22, rootdelay=48.228, rootdisp=69.214, refid=129.250.35.251,
reftime=d6f049cf.5ce03f06 Wed, Apr 9 2014 22:35:59.362,
clock=d6f04f81.183edd61 Wed, Apr 9 2014 23:00:17.094, peer=21729,
tc=10, mintc=3, offset=1.514, frequency=12.879, sys_jitter=1.158,
clk_jitter=0.896, clk_wander=0.058
Пример:
$ ntpq -npcrv
remote refid st t when poll reach delay offset jitter
==============================================================================
+10.240.0.81 129.250.35.251 3 u 1997 1024 376 0.461 -2.098 0.194
+72.3.128.240 204.9.54.119 2 u 1556 1024 376 0.677 2.234 4.023
*72.3.128.241 204.9.54.119 2 u 1664 1024 376 0.793 -0.783 0.836
127.127.1.0 .LOCL. 10 l 51h 64 0 0.000 0.000 0.000
associd=0 status=06ff leap_none, sync_ntp, 15 events, stale_leapsecond_values,
version="ntpd 4.2.6p5@1.2349-o Sat Nov 23 18:21:48 UTC 2013 (1)",
processor="x86_64", system="Linux/2.6.32-431.5.1.el6.x86_64", leap=00,
stratum=3, precision=-22, rootdelay=30.593, rootdisp=105.114,
refid=72.3.128.241,
reftime=d6f04951.9026bd89 Wed, Apr 9 2014 22:33:53.563,
clock=d6f04fd1.0d15b2be Wed, Apr 9 2014 23:01:37.051, peer=54008,
tc=10, mintc=3, offset=-0.295, frequency=-0.163, sys_jitter=1.914,
clk_jitter=0.918, clk_wander=0.080, tai=35, leapsec=201207010000,
expire=201306280000