Définissez la référence temporelle sur votre instance EC2 pour utiliser le service Amazon Time Sync local - Amazon Elastic Compute Cloud

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Définissez la référence temporelle sur votre instance EC2 pour utiliser le service Amazon Time Sync local

Le service Amazon Time Sync local utilise le protocole NTP (Network Time Protocol) ou fournit une horloge matérielle PTP (Precision Time Protocol) locale sur les instances prises en charge. L'horloge matérielle PTP prend en charge soit une connexion NTP (instances Linux et Windows), soit une connexion PTP directe (instances Linux uniquement). Les connexions NTP et PTP directes utilisent la même source de temps très précise, mais la connexion PTP directe est plus précise que la connexion NTP. La connexion NTP au service Service de synchronisation temporelle d’Amazon en charge la correction des secondes intercalaires, tandis que la connexion PTP à l’horloge matérielle PTP ne corrige pas le temps. Pour plus d’informations, consultez Secondes intercalaires.

Vos instances peuvent accéder au Service de synchronisation temporelle d’Amazon local comme suit :

  • Via le protocole NTP sur les points de terminaison d’adresses IP suivants :

  • (Linux uniquement) Via une connexion PTP directe pour se connecter à une horloge matérielle PTP locale :

    • PHC0

Les AMI Amazon Linux, les AMI Windows et la plupart des AMI partenaires configurent votre instance pour utiliser le point de terminaison IPv4 NTP par défaut. Il s'agit du paramètre recommandé pour la plupart des charges de travail des clients. Aucune autre configuration n’est requise pour les instances lancées à partir de ces AMI, sauf si vous souhaitez utiliser le point de terminaison IPv6 ou vous connecter directement à l’horloge matérielle PTP.

Les connexions NTP et PTP ne nécessitent aucune modification de configuration VPC et votre instance n’a pas besoin d’accéder à Internet.

Note

Seules les instances Linux peuvent utiliser une connexion PTP directe pour se connecter à l'horloge matérielle PTP locale. Les instances Windows utilisent le protocole NTP pour se connecter à l'horloge matérielle PTP locale.

Connexion au point de terminaison IPv4 du Service de synchronisation temporelle d’Amazon

Cette section décrit comment configurer votre instance pour qu’elle utilise le Service de synchronisation temporelle d’Amazon local via le point de terminaison IPv4.

Utilisez les instructions fournies pour le système d’exploitation de votre instance.

AL2023 et les dernières versions des AMI Amazon Linux 2 et Amazon Linux sont configurées pour utiliser le point de terminaison IPv4 du Service de synchronisation temporelle d'Amazon par défaut. Aucune autre configuration n'est requise pour les instances lancées à partir de ces AMI et vous pouvez ignorer la procédure suivante.

Si vous utilisez une AMI sur laquelle le Service de synchronisation temporelle d’Amazon n’est pas configuré par défaut, utilisez l’une des procédures suivantes pour configurer le Service de synchronisation temporelle d’Amazon sur votre instance à l’aide du client chrony. Cela nécessite d’ajouter une entrée de serveur pour le Service de synchronisation temporelle d’Amazon au fichier de configuration chrony.

Utilisez les instructions fournies pour le système d’exploitation de votre instance.

