Дрейф времени


Ответы:


24

Сетевой протокол времени, или NTP, может использоваться для синхронизации времени на сервере с авторитетным источником. Например, серверы Windows будут использовать один из сетевых контроллеров домена (контроллер домена, который выполняет роль FSMO эмулятора PDC для домена [спасибо Грэм]) для получения информации о времени. Вы можете настроить контроллер домена для получения информации из некоторого известного источника, такого как time.windows.com.


3
Если вы можете это организовать, я настоятельно рекомендую использовать пул серверов NTP, поскольку он позволит вам иметь доступ к нескольким источникам времени, а распределение нагрузки будет приятным. См. Pool.ntp.org для использования.
Эйвери Пейн

2
Просто хочу уточнить, что в среде Windows не только «один из» контроллеров домена берет на себя роль NTP-сервера для всех членов домена, это, в частности, контроллер домена, который выполняет роль FSMO эмулятора PDC для домена. Вы должны настроить этот DC для синхронизации с NTP-сервером в пуле, а все остальные компьютеры, присоединенные к домену, включая все другие DC в домене, будут автоматически синхронизироваться с этим DC.
ThatGraemeGuy

9

И представлять толпу виртуальных машин ...

Если вы работаете с виртуальными серверами , смещение времени кажется распространенной проблемой - и поэтому обычно есть способ (кроме NTP) синхронизировать виртуальные машины с их хостом.

В моем случае я использую VMWare. Я могу включить это из виртуальной машины Linux с помощью:

vmware-guestd --cmd "vmx.set_option synctime 0 1"

А из виртуальной машины Windows вы можете открыть значок vmware-tools на панели задач и выбрать синхронизацию времени между виртуальной машиной и операционной системой хоста.


2
На самом деле, вы не хотите этого делать. Я разместил довольно сложный ответ ниже. Вкратце: vmware-tools SyncTime сломан, и ntp - это путь.
wzzrd

1
vmware теперь рекомендует использовать ntpd на виртуальных машинах вместо этого
Alex J

6

VMwareTools SyncTime не является хорошим вариантом для виртуальных машин на ESX! VMware сама изменила свои рекомендации по хронометражу в ВМ на использование NTP вместо vmware-tools, если у вас возникли проблемы.

Однажды я говорил об этом с инженером из VMware из VMworld, и мне сказали, что vmware-tools никогда не был предназначен для работы, которую он выполняет сейчас. В старые времена потеря прерываний была большой проблемой. Сегодня намного меньше. По этой причине vmware-tools может скорректировать время вашей машины, если машина отстает, но не когда она впереди. Фактически, когда машина опережает «реальное» время, вы в значительной степени облажались, если используете vmware-tools для ведения хронометража.

Еще лучше: при использовании ntp процесс, который корректирует ваше время, на самом деле просыпается реже по сравнению с использованием vmware-tools. Таким образом, для виртуальных машин ntp обеспечит меньшие издержки вместо больших.

Поэтому для Linux вы всегда должны использовать ntp в виртуальных машинах VMware. Полностью отключите синхронизацию vmware-tools.

Для Windows VM на Vmware я менее уверен, но я думаю, что это почти то же самое. Используйте встроенные средства синхронизации времени в AD, которые работают лучше, чем VMware SyncTime. (Даже несмотря на то, что синхронизация времени AD отстой сама по себе довольно плоха; единственная причина существования заключается в том, чтобы синхронизировать Windows Boxen с их контроллерами домена, и Kerberos будет работать, пока разница в тактах составляет менее 5 минут, поэтому меньше нужно для точности.)

Подробнее о синхронизации времени VMware в Linux вы можете прочитать здесь



4

NTP твой друг.

RHEL / CentOS:

yum install ntpd

Debian / Ubuntu:

apt-get install ntpd

Окна:

  • Для Windows 2000 : Tardis 2000 . Работает хорошо, поставляется с панелью управления. Если вы используете это, обязательно отключите службу времени Windows.
  • Для Windows 2003/2008 : уже упоминалось в других ответах на этот вопрос. Кроме того, вы можете запустить Tardis 2000 на коробке 2k3, я не знаю, работает ли она на 2k8.
  • Для любой рабочей станции Windows : выполните следующую команду при входе в систему: net time /domain:your-domain-here

Для всех услуг NTP:

Направьте ваш сервис на pool.ntp.org, хотя вам захочется как минимум сузить его до того же континента. Например, американские серверы будут использовать 0.us.pool.ntp.org, 1.us.pool.ntp.org, 2.us.pool.ntp.org и т. Д.


3

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

  1. Синхронизировать отдельные машины с общедоступным хостом, т.е. pool.ntp.org
  2. Назначьте локального мастера (с вышестоящим NTP) и синхронизируйте все остальное с ним
  3. Локальный мастер с вашим собственным GPS hw (может быть $$$)

Если у вас много машин, варианты 2 и 3 намного удобнее для сети. Для получения более подробной информации читайте о NTP и стратах часов .

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

http://www.softpedia.com/get/System/System-Miscellaneous/Internet-Time-Update.shtml http://www.tweakxp.com/article36948.aspx


2

Хороший NTP сервер, в основном. Настройте его так, чтобы часы не дрейфовали более нескольких секунд с момента последней синхронизации NTP, и у вас не должно возникнуть никаких проблем.

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

ВНИМАНИЕ, что вы можете пропустить минуты, если настроите его на периодическую синхронизацию (ntpdate) и не будете использовать демон NTP (ntpd) - если вы отстаете от 3 секунд, а синхронизация NTP пытается обновить через 10 минут 58 секунд , он будет пропущен до 11 минут 1 секунда, и в зависимости от используемого вами планировщика может не запускать 11 минутные задачи.

Демон NTP работает в фоновом режиме и медленно фиксирует время, поэтому программы и процессы замечают, что время может идти немного быстрее или медленнее, чем обычно, но оно не пропустит секунду.

-Адам


1

NTP-сервер - это то, что нужно для синхронизации времени на вашем DC, да. Прочтите эту статью для получения инструкций о том, как синхронизировать ваш DC с внешним источником , и эту статью базы знаний о том, как настроить авторитетный сервер времени с Windows 2003. Вам понадобится и то и другое, чтобы синхронизировать время вашего домена. Рабочие станции, подключенные к домену, автоматически синхронизируются с авторитетным сервером времени.


0

Используйте общий источник часов для всех ваших серверов и убедитесь, что ваши часовые пояса настроены правильно. Хороший интернет-источник - "time.windows.com". Если вы используете Windows, вы можете использовать «net time» и «w32tm» для команд, связанных со временем.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.