Как вы справляетесь с дрейфом времени сервера?
Сетевой протокол времени или NTP можно использовать для синхронизации времени на сервере с официальным источником. Серверы Windows, например, будут использовать один из контроллеров сетевого домена (DC, который выполняет роль FSMO эмулятора PDC для домена [спасибо Грэму]) для получения информации о времени. Ты можешь настроить контроллер домена для получения информации из известного источника, например time.windows.com.
И чтобы представить толпу виртуальных машин ...
Если ты бежишь виртуальные серверыдрейф времени кажется распространенной проблемой - и поэтому обычно есть способ (кроме NTP) поддерживать синхронизацию виртуальных машин с их хостом.
В моем случае я использую VMWare. Я могу включить это с виртуальной машины Linux, используя:
vmware-guestd --cmd "vmx.set_option synctime 0 1"
А с виртуальной машины Windows вы можете открыть vmware-инструменты значок на панели задач и выберите синхронизация времени между виртуальной машиной и ОС хоста
VMwareTools SyncTime - не лучший вариант для виртуальных машин на ESX! Сама VMware изменила свои рекомендации по хронометрированию на виртуальных машинах на использование NTP вместо vmware-tools в случае возникновения проблем.
Однажды я говорил об этом с инженером из VMware в VMworld, и мне сказали, что vmware-tools никогда не предназначались для выполнения той работы, которую она выполняет сейчас. Раньше потеря прерывания была большой проблемой. Сегодня намного меньше. Это причина, по которой vmware-tools может корректировать время вашей машины, если машина отстает, но не когда машина впереди. Фактически, если машина опережает «реальное» время, вы в значительной степени облажаетесь, если используете vmware-tools для хронометража.
Еще лучше: при использовании ntp процесс, который корректирует ваше время, на самом деле просыпается реже, чем при использовании vmware-tools. Итак, для виртуальных машин ntp предоставит Меньше накладные расходы вместо большего.
Поэтому для Linux вам следует всегда использовать ntp в виртуальных машинах VMware. Полностью отключите vmware-tools synctime.
Для виртуальных машин Windows на Vmware я менее уверен, но думаю, что это почти то же самое. Используйте встроенную функцию синхронизации времени в AD, которая работает лучше, чем VMware SyncTime. (Несмотря на то, что синхронизация времени AD сама по себе отстой; единственная причина существования - поддерживать синхронизацию Windows boxen с их контроллерами домена, и Kerberos все равно будет работать, пока разница часов составляет менее 5 минут, так что есть много меньшая потребность в точности.)
Вы можете прочитать о синхронизации времени VMware в Linux немного подробнее. Вот
Используйте демон NTP.
NTP твой друг.
RHEL / CentOS:
yum install ntpd
Debian / Ubuntu:
apt-get install ntpd
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 и т. Д.
Как многие ответили, NTP - это правильный путь. В зависимости от ваших потребностей и требований существует несколько возможных вариантов, которые вы можете использовать для синхронизации времени.
Если у вас много машин, варианты 2 и 3 намного удобнее для сети. Для получения дополнительной информации прочтите о NTP и часовые слои.
Кроме того, я обнаружил, что интервал синхронизации по умолчанию в Windows слишком велик (раз в неделю), что приводит к слишком большому смещению. Вы должны проверить следующее, если хотите установить более короткий период (я использую один раз в день).
http://www.softpedia.com/get/System/System-Miscellaneous/Internet-Time-Update.shtml http://www.tweakxp.com/article36948.aspx
В основном хороший NTP-сервер. Настройте его так, чтобы часы не сдвигались более чем на несколько секунд с момента последней синхронизации NTP, и у вас не должно быть никаких проблем.
Если ваш сервер дрейфует более 30 секунд в день, возможно, вы захотите найти лучшие альтернативы, но часы на большинстве компьютеров обычно намного лучше, чем 30 секунд в день, поэтому обычно достаточно одной синхронизации в день.
ВНИМАНИЕ, что вы можете пропустить минуты, если вы настроите его на периодическую синхронизацию (ntpdate) и не используете демон NTP (ntpd) - если вы отстаете от 3 секунд, а синхронизация NTP пытается обновить через 10 минут 58 секунд , он перейдет к 11 минутам 1 секунде и, в зависимости от используемого вами планировщика, может не запускать 11-минутные задачи.
Демон NTP работает в фоновом режиме и медленно фиксирует время, поэтому программы и процессы замечают, что время может идти немного быстрее или медленнее, чем обычно, но не пропускает секунду.
-Адам
Сервер NTP - это то, что нужно для синхронизации времени на вашем DC, да. Прочтите эту статью, чтобы узнать, как синхронизировать ваш DC с внешним источником, и эта статья базы знаний о том, как настроить авторитетный сервер времени с Windows 2003. Вам потребуется и то, и другое, чтобы синхронизировать время вашего домена. Рабочие станции, подключенные к домену, автоматически синхронизируются с официальным сервером времени.
Используйте общий источник часов для всех ваших серверов и убедитесь, что ваши часовые пояса настроены правильно. Хороший источник в Интернете - "time.windows.com". Если вы используете Windows, вы можете использовать «net time» и «w32tm» для команд, связанных со временем.