У меня есть несколько виртуальных машин Ubuntu, работающих на сервере Hyper-V. Сервер - это машина с Windows 2012r2. Виртуальные машины Ubuntu - это либо Ubuntu 14.04, либо Ubuntu 16.04 (текущие выпуски LTS).
Кажется, что при первом включении виртуальных машин они часто имеют временную метку на несколько дней в будущем. Это можно увидеть в системном журнале. Системное время корректируется после установления сетевого подключения и запуска NTP.
Почему виртуальные машины, работающие под Hyper-V, начинаются с даты на несколько дней вперед?
Хост-сервер Hyper-V подключен к ИБП, поэтому имеет очень долгое время безотказной работы. В настоящее время указаны правильная дата и время. Он настроен на использование сервера 0.uk.pool.ntp.org в качестве источника времени. ADDC и DC в моей сети также действуют как серверы времени для большинства клиентских машин. Оба они имеют правильное время и дату в настоящее время. Оба они также настроены на использование нескольких серверов .pool.ntp.org в качестве справочника. w32tm /query /peers
подтверждает настройки на всех трех машинах.
На этот раз ошибка при запуске вызывает проблемы и с моими записями DNS для виртуальных машин. Когда система Ubuntu запускается, она получает IPv4-адрес с резервированием DHCP. Моя сеть в настоящее время раздает 8-дневные бронирования. Иногда ошибка даты включения настолько велика, что кажется, что резервирования были запрошены в будущем, после текущей даты. Когда я смотрю на /var/lib/dhcp/dhclient.eth0.leases
дата изменения файла - несколько дней вперед. Это, похоже, заставляет DHCP-клиент Ubuntu думать, что у него есть резервирование, которое действует до даты, которая наступит через несколько дней. Затем клиент не резервирует (или не обновляет) новый IP-адрес через DHCP, и его записи DNS истекают на стороне сервера.
Убедитесь, что вы используете правильный часовой пояс в Ubuntu. Вы также можете установить интеграцию HyperV для Linux. В диспетчере Hyper-V в настройках виртуальной машины в разделе «Управление»> «Службы интеграции» вы можете проверить «Синхронизацию времени»;
Удачи!!
Основываясь на моем опыте: (Каждая) ОС на физической машине сначала получает время от аппаратных часов на материнской плате. После загрузки включается клиент ntp и может корректировать время на основе информации с сервера ntp. Итак: виртуальные машины Linux должны сначала получать время с узла HyperVM, а позже ntp может изменить время. Проверьте настройки в конкретной виртуальной машине под названием «Службы интеграции». Есть услуга «Синхронизация времени». Он контролирует, разделяет ли аппаратный хост время с виртуальной машиной. Помогает синхронизировать время.