Почему свободное время моего сервера EC2 на ~10 секунд каждый день?

Я имею то, чему я верю, системный файл, /etc/cron.daily/ntpupdate который работает
ntpdate ntp.ubuntu.com ежедневно синхронизировать с сетевым временем. Каждый день это генерирует вывод, очень похожий на это:

/etc/cron.daily/ntpupdate:
16 Jan 06:30:42 ntpdate[21446]:
step time server 91.189.94.4 offset -12.646804 sec

Я не положителен что 91.189.94.4 средства, но я вполне уверен -12.646804 sec средства, что мой сервер выключен приблизительно на 12 секунд. Но я не знаю, почему это выключено приблизительно той же суммой каждый день. Это - экземпляр Amazon EC2 под управлением Ubuntu.

Я могу только предположить, что или это проигрывает / получение 12 секунд в день, или что-то еще синхронизирует время с другими часами, которые выключены на 12 секунд, и затем я повторно синхронизирую его.

Что я должен сделать, чтобы попытаться разыскать это далее? Я не вижу никаких других заданий крона в /etc/cron.* каталоги или в заданиях крона пользователей...

ОБНОВЛЕНИЕ

Просто мысль, я совместно использовал бы это, я начал выполнять это каждый час, чтобы видеть, будет ли большой переход в определенный час. Это - каков почасовый вывод:

16 Jan 15:17:04 ntpdate[8346]:
adjust time server 91.189.94.4 offset -0.464418 sec

Так, по-видимому, каждый час часы выключены приблизительно на половину секунды, так, чтобы имел смысл, что каждый день (24 часа) часы были бы выключены приблизительно на 12 секунд. Угадайте, что часы просто работают быстро!Спасибо!

12
16.01.2012, 23:09
3 ответа

Существует много факторов, которые могли бы заставить часы программного обеспечения отставать или убегать. Отмечает время прихода на работу виртуальные серверы особенно подвержены целому классу этих проблем. 12 секунд в день довольно плохи, пока Вы не сталкиваетесь с виртуальными полями с часами, которые достигают на 180-200%-й скорости! Отмечает время прихода на работу ноутбуки, которые приостанавливают, может пострадать от хронометрирования проблем также.

Необходимо рассмотреть отбрасывание ntupdate в пользу ntpd. Имя пакета ntp на Debian (и по-видимому Ubuntu также). Демон NTP сохраняет Ваше время в синхронизации намного больше заранее, чем задание крона, синхронизирующееся с одним или несколькими другими серверами NTP и сохраняющее Ваши часы намного более точный. Это - другая реализация того же протокола ntpdate использование, кроме ntpd контролирует время непрерывно.

Если Вы не хотите (очень маленькие) издержки ntpd, Вы могли бы рассмотреть выполнение ntpdate раз в час. Принятие Вы - 0,5 с от каждого часа, который должен быть достаточным.

13
27.01.2020, 19:56
  • 1
    Вопросы виртуальной машины могут также быть в основном решены путем выполнения ядра без галочки (CONFIG_NO_HZ). Не уверенный, если бы это возможно с ядром человечности, или если необходимо было бы создать собственное. –  Patrick 16.01.2012, 16:53
  • 2
    я просто проверил конфигурацию ядра на (3.0.0-14-универсальной) установке Ubuntu 11, и это определенно, имеет CONFIG_NO_HZ включенный. –  Alexios 16.01.2012, 17:33

Ответ на другую половину вопроса, на том, почему это происходит: часы Компьютерного оборудования известно неточны, поэтому в то время как дрейф 12 секунд за день необычен, это не действительно все что необычный.

(Это, вероятно, из-за распространенности использования сетевого времени, так, чтобы дрейф даже 12 секунд в день был незначительным раздражением по сравнению с тем, чем это было бы в часах - и таким образом компании-производители оборудования могут использовать дешевые микросхемы синхрогенератора. Физически, что происходит, вероятно, что осциллятор в Вашей микросхеме синхрогенератора не калибруется совершенно верно, таким образом, это работает немного-но-надежно медленный.)

0
27.01.2020, 19:56

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

Проверьте Вас конфигурация на минимальный порог для синхронизации.

-1
27.01.2020, 19:56
  • 1
    Это не верно. Наоборот, NTP пытается уменьшить различие так, как это может. В другом направлении существует порог: NTP не обновит часы, если различия будут слишком значительными (это подозревает неверную конфигурацию, например, неправильный часовой пояс). –  Gilles 'SO- stop being evil' 16.01.2012, 21:48

Теги

Похожие вопросы