Bei der Virtualisierung von Computern ticken die Uhren etwas anders. Diese Aussage kann durchaus wörtlich genommen werden und zeigt bereits ein grundlegendes Problem auf.
Virtualisiert man Computer, so sollte sichergestellt werden, das diese virtuellen Maschinen oder Gäste regelmäßig ihre Systemzeit überprüfen und ggf. anpassen. Gesetzt den Fall das die Systemzeit einer virtuellen Maschine nicht mit dem Rest des Netzwerkes übereinstimmt, so können Probleme bei der Kommunikation auftreten. Beispielsweise kann bei zu großer Differenz eine Anmeldung verweigert werden.
Windows versucht per Standard mittels NTP einen Abgleich mit dem Server “time.windows.com” einmal pro Woche. In einem Domänen-Netzwerk übernimmt das der Domänencontroller, der die FSMO-Rolle “PDC-Emulator” inne hat und gilt als Zeitgeber für alle Domänen-Mitglieder.
Unter Hyper-V wird per Standard über die Integrationsdienste die Zeit mit dem Host-System synchronisiert. Zu erkennen ist das unter anderem an dem gestarteten Dienst “Hyper-V-Dienst für Zeitsynchronisation”, als auch im Hyper-V-Manager in den Einstellungen des virtuellen Computers unter “Integrationsdienste” als auch in der Eingabeaufforderung mit dem Befehl
w32tm /query /source
Dieser Befehl gibt unter Windows Server 2008 R2 als Ergebnis
Local CMOS Clock
aus, sofern die interne Uhr verwendet wird oder eine entsprechend konfigurierte andere Zeitquelle. So sieht sie Ausgabe bei einem virtualisierten Windows Server 2012 R2 wie folgt aus:
VM IC Time Synchronization Provider
Unter VMware ist per Standard die Zeitsynchronisation über die VMware Tools deaktiviert, so das eine Abfrage “Local CMOS Clock” ergibt und Windows wiederum per NTP die Zeit abgleicht.
Ein sofortiges Aktualisieren lässt sich mit folgenden Befehl auslösen:
w32tm /resync /nowait
Dies kann notwendig sein, wenn man die Zeitquelle geändert hat oder im Fehlerfall möglichst schnell die Zeit wieder synchron haben möchte.
Hilfreiche Links
Faq-O-Matic: Virtuelle DCs – Zeitprobleme vermeiden
Faq-O-Matic: Zeitsynchronisation in virtuellen Umgebungen
TechNet: Ausführen von Domänencontrollern in Hyper-V (Abschnitt “Zeitdienst”)
TechNet: Konfigurieren des Windows-Zeitdiensts
TechNet: Time Services for a Domain Controller on Hyper-V
Synchronize time with external NTP server on Windows Server 2008 (R2)
Persönliche Erfahrungen
Bislang sind an uns Zeit-Synchronisations-Probleme weitestgehend vorübergegangen. Aktuell kam es kurz vor Weihnachten bei einem Kunden zu der Situation, das die Integrationsdienste eines unter Hyper-V virtualisierten Windows Server 2008 R2 die Systemzeit nicht mehr abglichen und damit nicht nur die Uhrzeit dieses Servers, sondern auch der gesamten Arbeitsplätze (es handelte sich um den einzigen Domänencontroller im gesamten Netzwerk) um exakt 30 Minuten vorgingen.
Abhilfe schaffte das Neustarten des Dienstes “Hyper-V-Dienst für Zeitsynchronisation” im betroffenen virtuellen Computer als auch das De-/Aktivieren von “Zeitsynchronisation” in den Einstellungen des betroffenen virtuellen Computers im Hyper-V Manager.
Die einzige sonst falsch laufende Uhr an die ich mich entsinnen kann, war vor längerer Zeit mal unter ArchivistaVM, aber das ist schon lange her.