- Я заметная ноша для бассейна? Т.е. имеет ли это какое-то заметное значение для пула, если я бью с 20 серверов или с 2?
Учитывая, что пул постоянно нуждается в серверах в течение многих лет (см. [1]), я бы сказал, что хотя 2 или 20 серверов на самом деле не имеют значения, вы всегда должны помнить, что вы не одиноки. Так что вам лучше подумать о 1000 администраторах, в этом случае мы говорим о 2000 или 20000 серверах, и это имеет значение.
- Если это что-то меняет, какие настройки / конфигурации будут синхронизировать мою подсеть и пул под небольшой нагрузкой?
Вы должны синхронизировать два [2] сервера в вашей сети с пулом (назовем их Первичными NTP-серверами ), а затем синхронизировать все остальные серверы с этими двумя. Этот метод также имеет преимущество в том, что время между всеми вашими серверами будет более точно согласовано (в пределах менее 1 мсек). Это соответствует лучшим практикам IETF .
1) Конфигурация для основных серверов NTP
Замените строки server
and restrict
вашего ntp [d] .conf следующим текстом, а остальные оставьте по умолчанию для вашего дистрибутива [3]:
server 10.11.12.1 iburst peer
# ^^^^^^^^^^^
# The LAN IP of the _other_ Primary NTP server
server 0.europe.pool.ntp.org
server 1.europe.pool.ntp.org
server 2.europe.pool.ntp.org
server 3.europe.pool.ntp.org
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
Обратите внимание, что эта конфигурация также позволяет хостам со всего Интернета запрашивать время вашего хоста с помощью запросов NTP. Используйте свой брандмауэр, если не хотите. В моем примере 10.11.12.1 и 10.11.12.2 - это IP-адреса первичных серверов NTP (у них две сетевые карты, одна из которых обращена к общедоступному Интернету, а другая - в локальную подсеть 10.11.12.x). Каждый первичный NTP-сервер имеет другой, объявленный как одноранговый (в основном одноранговый сервер означает и сервер, и клиента - вы используете другой хост в качестве источника времени, а другой хост также использует вас в качестве источника времени). Поэтому настройте IP-адрес в 1-й строке, чтобы конфигурация каждого основного NTP-сервера указывала на другой в качестве равноправного. См. [4] относительно моего выбора использовать 4 сервера.
2) Конфигурация для всех остальных серверов
2А) Если у вас есть два сетевых интерфейса
Вам лучше использовать 2-й интерфейс для создания локальной подсети (например 10.11.12.0/24
) и использовать ее для запросов NTP. В этом случае ограничительные линии могут быть более узкими. Итак, еще раз замените строки server
и restrict
вашего ntp [d] .conf на следующее, а остальные оставьте по умолчанию для вашего дистрибутива [3]:
restrict -4 default ignore
restrict -6 default ignore
restrict 10.0.0.0 mask 255.0.0.0 kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
# Only use our Primary NTP Servers
server 10.11.12.1 iburst
server 10.11.12.2 iburst
# ^^^^^^^^^^
# The IPs of your 2 Primary NTP Servers
2B) Если у вас нет двух сетевых интерфейсов
Вы должны использовать приведенные ниже строки ограничения (и прочитайте примечание об использовании вашего брандмауэра, чтобы заблокировать доступ к вашим NTP-серверам выше). Итак, еще раз замените строки server
и restrict
вашего ntp [d] .conf на следующее, а остальные оставьте по умолчанию для вашего дистрибутива [3]:
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
# Only use our Primary NTP Servers
server 10.11.12.1 iburst
server 10.11.12.2 iburst
# ^^^^^^^^^^
# The IPs of your 2 Primary NTP Servers
Ноты
[1] В период с 2006 по 2012 год они постоянно просят присоединить больше серверов: запрос 2006 года , 2009 год и 2012 год . Проверьте www.pool.ntp.org для обновления на текущий статус.
[2] Два первичных сервера NTP предлагаются только в качестве простого способа обеспечения избыточности без сложных механизмов высокой доступности. Вы можете выбрать 3 или 4 по другим причинам (снова ознакомьтесь с рекомендациями IETF )
[3] На практике, независимо от вашего дистрибутива, единственное, что вам нужно включить в конфигурацию ntpd, - это строка, определяющая каталог для размещения дрейфового файла и его имени - например driftfile /var/lib/ntp/ntp.drift
. Я протестировал свое решение в CentOS, Debian и Ubuntu. Я думаю, это работает в большинстве других дистрибутивов.
[4] Я настроил 4 пула серверов, следуя рекомендациям . Конфигурирование более 4 серверов технически приемлемо, но вы увеличите нагрузку на пул NTP для сомнительного увеличения доступности, так что не делайте этого. В лучших практиках я вижу, что «начиная с ntp-4.2.6 директива 'pool' будет приводить к" достаточному количеству "ассоциаций, чтобы обеспечить надежную службу времени", поэтому если вы используете .pool. адреса, как я здесь и ntp> = 4.2.6 точное количество строк сервера, вероятно, не имеет значения.
Рэнт О! Я ненавижу NTP (кроме того, что мне нравится, что это работает). Официальная документация полна устаревшей информации, и у них есть "как мне ее использовать?" информация, смешанная с научными подробностями о внутренностях. И я также ненавижу, как на restrict 127.0.0.1
самом деле означаетallow everything for 127.0.0.1
История обновлений
Я удалил эту iburst
опцию из конфигурации Локальных NTP-серверов, потому что их дружелюбие к пулу является дискуссионным. (см. комментарии). Удаление их добавляет только пару минут времени ожидания к первой синхронизации.
кредиты
Комментарии и ответы от пользователей SF Marki и Sven послужили хорошей отправной точкой для этого ответа. Спасибо им обоим.
peer
отношения. См. Например, ntp.org/ntpfaq/NTP-s-config-adv.htm#AEN3101