Локальные или общедоступные NTP-серверы?

11

Для относительно большой сети (тысячи хостов) - каковы аргументы за и против запуска локально управляемого (пула) NTP-серверов (возможно, периодически устанавливаемых через какой-либо общедоступный NTP-сервер) и использования всех других хостов в сети что (пул) серверов NTP по сравнению с тем, что все хосты просто напрямую используют публичные серверы NTP, скажем, через ntp.pool.org?

Помимо плюсов и минусов, что является типичной лучшей практикой сегодня?

BeeOnRope
источник
домашнее задание? Похоже, сетевой администратор для сети с тысячами хостов уже будет использовать NTP.
Джеймс Барнетт
2
Вопрос не в том, использовать ли NTP, а в том, чтобы поддерживать свой собственный NTP или использовать общедоступные.
Ян Варли
Ха, прошло много времени с тех пор, как у меня было домашнее задание :) Я лично не являюсь сетевым администратором с тысячами хостов - но возник вопрос, и я заинтересован в существующих лучших практиках.
BeeOnRope

Ответы:

12

Рекомендуется запускать собственный пул серверов NTP, настроенных для синхронизации с общедоступными серверами NTP. Если ваша организация потеряет доступ к Интернету, вы не захотите, чтобы ваши часы стали перекошенными. Кроме того, грубо устанавливать тысячи хостов на общедоступных серверах, когда вы можете (и должны) управлять зеркалом.

Наконец, если у вас есть требования к безопасным вычислениям, вам следует использовать собственные независимые хосты NTP. Для работы этих систем вам потребуется специальное оборудование.

РЕДАКТИРОВАТЬ: Так как это было обсуждение, вот некоторые аппаратные средства:

Любое оборудование, поддерживающее PPS, похоже, работает на современном ntpd . Это включает в себя некоторые устройства GPS, хотя это, кажется, редко, по крайней мере так же редко, как последовательные устройства GPS в наши дни. Однако для этой функции продаются аппаратные устройства, в том числе один продукт под названием TSync-PCIe. По данным сайта производителя:

TSync-PCIe предлагает несколько конфигураций синхронизированного пакета считывателя / генератора тайм-кода, обеспечивающего гибкость и простую интеграцию точной синхронизации во встроенное вычислительное приложение. Выберите из синхронизации с IRIG (и другими подобными временными кодами), GPS (внутренние или внешние приемники) или протокол точного времени (PTP / IEEE-1588v2). - Ссылка на сайт: http://i564f.6o.to

ewindisch
источник
1
+1 за упоминание аппаратных часов. В сети есть указания, как подключить дешевый Garmin 18 LVC к Linux, чтобы создать собственный источник Stratum 0.
Крис С
Хотя все эти инструкции, по-видимому, связаны со взломом вашего оборудования для создания интерфейса.
Фил Холленбек
@Phil, люди, которые ищут дешевый источник GPS stratum 0, вероятно, хотят немного взломать аппаратные средства. Если вы хотите что-то легкое, раскошелиться на это, как и все остальные.
Крис С
Да, просто кажется довольно простой задачей получить тайм-код от устройства GPS, поэтому я наивно предполагал, что это будет простое соединение.
Фил Холленбек
8

Даже в небольшой сети я использую локальную службу NTP, которая сама обновляется из внешней. Одна из причин - чисто историческая, восходящая к тому времени, когда единственным подключением к Интернету было модемное соединение. Другая причина заключается в том, что если служба NTP по какой-либо причине работает неправильно, я бы предпочел, чтобы все машины оставались согласованными, что более вероятно, если все они будут обновляться из одного источника.

Джон Гарденье
источник
Это способ имхо. Хотя «правильное» время, безусловно, является хорошей вещью, для устройств в локальной сети может быть более важно иметь согласованное время между ними, даже если оно отличается от правильного времени. Такие вещи, как аутентификация Kerberos, потерпят неудачу, если время не синхронизировано между серверами и клиентами, и согласованное время может быть важным для таких вещей, как мониторинг журналов, записи CCTV (например, камера и PVR добавят метку времени) и т. Д.
Роб Мойр
7

Рекомендации, настройте 2 (или более) хоста NTP в вашем местоположении, сделайте их равноправными. Пусть они синхронизируются по крайней мере с 4 (предпочтительно, до 8) внешними серверами от 0.pool.ntp.org до 3.pool.ntp.org. Если вы используете более 4, вам следует настроить частоту опроса членов пула.

Вот отредактированная версия моего ntp.conf:

server 0.us.pool.ntp.org minpoll 8 maxpoll 14
server 1.us.pool.ntp.org minpoll 8 maxpoll 14
server 2.us.pool.ntp.org minpoll 8 maxpoll 14
server 3.us.pool.ntp.org minpoll 8 maxpoll 14

peer ntp2.example.com

driftfile /var/db/drift.ntp
logfile /var/log/ntp.log
logconfig +sysall +syncall

Вы можете опустить аргументы minpoll и maxpoll, я их добавляю, чтобы на этих серверах мне было немного легче. Значения: 2 ^ n секунд, где n - аргумент; эти значения выше значений по умолчанию (6 и 10), потому что я уже опросил 12 разных серверов между моими тремя хостами NTP.

Если вы очень заинтересованы в точности, вы можете добавить следующее:

server tick.usno.navy.mil prefer minpoll 10 maxpoll 16

Это будет опросить атомные часы военно-морского флота. Обратите внимание на высокое время опроса, так как они довольно сильно загружены и просят людей успокоиться на своем сервере (фактически кластер из 3 узлов).