Amazon Linux
Pour vous connecter au point de terminaison IPv4 du Service de synchronisation temporelle d’Amazon sur Amazon Linux à l’aide de chrony
  1. Connectez-vous à votre instance et désinstallez le service NTP.

    [ec2-user ~]$ sudo yum erase 'ntp*'
  2. Installez le package chrony.

    [ec2-user ~]$ sudo yum install chrony
  3. Ouvrez le fichier /etc/chrony.conf avec un éditeur de texte (tel que vim ou nano). Vérifiez que le fichier contienne la ligne suivante :

    server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4

    Si la ligne est présente, alors le Service de synchronisation temporelle d’Amazon est déjà configuré pour utiliser le point de terminaison IPv4 du Service de synchronisation temporelle d’Amazon et vous pouvez passer à l’étape suivante. Si ce n’est pas le cas, ajoutez la ligne après toute autre instruction server ou pool déjà présente dans le fichier, puis enregistrer les changements.

  4. Relancez le démon chrony (chronyd).

    [ec2-user ~]$ sudo service chronyd restart
    Starting chronyd: [ OK ]
    Note

    Sur RHEL ou CentOS (jusqu’à la version 6), le nom du service est chrony au lieu de chronyd.

  5. Pour configurer chronyd afin de lancer ce service à chaque démarrage système, utilisez la commande chkconfig.

    [ec2-user ~]$ sudo chkconfig chronyd on
  6. Vérifiez que chrony utilise le point de terminaison IPv4 169.254.169.123 pour synchroniser le temps.

    [ec2-user ~]$ chronyc sources -v
    210 Number of sources = 7 .-- Source mode '^' = server, '=' = peer, '#' = local clock. / .- Source state '*' = current synced, '+' = combined , '-' = not combined, | / '?' = unreachable, 'x' = time may be in error, '~' = time too variable. || .- xxxx [ yyyy ] +/- zzzz || Reachability register (octal) -. | xxxx = adjusted offset, || Log2(Polling interval) --. | | yyyy = measured offset, || \ | | zzzz = estimated error. || | | \ MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* 169.254.169.123 3 6 17 43 -30us[ -226us] +/- 287us ^- ec2-12-34-231-12.eu-west> 2 6 17 43 -388us[ -388us] +/- 11ms ^- tshirt.heanet.ie 1 6 17 44 +178us[ +25us] +/- 1959us ^? tbag.heanet.ie 0 6 0 - +0ns[ +0ns] +/- 0ns ^? bray.walcz.net 0 6 0 - +0ns[ +0ns] +/- 0ns ^? 2a05:d018:c43:e312:ce77:> 0 6 0 - +0ns[ +0ns] +/- 0ns ^? 2a05:d018:dab:2701:b70:b> 0 6 0 - +0ns[ +0ns] +/- 0ns

    Dans le résultat retourné, ^* indique la source de temps préférée.

  7. Vérifiez les métriques de synchronisation du temps présentées par chrony.

    [ec2-user ~]$ chronyc tracking
    Reference ID : A9FEA97B (169.254.169.123) Stratum : 4 Ref time (UTC) : Wed Nov 22 13:18:34 2017 System time : 0.000000626 seconds slow of NTP time Last offset : +0.002852759 seconds RMS offset : 0.002852759 seconds Frequency : 1.187 ppm fast Residual freq : +0.020 ppm Skew : 24.388 ppm Root delay : 0.000504752 seconds Root dispersion : 0.001112565 seconds Update interval : 64.4 seconds Leap status : Normal
