5

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

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

До сих пор я смотрел на:

  • Docker - связывает свои часы с аппаратными часами хоста, привилегии - это одна проблема, но главная проблема заключается в том, что если часы меняются, все часы, работающие во всех виртуальных машинах на этом хосте, меняются.

  • VirtualBox - этот ответ предполагает, что даже с гостевыми дополнениями отсутствие часов с высоким разрешением сделало бы это невозможным.

Существует ли какое-либо программное обеспечение, которое может виртуализировать аппаратные часы для NTP или иным образом запускать независимые часы на одном компьютере в одно и то же время?

3 ответа3

3

Не ясно, если вы заинтересованы в

  • как ntp ведет себя при некоторых обстоятельствах.

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

Если вы просто заинтересованы в первом, посмотрите ntpdsim. Это часть эталонной реализации ntp:

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

Если вы заинтересованы в последующем, используйте ntpdsim, чтобы увидеть, как ваши ntp-серверы будут реагировать на изменения. Затем возьмите эту информацию и используйте cronjob или что-то подобное, чтобы изменить часы на вашем vms в соответствии с информацией, которую вы узнали из запусков ntpdsim ...

https://www.eecis.udel.edu/~mills/ntp/html/ntpdsim_new.html

2

Документация Red Hat предполагает, что по крайней мере один из гипервизоров libvirt поддерживает настраиваемые источники синхронизации (или, по крайней мере, настраиваемые смещения): https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Administration_Guide/sect- Виртуализация-Tips_and_tricks-Libvirt_Managed_Timers.html

KVM является одним из гипервизоров libvirt, и по крайней мере один человек описывает случайную десинхронизацию: https://unix.stackexchange.com/q/83934/63149

(Извиняюсь за форматирование - я на мобильном и изначально намеревался просто оставить это как комментарий!)

0

Как сказал RJHunter, вполне возможно, чтобы NTP работал на нескольких экземплярах KVM, однако, вероятно, он не будет очень точным.

Эта ссылка входит в подробности о KVM.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .