De nombreux systèmes logiciels qui dépendent d'un séquençage minutieux des événements reposent sur une horloge système stable et cohérente. Ils utilisent des journaux système avec des horodatages pour assurer la synchronisation horaire et résoudre les problèmes au fur et à mesure qu'ils se produisent. Pour que les horloges système restent synchronisées, les instances de machine virtuelle (VM) Compute Engine sont préconfigurées pour utiliser le protocole NTP (Network Time Protocol), une solution groupée de matériel et de logiciels de synchronisation horaire. Si la synchronisation horaire précise et la surveillance de sa précision sont importantes pour atteindre vos objectifs, vous pouvez configurer l'heure précise au lieu du protocole NTP pour synchroniser l'horloge de votre VM avec l'horloge hôte à l'aide de chrony et ptp_kvm. Cette configuration est conçue pour atteindre une précision de 1 ms dans les configurations compatibles.
Types de machines compatibles
Les types de machines suivants sont compatibles avec l'heure précise :
Systèmes d'exploitation compatibles
Les systèmes d'exploitation suivants sont compatibles avec l'heure précise :
| OS | Versions | Images |
|---|---|---|
| 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 |
| 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 |
Zones compatibles
Les zones suivantes sont compatibles avec l'heure précise :
| Zone | Emplacement |
|---|---|
europe-west1-b |
Saint-Ghislain, Belgique, Europe |
europe-west1-c |
Saint-Ghislain, Belgique, Europe |
europe-west2-b |
Londres, Angleterre, Europe |
europe-west3-a |
Francfort, Allemagne, Europe |
us-central1-a |
Council Bluffs, Iowa, Amérique du Nord |
us-central1-b |
Council Bluffs, Iowa, Amérique du Nord |
us-central1-c |
Council Bluffs, Iowa, Amérique du Nord |
us-central1-f |
Council Bluffs, Iowa, Amérique du Nord |
us-east1-b
|
Moncks Corner, Caroline du Sud, Amérique du Nord |
us-east1-c
|
Moncks Corner, Caroline du Sud, Amérique du Nord |
us-east4-c |
Ashburn, Virginie, Amérique du Nord |
us-east5-a |
Columbus, Ohio, Amérique du Nord |
us-south1-a |
Dallas, Texas, Amérique du Nord |
us-west1-b |
The Dalles, Oregon, Amérique du Nord |
us-west2-a
|
Los Angeles, Californie, Amérique du Nord |
us-west3-a |
Salt Lake City, Utah, Amérique du Nord |
Configurer la synchronisation horaire précise
Pour configurer la synchronisation horaire précise pour les VM de votre projet, effectuez les tâches suivantes pour chaque VM :
- Configurez
chronypour qu'il utiliseptp-kvmcomme source de temps. - Configurez l'agent Cloud de Confiance Ops pour la collecte et l'analyse des données.
Une fois les deux tâches effectuées, la synchronisation horaire précise est configurée pour les VM de votre projet.
Pour obtenir un exemple de script qui crée une VM et effectue les deux tâches pour configurer la synchronisation horaire précise, consultez le script de création de VM sur GitHub.
Configurer chrony pour qu'il utilise ptp-kvm
Pour configurer chrony afin qu'il utilise ptp-kvm comme source de temps, exécutez le
script suivant dans chacune des VM de votre Cloud de Confiance projet :
Configurer Cloud de Confiance l'agent Ops sur votre VM
Pour configurer Cloud de Confiance l'agent Ops pour la collecte et l'analyse des données, exécutez le script suivant dans chacune des VM de votre Cloud de Confiance projet :
Configurer la surveillance de la synchronisation horaire
Pour configurer la surveillance de la synchronisation horaire pour les Cloud de Confiance VM de votre projet, exécutez le script de configuration de la journalisation et du tableau de bord pour votre Cloud de Confiance projet. Ce script vous aide à effectuer les tâches suivantes pour votre Cloud de Confiance projet :
- Il définit les autorisations appropriées sur le compte de service associé au projet Cloud de Confiance de vos VM.
- Il crée une métrique basée sur les journaux que
chronyutilise pour garantir la précision entre les horloges de la VM et de son serveur hôte. - Il crée un tableau de bord mesurant la traçabilité de l'horloge de la VM par rapport à l'UTC en combinant les métriques suivantes :
- La précision de l'horloge hôte de la VM par rapport à l'UTC, disponible en tant que
Cloud de Confiance métrique,
instance/clock_accuracy/ptp_kvm/nanosecond_accuracy. - Les métriques
chronymesurant la précision de l'horloge de la VM par rapport à l'horloge de son hôte.
- La précision de l'horloge hôte de la VM par rapport à l'UTC, disponible en tant que
Cloud de Confiance métrique,
Pour effectuer les tâches précédentes, exécutez le script suivant :
Une fois le script exécuté, utilisez le tableau de bord qu'il a créé pour afficher les données de précision de l'horloge des VM de votre projet.
Étape suivante
- Pour obtenir un exemple de code complet permettant de configurer l'heure précise, y compris des exemples Google Kubernetes Engine, consultez le dépôt d'exemples.
- Passez en revue les options disponibles pour configurer la synchronisation horaire de votre VM.