Ubuntu
Pour vous connecter au point de terminaison IPv4 du Service de synchronisation temporelle d’Amazon sur Ubuntu à l’aide de chrony
  1. Connectez-vous à votre instance et utilisez apt pour installer le package chrony.

    ubuntu:~$ sudo apt install chrony
    Note

    Si nécessaire, mettez d’abord à jour votre instance en exécutant sudo apt update.

  2. Ouvrez le fichier /etc/chrony/chrony.conf avec un éditeur de texte (tel que vim ou nano). Ajoutez la ligne suivante avant toute autre instruction server ou pool déjà présente dans le fichier, puis enregistrer les changements :

    server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4
  3. Redémarrez le service chrony.

    ubuntu:~$ sudo /etc/init.d/chrony restart
    Restarting chrony (via systemctl): chrony.service.
  4. Vérifiez que chrony utilise le point de terminaison IPv4 169.254.169.123 pour synchroniser le temps.

    ubuntu:~$ chronyc sources -v
    210 Number of sources = 7 .-- Source mode '^' = server, '=' = peer, '#' = local clock. / .- Source state '*' = current synced, '+' = combined , '-' = not combined, | / '?' = unreachable, 'x' = time may be in error, '~' = time too variable. || .- xxxx [ yyyy ] +/- zzzz || Reachability register (octal) -. | xxxx = adjusted offset, || Log2(Polling interval) --. | | yyyy = measured offset, || \ | | zzzz = estimated error. || | | \ MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* 169.254.169.123 3 6 17 12 +15us[ +57us] +/- 320us ^- tbag.heanet.ie 1 6 17 13 -3488us[-3446us] +/- 1779us ^- ec2-12-34-231-12.eu-west- 2 6 17 13 +893us[ +935us] +/- 7710us ^? 2a05:d018:c43:e312:ce77:6 0 6 0 10y +0ns[ +0ns] +/- 0ns ^? 2a05:d018:d34:9000:d8c6:5 0 6 0 10y +0ns[ +0ns] +/- 0ns ^? tshirt.heanet.ie 0 6 0 10y +0ns[ +0ns] +/- 0ns ^? bray.walcz.net 0 6 0 10y +0ns[ +0ns] +/- 0ns

    Dans le résultat retourné, sur la ligne commençant par ^*, cela indique la source de temps préférée.

  5. Vérifiez les métriques de synchronisation du temps présentées par chrony.

    ubuntu:~$ chronyc tracking
    Reference ID : 169.254.169.123 (169.254.169.123) Stratum : 4 Ref time (UTC) : Wed Nov 29 07:41:57 2017 System time : 0.000000011 seconds slow of NTP time Last offset : +0.000041659 seconds RMS offset : 0.000041659 seconds Frequency : 10.141 ppm slow Residual freq : +7.557 ppm Skew : 2.329 ppm Root delay : 0.000544 seconds Root dispersion : 0.000631 seconds Update interval : 2.0 seconds Leap status : Normal
SUSE Linux

À partir de SUSE Linux Enterprise Server 15, chrony est l’implémentation par défaut de NTP.

Pour vous connecter au point de terminaison IPv4 du Service de synchronisation temporelle d’Amazon sur SUSE Linux à l’aide de chrony
  1. Ouvrez le fichier /etc/chrony.conf avec un éditeur de texte (tel que vim ou nano).

  2. Vérifiez que le fichier contient la ligne suivante :

    server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4

    Si la ligne n’est pas présente, vous pouvez l’ajouter manuellement.

  3. Placez en commentaire les autres lignes sur le serveur ou le groupe (pool).

  4. Ouvrez yaST et activez le service chrony.

Depuis la version d’août 2018, les AMI Windows utilisent Amazon Time Sync Service par défaut. Aucune autre configuration n’est requise pour les instances lancées à partir de ces AMI et vous pouvez ignorer les procédures suivantes.

Si vous utilisez une AMI sur laquelle le service Amazon Time Sync n'est pas configuré par défaut, vérifiez d'abord votre configuration NTP actuelle. Si votre instance utilise déjà le point de terminaison IPv4 du Service de synchronisation temporelle d’Amazon, aucune autre configuration n’est requise. Si votre instance n’utilise pas le Service de synchronisation temporelle d’Amazon, suivez la procédure pour modifier le serveur NTP afin qu’il utilise le Service de synchronisation temporelle d’Amazon.

Pour vérifier la configuration NTP
  1. Depuis votre instance, ouvrez une fenêtre d’invite de commande.

  2. Obtenez la configuration NTP actuelle en tapant la commande suivante :

    w32tm /query /configuration

    Cette commande renvoie les paramètres de configuration actuels de l’instance Windows et indique si vous êtes connecté au Service de synchronisation temporelle d’Amazon.

  3. (Facultatif) Obtenez l’état de la configuration actuelle en tapant la commande suivante :

    w32tm /query /status

    Cette commande renvoie des informations comme la dernière fois que l’instance s’est synchronisée sur le serveur NTP et l’intervalle d’interrogation.

Pour modifier le serveur NTP pour utiliser Amazon Time Sync Service
  1. A partir d’une fenêtre d’invite de commande, exécutez la commande suivante :

    w32tm /config /manualpeerlist:169.254.169.123 /syncfromflags:manual /update
  2. Vérifiez vos nouveaux paramètres en exécutant la commande suivante :

    w32tm /query /configuration

    Dans la sortie retournée, vérifiez que NtpServer affiche le point de terminaison IPv4 169.254.169.123.