Крис С
источник
Что происходит с этим, если внешние NTP-серверы не синхронизированы?
Уоррен Дью
1. Этого не происходит или, по крайней мере, не в масштабе, который имеет значение. 2. Это зависит от того, что именно «не синхронизировано» и насколько. Если один внешний сервер отключен, он не будет использоваться. Шансы на то, что все 4 сумасшедшими будут астрономически невелики. Если вас интересует точность, используйте кластер серверов USNO, так как низкий уровень дрожания сделает его предпочтительным по времени.
Крис С
3

Как уже упоминали другие, для тысяч внутренних хостов необходимо предоставить собственные серверы времени. По таким причинам, как (как уже упоминалось):

  • структура: настроить время установки, как вы выбираете; с максимально возможным количеством источников 1 слоя
  • надежность: настройте систему ntp, чтобы она была устойчивой по мере необходимости; использование собственных источников синхронизации (GPS) и / или источников NTP с разными маршрутами
  • вежливость: любезное отношение к организации хостинга внешних источников времени; меньше нагрузки для них
  • производительность: ограничение внешнего сетевого трафика NTP несколькими узлами (незначительная проблема)
  • безопасность: внешнее ограничение сетевого трафика NTP несколькими защищенными узлами

Насколько лучшие практики:

На http://www.ntp.org/ntpfaq/NTP-s-config-adv.htm приведена рекомендуемая структура источников только для NTP.

 1a  1b     1c  1d     1e  1f      outside
. \ / ...... \ / ...... \ / ..............
   2a ---p--- 2b ---p--- 2c        inside
  /|\        /|\        /|\
 / | \      / | \      / | \
3a 3b 3c   3e 3f 3g   3h 3i 3j

Key: 1 = stratum-1, 2 = stratum-2, 3 = stratum-3, p = peer

Дополнительную информацию о настройке NTP-сервера можно получить по адресу http://www.pool.ntp.org/join/configuration.html . Примеры:

  • Настройка около 5 серверов
  • Используйте стандартный NTDP
  • Не используйте местный драйвер часов
  • используйте источники времени NTP, которые географически / сеть ближе всего к вам и низкие номера слоя
Ларс Нордин
источник
Обратите внимание на комментарий после этой записи в FAQ, что нежелательно иметь серверы уровня 3 в зависимости от одного сервера уровня 2. Поэтому вместо точного следования приведенной выше схеме должны быть линии от каждого сервера уровня 3 до каждого сервера уровня 2.
Пол Гир
1

Я думаю, что большинство крупных сетей используют небольшой пул выделенных внутренних ntp-серверов. NTP-трафик довольно легкий, поэтому вам, вероятно, не нужно много серверов для обслуживания большой организации.

Как и во всех сетевых службах, преимущество использования собственных ntp-серверов заключается в том, что вы получаете больший контроль и возможность принимать больше решений. Например, если вы потеряете сетевое соединение с внешним миром, ваши машины могут продолжать общаться с вашим внутренним ntp-сервером, и вам не придется беспокоиться о том, что им все придется переподключаться к внешним серверам.

Если у вас есть тысячи серверов, вам также следует рассмотреть возможность запуска собственного выделенного сервера времени, например, с устройства GPS или с помощью выделенных атомных часов . Я не уверен, сколько это стоит в эти дни, но это не может быть дорого по сравнению с тысячами систем, которые вы уже поддерживаете. Тогда у вас есть служба точного времени, полностью независимая от вашего соединения с внешним миром.

Еще один момент, который следует учитывать, - это то, что ваши собственные ntp-серверы более вежливы. Таким образом, у вас есть всего несколько машин, которые делают внешние запросы, а не тысячи. Я уверен, что администраторы общедоступных серверов ntp там оценят это. Плюс это немного (очень незначительно) уменьшит ваш внешний сетевой трафик, что, вероятно, хорошо.

Кроме того, если вы запускаете свои собственные ntp-серверы, вы можете немного затянуть брандмауэр, поскольку к порту 123 подключается лишь несколько машин, а не множество машин. Это может быть полезно.

NTP прост в настройке, и, как только он запущен, он требует минимального обслуживания. Каждая компания, с которой я когда-либо работал, создала свои собственные ntp-серверы, и это прекрасно работало.

Фил Холленбек
источник
0

В этом случае рекомендуется использовать собственный NTP-сервер - или пул по мере необходимости - и извлекать из ближайшего к вам пула NTP. Это уменьшает нагрузку, которую должны выдерживать общедоступные NTP-серверы, но все равно обеспечит высокую точность. Если вам требуется еще большая точность, вы можете извлечь данные из серверов Stratum 1, но это увеличивает нагрузку, которую должен нести пул, поэтому вы должны делать это только в том случае, если вы хотите добавить сервер в пул.

писец
источник
0

Хорошая причина для запуска ваших собственных серверов NTP в большой сети - убедиться, что все ваши машины работают в правильное время. Наличие большого количества систем с собственными настройками для внешних серверов времени (или для всех из них используются разные участники pool.ntp.org) может привести к небольшим различиям во времени в системах, что может привести к проблемам.

Другая веская причина заключается в том, что наличие собственного NTP-сервера (-ов) означает, что синхронизированное время останется доступным для нескольких (отслеживаемых!) Серверов, когда внешняя ссылка отключится или будет заполнена трафиком.

Все мое мнение как таймджик.

Коос ван ден Хаут
источник