Wenn Gäste falsch ticken

Ich verwenden einen AMD Athlon(tm) 64 X2 Dual Core Processor 6000+ als Triebwerk für einen meiner Server, welcher als VMware-Host unter Debian fungiert. Die virtuellen Gäste des Systems haben allerdings allesamt ein Problem mit Ihrer Uhrzeit. Innerhalb weniger Stunden kommt es schnell zu einer Zeitverschiebung, die von einigen Stunden bis hin zu Tagen reichen kann. Für ein zuverlässiges Serversystem ist das natürlich kein Zustand.

Die Ursache liegt offensichtlich in der Energieverwaltung (APM) des Host-Systems, welche die Taktrate des Prozessors entsprechend der Auslastung anpasst.

Die Lösungsansätze sind vielfältig:

VMware die Taktrate des Prozessors mitteilen

1
2
3
4
5
6
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling\_max\_freq


host.cpukHz = 1700000
host.noTSC = TRUE
ptsc.noTSC = TRUE

Intervallweises Update der Gast-Zeit

Um die Uhrzeit des Gastes periodisch mit der Uhrzeit des Hosts zu synchronisieren müssen die VMware Tools im Gast-System installiert und dort die Option "Time synchronization between the virtual machine and the host operating system" aktiviert sein.

Energieverwaltung deaktivieren

1
cat /sys/devices/system/cpu/cpu\*/cpufreq/scaling\_governor

ondemand : Je nach Auslastung des Servers wird der Prozessortakt erhöht oder abgesenkt.

powersafe : Wie der Name schon sagt wird hier möglichst Stromsparend gearbeitet.

performance : Der Prozessor läuft immer mit vollem Takt und führt keine Taktanpassung durch.

Dazu fügen wir als Kernel-Parameter apm=off hinzu.

Ergänzend, falls obiges nicht hilft: acpi=off noapic