Paramètres du protocole NTP (Network Time Protocol) par défaut pour les AMI Windows Amazon

Amazon Machine Images (AMI) respecte généralement les out-of-the-box valeurs par défaut, sauf dans les cas où des modifications sont nécessaires pour fonctionner sur l'infrastructure EC2. Les paramètres suivants ont été déterminés comme étant efficaces dans un environnement virtuel et permettant de maintenir la dérive d’horloge dans une précision d’une seconde :

  • Intervalle de mise à jour — Détermine la fréquence à laquelle le service horaire ajustera l'heure du système pour qu'elle soit précise. AWS configure l'intervalle de mise à jour pour qu'il se produise toutes les deux minutes.

  • Serveur NTP – Depuis la version d’août 2018, les AMI utilisent le Service de synchronisation temporelle d’Amazon par défaut. Cette fois, le service est accessible depuis n'importe quel point de Région AWS terminaison IPv4 169.254.169.123. De plus, l’indicateur 0x9 indique que le service temporel agit en tant que client et qu’il convient d’utiliser SpecialPollInterval pour déterminer la fréquence à laquelle se signaler auprès du serveur horaire configuré.

  • Type – « NTP » signifie que le service agira comme client NTP autonome et non pas dans le cadre d’un domaine.

  • Activé et InputProvider — Le service horaire est activé et fournit du temps au système d'exploitation.

  • Intervalle d'interrogation spécial — Vérifie par rapport au serveur NTP configuré toutes les 900 secondes (15 minutes).

Chemin de registre Nom de la touche Données

HKL M:\System \ \ services CurrentControlSet \ w32time \ Config

UpdateInterval

120

HKL M:\System \ \ services CurrentControlSet \ w32time \ Parameters

NtpServer

169.254.169.123,0x9

HKL M:\System \ \ services CurrentControlSet \ w32time \ Parameters

Type

NTP

HKL M:\System \ \ services CurrentControlSet \ w32time \ \ TimeProviders NtpClient

Activées

1

HKL M:\System \ \ services CurrentControlSet \ w32time \ \ TimeProviders NtpClient

InputProvider

1

HKL M:\System \ \ services CurrentControlSet \ w32time \ \ TimeProviders NtpClient

SpecialPollInterval

900

Connexion au point de terminaison IPv6 du Service de synchronisation temporelle d’Amazon

Cette section présente les différences avec les étapes décrites dans Connexion au point de terminaison IPv4 du Service de synchronisation temporelle d’Amazon si vous configurez votre instance pour qu’elle utilise le Service de synchronisation temporelle d’Amazon local via le point de terminaison IPv6. Il n’explique pas l’intégralité du processus de configuration Amazon Time Sync Service.

Le point de terminaison IPv6 n'est accessible que sur les instances créées sur le système AWS Nitro.

Note

Nous ne recommandons pas d'utiliser à la fois les entrées de point de terminaison IPv4 et IPv6. Les paquets NTP IPv4 et IPv6 proviennent du même serveur local pour votre instance. La configuration des points de terminaison IPv4 et IPv6 n’est pas nécessaire et n’améliorera pas la précision de l’heure sur votre instance.

Utilisez les instructions fournies pour le système d’exploitation de votre instance.

Selon la distribution Linux que vous utilisez, lorsque vous atteindrez l'étape de modification du fichier chrony.conf, vous utiliserez le point de terminaison IPv6 du service Amazon Time Sync (fd00:ec2::123) plutôt que le point de terminaison IPv4 () : 169.254.169.123

server fd00:ec2::123 prefer iburst minpoll 4 maxpoll 4

Enregistrez le fichier et vérifiez que chrony utilise le point de terminaison IPv6 fd00:ec2::123 pour synchroniser le temps :

[ec2-user ~]$ chronyc sources -v

Dans la sortie, si vous voyez le point de terminaison IPv6 fd00:ec2::123, la configuration est terminée.

Lorsque vous atteindrez l'étape consistant à modifier le serveur NTP pour utiliser le service Amazon Time Sync, vous utiliserez le point de terminaison IPv6 du service Amazon Time Sync (fd00:ec2::123) plutôt que le point de terminaison IPv4 (169.254.169.123) :

