Синхронизация времени для контроллеров домена, виртуализированных через Hyper-V

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

То, что Вы хотите сделать, составляет ужасную угрозу безопасности, но это уже подразумевается, когда Вы работаете с PHP, таким образом, я просто упомяну это кратко здесь и замолчу об этом.

Можно позволить каждому из пользователей отредактировать его собственный файл. Вы присваиваете имя файла каждому пользователю и предоставляете им некоторый доступ к нему так, они могут отредактировать его. Но так же, как crontab обеспечивает возможность обновить ее таблицу, когда Вы делаете crontab -e, необходимо будет обеспечить некоторую функциональность для обновления списка crontab, после того как пользователь закончил редактировать свой файл. Вы могли обеспечить CGI или Сценарий PHP, чтобы сделать это от их браузера, если Вы хотите.

Этот сценарий должен будет объединить все существующие пользовательские файлы в один (cat будет главным образом заботиться об этом, только необходимо удостовериться каждый файл концы с новой строкой), и затем можно использовать crontab <file> обновить объединенный crontab от последней версии объединенного файла.

3
задан 13 July 2011 в 06:15
2 ответа

Самый надежный метод поддержания времени в виртуализированной доменной среде должен сохранить Ваш медосмотр PDC, увеличить частоту синхронизации и допуск дрейфа на всем Вашем виртуализированном DC и доменных участниках, и отключить синхронизацию времени гостя хоста для всех VMs рассматриваемый.

Вот псевдообъяснение проблемы (это было долгое время, так как я посмотрел на это):

Когда машина (рабочая станция, сервер, VM) запускает, это читает время из RTC (микросхема синхрогенератора с аварийным батарейным питанием на материнской плате/BIOS) и разрабатывает продолжительность каждой галочки ЦП. ОС затем считает количество тактов системных часов, которые произошли, так как начальные показания были сняты и добавляют время от этого до исходного времени, читая взятый при начальной загрузке. Это дает Вам текущее время.

Проблема, хосты запутывают истинные такты, происходящие от VMs. VM, возможно, видел 100 тактов, когда 500 тактов на самом деле произошли на хосте. Таким образом, этот метод вычисления времени ломается, и дрейфы времени в неисправном состоянии на VM.

Синхронизация времени гостя хоста через установленные vm пакеты инструментов/улучшений на vSphere и Hyper-V идет некоторым путем к исправлению этого, но они не прекрасны (в некоторых установках, они могут вытянуть VM вперед, если это дрейфовало позади в реальном времени, но они не переходят VM вперед, если это дрейфовало перед в реальном времени).

Это усложнило далее способом, которым такты считаются на многоядерные установки (счетчик синхронизации по существу эмулирован на каждом ядре), и на установках, которые могут изменить тактовые частоты на лету (у меня нет долбаной идеи, как это сохраняется). Фактор в идее, что VM может выполнить один такт на одном ядре, затем перейдите к другому ядру на другой ЦП для следующего цикла, и это становится действительно ужасным.

Таким образом, назад к исходной точке: Доменное время по умолчанию запускается в PDC, затем сочится вниз к другому DCS, затем к рядовым серверам и рабочим станциям оттуда. Таким образом, если Вы удостоверитесь, что Ваш PDC является действительно надежным источником времени (путем сохранения этого физическим), и отключите синхронизацию гостя хоста на всех других доменных участниках, то Вы гарантируете стабильную и относительно точную инфраструктуру времени.

Обратите внимание, что, выполняя Ваш PDC, поскольку физический сервер, затем разрешающий Hyper-V на том сервере и добавляющий некоторых гостей к нему, является, вероятно, не подходящей фиксацией также, как я полагаю, что при включении Hyper-V, 'основная' ОС на самом деле становится виртуализированной ОС также (тихо). Поэтому сохраните один физический сервер как PDC и сохраните Hyper-V от поля.

Интересный момент, который необходимо отметить, стороны: официальная позиция Microsoft по Windows Time Synchronization, даже с помощью совместимого сервиса NTP, это было встроено в Windows начиная с XP/2003, составляет 15 секунд. На практике можно свалить его к sub-100ms, но все, что они будут поддерживать, является синхронизацией к в течение 15 секунд. Отчасти имеет смысл, единственным чувствительным ко времени ключевым компонентом в ядре большинства сред MS является Kerberos, и по умолчанию это будет работать счастливо, пока Вы в рамках 5-минутного допуска.

1
ответ дан 3 December 2019 в 06:44

Да. Не выключайте синхронизацию ЗА ИСКЛЮЧЕНИЕМ одного сервера, который на самом деле является также физическим контроллером домена.

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

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

Это не очень точный BTW - окна никогда не. Это только синхронизирует к очень плохой степени точности. У меня есть другая машина, которая собирает финансовые данные и синхронизируется к мс к внешнему хосту (средний скос в час: 37 мс согласно статистике) ;) ЭТО точно.

2
ответ дан 3 December 2019 в 06:44

Теги

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