Viele Softwaresysteme, die von einer sorgfältigen Sequenzierung der Ereignisse abhängen, verlassen sich auf eine stabile, konsistente Systemuhr. Sie verwenden Systemprotokolle mit Zeitstempeln, um die Zeitsynchronisierung zu gewährleisten und Fehler zu beheben, sobald sie auftreten. Um die Systemuhren synchron zu halten, sind Compute Engine-VM-Instanzen zur Verwendung von NTP (Network Time Protocol) vorkonfiguriert. NTP ist eine gebündelte Lösung aus Hardware und Software zur Zeitsynchronisierung. Wenn eine genaue Zeitsynchronisierung und die Überwachung der Genauigkeit Ihrer Zeitsynchronisierung für Ihre Ziele wichtig sind, können Sie anstelle von NTP Genaue Zeit konfigurieren, um die Uhr Ihrer VM mit der Hostuhr zu synchronisieren. Verwenden Sie dazu chrony und ptp_kvm. Diese Konfiguration ist darauf ausgelegt, bei unterstützten Setups eine Genauigkeit von 1 ms zu erreichen.
Unterstützte Maschinentypen
Die folgenden Maschinentypen unterstützen die genaue Zeit:
Unterstützte Betriebssysteme
Die folgenden Betriebssysteme unterstützen eine genaue Zeit:
| Betriebssystem | Versionen | Bilder |
|---|---|---|
| CentOS Stream | 9 | centos-stream-9 |
| Container-Optimized OS | COS 105 LTS, COS 109 LTS, COS 113 LTS, COS 117 LTS | cos-105-lts, cos-109-lts, cos-113-lts, cos-117-lts |
| Debian | 11 (Bullseye), 12 (Bookworm) | debian-11, debian-12 |
| Logo: Fedora Cloud | 39 | fedora-cloud-39 |
| RHEL | 8, 9 | rhel-8-4-sap-ha, rhel-8-6-sap-ha, rhel-8-8-sap-ha, rhel-8-10-sap-ha, rhel-9, rhel-9-0-sap-ha, rhel-9-2-sap-ha, rhel-9-4-sap-ha |
| Rocky Linux | 8, 9 | rocky-linux-8, rocky-linux-8-optimized-gcp, rocky-linux-9-optimized-gcp, rocky-linux-9-optimized-gcp |
| SLES | 15 | sles-15, sles-15-sp2-byos, sles-15-sp2-sap, sles-15-sp3-byos, sles-15-sp3-sap, sles-15-sp4-byos, sles-15-sp4-sap, sles-15-sp5-byos, sles-15-sp5-sap |
| Ubuntu | 22.04 LTS (Jammy Jellyfish), 24.04 LTS (Noble Numbat) | ubuntu-2204-lts, ubuntu-2404-lts-amd64 |
| Ubuntu Pro | 2004 | ubuntu-pro-2004-lts, ubuntu-pro-2004-lts-amd64 |
Unterstützte Zonen
In den folgenden Zonen wird die genaue Zeit unterstützt:
| Zone | Standort |
|---|---|
europe-west1-b |
St. Ghislain, Belgien, Europa |
europe-west1-c |
St. Ghislain, Belgien, Europa |
europe-west2-b |
London, England, Europa |
europe-west3-a |
Frankfurt, Deutschland, Europa |
us-central1-a |
Council Bluffs, Iowa, Nordamerika |
us-central1-b |
Council Bluffs, Iowa, Nordamerika |
us-central1-c |
Council Bluffs, Iowa, Nordamerika |
us-central1-f |
Council Bluffs, Iowa, Nordamerika |
us-east1-b
|
Moncks Corner, South Carolina, Nordamerika |
us-east1-c
|
Moncks Corner, South Carolina, Nordamerika |
us-east4-c |
Ashburn, Virginia, Nordamerika |
us-east5-a |
Columbus, Ohio, Nordamerika |
us-south1-a |
Dallas, Texas, Nordamerika |
us-west1-b |
The Dalles, Oregon, Nordamerika |
us-west2-a
|
Los Angeles, Kalifornien, Nordamerika |
us-west3-a |
Salt Lake City, Utah, Nordamerika |
Genaue Zeitsynchronisierung konfigurieren
Führen Sie die folgenden Aufgaben für jede VM aus, um eine genaue Zeitsynchronisierung für die VMs Ihres Projekts zu konfigurieren:
- Konfigurieren Sie
chronyso, dassptp-kvmals Zeitquelle verwendet wird. - Konfigurieren Sie den Google Cloud Ops-Agent für die Datenerhebung und -analyse.
Nachdem Sie beide Aufgaben erledigt haben, ist die genaue Zeitsynchronisierung für die VMs in Ihrem Projekt eingerichtet.
Ein Beispielskript, mit dem eine VM erstellt und beide Aufgaben zur Konfiguration einer genauen Zeitsynchronisierung ausgeführt werden, finden Sie im VM-Erstellungsskript auf GitHub.
chrony für die Verwendung von ptp-kvm konfigurieren
Führen Sie das folgende Skript auf jeder VM Ihres Google Cloud Projekts aus, um chrony so zu konfigurieren, dass ptp-kvm als Zeitquelle verwendet wird:
Ops-Agent auf Ihrer VM konfigurieren Google Cloud
Führen Sie das folgende Skript auf jeder VM Ihres Google Cloud Projekts aus, um Google Cloud Ops-Agent für die Datenerfassung und -analyse zu konfigurieren:
Monitoring der Zeitsynchronisierung konfigurieren
Wenn Sie die Zeitabgleichsüberwachung für die VMs Ihres Google Cloud-Projekts konfigurieren möchten, führen Sie das Script zum Einrichten von Logging und Dashboard für IhrGoogle Cloud -Projekt aus. Mit diesem Skript können Sie die folgenden Aufgaben für Ihr Google Cloud -Projekt ausführen:
- Damit werden die entsprechenden Berechtigungen für das Dienstkonto festgelegt, das mit dem Projekt Ihrer VMs verknüpft ist. Google Cloud
- Dadurch wird ein logbasierter Messwert erstellt, mit dem
chronydie Genauigkeit zwischen den Uhren auf der VM und dem zugehörigen Hostserver sicherstellt. - Es wird ein Dashboard erstellt, in dem die Rückverfolgbarkeit der VM-Uhrzeit zu UTC anhand der folgenden Messwerte gemessen wird:
- Die Genauigkeit der VM-Hostuhr im Vergleich zu UTC, die alsGoogle Cloud -Messwert verfügbar ist:
instance/clock_accuracy/ptp_kvm/nanosecond_accuracy. - Die
chrony-Messwerte messen die Genauigkeit der VM-Uhr im Vergleich zur Uhr des Hosts.
- Die Genauigkeit der VM-Hostuhr im Vergleich zu UTC, die alsGoogle Cloud -Messwert verfügbar ist:
Führen Sie das folgende Skript aus, um die vorherigen Aufgaben auszuführen:
Nachdem das Skript ausgeführt wurde, können Sie im erstellten Dashboard die Daten zur Taktgenauigkeit für die VMs Ihres Projekts ansehen.
Nächste Schritte
- Vollständigen Beispielcode für die Einrichtung einer genauen Zeit, einschließlich Google Kubernetes Engine-Beispielen, finden Sie im Beispiel-Repository.
- Verfügbare Optionen für die Zeitsynchronisierung der VM