w32tm /config /manualpeerlist:fd00:ec2::123 /syncfromflags:manual /update

Vérifiez que vos nouveaux paramètres utilisent le point de terminaison fd00:ec2::123 IPv6 pour synchroniser l'heure :

w32tm /query /configuration

Dans le résultat, vérifiez que le point de terminaison fd00:ec2::123 IPv6 est NtpServer affiché.

Connexion à l’horloge matérielle PTP

L’horloge matérielle PTP fait partie du AWS système Nitro. Elle est donc directement accessible sur les instances EC2 virtualisées et matériel nu prises en charge sans utiliser les ressources du client.

Les points de terminaison NTP de l'horloge matérielle PTP sont les mêmes que ceux du service Amazon Time Sync standard. Si votre instance possède une horloge matérielle PTP et que vous avez configuré la connexion NTP (vers le point de terminaison IPv4 ou IPv6), l'heure de votre instance est automatiquement calculée à partir de l'horloge matérielle PTP sur NTP.

Pour les instances Linux, vous pouvez configurer une connexion PTP directe, qui vous donnera une heure plus précise que la connexion NTP. Les instances Windows ne prennent en charge qu'une connexion NTP à l'horloge matérielle PTP.

Prérequis

L’horloge matérielle PTP est disponible sur une instance lorsque les conditions suivantes sont remplies :

  • Soutenu Régions AWS : USA Est (Virginie du Nord) et Asie-Pacifique (Tokyo)

  • Familles d'instances prises en charge

    • Usage général : M7a, M7g, M7gD, M7i

    • Optimisé pour le calcul : C7a, C7gd, C7i

    • Mémoire optimisée : R7a, R7g, R7gd, R7i

  • (Linux uniquement) Le pilote ENA version 2.10.0 ou ultérieure est installé sur un système d'exploitation pris en charge. Pour plus d'informations sur les systèmes d'exploitation pris en charge, consultez les conditions requises pour les pilotes sur GitHub.

Cette section décrit comment configurer votre instance Linux pour utiliser le service Amazon Time Sync local via l'horloge matérielle PTP à l'aide d'une connexion PTP directe. Cela nécessite d'ajouter une entrée serveur pour l'horloge matérielle PTP dans le fichier de chrony configuration.

Pour configurer une connexion PTP directe à l'horloge matérielle PTP (instances Linux uniquement)
  1. Connectez-vous à votre instance Linux et procédez comme suit :

    1. Installez le pilote du noyau Linux pour Elastic Network Adapter (ENA) version 2.10.0 ou ultérieure.

    2. Activez l'horloge matérielle PTP.

    Pour les instructions d'installation, consultez le pilote de noyau Linux pour la famille Elastic Network Adapter (ENA) sur GitHub.

  2. Vérifiez que l’appareil /dev/ptp0 apparaît sur votre instance.

    [ec2-user ~]$ ls /dev/ptp0

    La sortie attendue est la suivante : Si /dev/ptp0 ce n’est pas dans la sortie, le pilote ENA n’a pas été correctement installé. Passez en revue l’étape 1 de cette procédure pour installer le pilote.

    /dev/ptp0
  3. Modifiez /etc/chrony.conf à l’aide d’un éditeur de texte et ajoutez la ligne suivante n’importe où dans le fichier.

    refclock PHC /dev/ptp0 poll 0 delay 0.000010 prefer
  4. Redémarrez Chrony.

    [ec2-user ~]$ sudo systemctl restart chronyd
  5. Vérifiez que chrony utilise l’horloge matérielle PTP pour synchroniser l’heure sur cette instance.

    [ec2-user ~]$ chronyc sources

    Sortie attendue

    MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== #* PHC0 0 0 377 1 +2ns[ +1ns] +/- 5031ns

    Dans le résultat retourné, * indique la source de temps préférée. PHC0 correspond à l’horloge matérielle PTP. Vous devrez peut-être attendre quelques secondes après avoir redémarré chrony pour que l’astérisque apparaisse.