Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Die Zeitreferenz auf Ihrer EC2 Instance so einstellen, dass der lokale Amazon Time Sync Service verwendet wird
Der Amazon Time Sync Service bietet mehrere Methoden, mit denen Ihre Amazon EC2-Instance mit einer lokalen Zeitquelle synchronisiert werden kann. Erstens kann jede Amazon EC2-Instance eine lokale Zeitquelle über das Network Time Protocol (NTP) erreichen. Darüber hinaus bietet der erweiterte Amazon Time Sync Service Quellen mit höherer Genauigkeit für unterstützte Amazon EC2-Instances. Starten Sie Ihre unterstützte Instance in einer Platzierungsgruppe mit der precision-time Strategie, eine NTP-Quelle mit höherer Genauigkeit zu erreichen. Schließlich haben Linux-Instances, die in einer Precision Time Placement-Gruppe gestartet werden, Zugriff auf ein PTP Hardware Clock (PHC) -Gerät und die Möglichkeit, Zeitstempel von Hardware-Paketen abzurufen.
Jede Amazon EC2-Instance hat Zugriff auf die lokale NTP-Quelle. Sie können die NTP-Quelle über eine link-lokale IP-Adresse erreichen, wodurch dieser Datenverkehr auf Ihre VPC beschränkt wird, ohne dass spezielle VPC-Konfigurationsänderungen erforderlich sind. Ihr AMI hat Ihren Uhrsynchronisierungs-Daemon möglicherweise bereits so konfiguriert, dass er standardmäßig die lokale NTP-Quelle verwendet. Diese NTP-Quelle ist über die folgenden IP-Adressen verfügbar:
-
IPv4:
169.254.169.123 -
IPv6:
fd00:ec2::123(Nur auf Nitro-based Instanzen zugänglich.)
Unterstützte Amazon EC2-Instances haben Zugriff auf den erweiterten Amazon Time Sync Service. Um auf den erweiterten Amazon Time Sync Service zuzugreifen, starten Sie eine unterstützte Instance in einer Platzierungsgruppe mit der precision-time Strategie. Sie müssen Ihre Instance nicht konfigurieren, um von dieser Verbesserung zu profitieren, wenn Sie die NTP-Link-Local-IP-Adressen verwenden. Jedes Betriebssystem kann diese Erweiterung verwenden. Sie können überprüfen, ob Sie von der erweiterten NTP-Quelle profitieren, indem Sie den NTP-Client Ihrer Wahl verwenden.
Linux-based AMIs, die auf unterstützten Instance-Familien ausgeführt werden, haben die zusätzliche Option, Zeit von einem PHC-Gerät abzurufen. Der ENA-Treiber stellt dieses Gerät zur Verfügung. Sowohl die erweiterte NTP-Quelle als auch das PHC-Gerät verwenden dieselbe hochgenaue Zeitquelle. Der Zugriff auf die PHC-Zeitquelle ist optimiert, was zu einer genaueren Synchronisierung Ihrer Amazon EC2-Instance führt.
Überlegungen
Die NTP-Zeitquelle bietet eine sprunghafte Ansicht der UTC-Zeitskala, während die PHC die Zeit nicht verschmiert. Weitere Informationen finden Sie unter Schaltsekunden.
Nur Linux-Instanzen haben Zugriff auf die lokale PTP-Hardwareuhr. Windows-Instances müssen NTP verwenden, um auf den erweiterten Amazon Time Sync Service zuzugreifen.
Für Services, die Link-Local-Adressen verwenden, gilt eine Obergrenze von 1 024 Paketen pro Sekunde (PPS). Dieses Limit umfasst die Summe der Route 53 Resolver-DNS-Abfragen, Instance Metadata Service (IMDS) -Anfragen, Amazon Time Sync Service Network Time Protocol (NTP) -Anfragen und Windows Licensing Service (für Microsoft Windows-basierte Instances).
Inhalt
Greifen Sie auf den IPv4-Endpunkt des Amazon Time Sync Service zu
Ihr AMI hat den Amazon Time Sync Service möglicherweise bereits standardmäßig konfiguriert. Andernfalls verwenden Sie die folgenden Verfahren, um Ihre Instance für die Verwendung des lokalen Amazon Time Sync Service über den IPv4-Endpunkt zu konfigurieren.
Hilfe zur Behebung von Problemen finden Sie unter Fehlerbehebung bei NTP-Synchronisierungsproblemen auf Linux-Instances
Greifen Sie auf den IPv6-Endpunkt des Amazon Time Sync Service zu
In diesem Abschnitt erfahren Sie, inwiefern sich die unter Greifen Sie auf den IPv4-Endpunkt des Amazon Time Sync Service zu beschriebenen Schritte unterscheiden, wenn Sie Ihre Instance für die Verwendung des lokalen Amazon Time Sync Service über den IPv6-Endpunkt konfigurieren. Es wird nicht der gesamte Konfigurationsprozess des Amazon Time Sync Service erklärt.
Auf den IPv6-Endpunkt kann nur auf Nitro-based Instances zugegriffen werden.
Es wird nicht empfohlen, die IPv4- und IPv6-Endpunkteinträge zusammen zu verwenden. Die IPv4- und IPv6-NTP-Pakete stammen von demselben lokalen Server für Ihre Instance. Das gleichzeitige Konfigurieren von IPv4- und IPv6-Endpunkten ist unnötig und führt nicht zu einer höheren Zeitgenauigkeit in Ihrer Instance.
Greifen Sie auf den erweiterten Amazon Time Sync Service zu
Der erweiterte Amazon Time Sync Service bietet Lokalzeitquellen mit höherer Genauigkeit für unterstützte Amazon EC2-Instances. Instances, die in einer Platzierungsgruppe mit einer precision-time Strategie gestartet werden, können auf diese lokalen Quellen zugreifen. Wir empfehlen Precision Time Placement Groups für Anwendungen, die eine genauere Zeit entweder von der link-lokalen NTP-Quelle oder von einem PTP Hardware Clock (PHC) -Gerät auf einer Linux-Instance benötigen. Wenn Sie Instances in einer Precision Time Placement-Gruppe starten, AWS platzieren Sie sie auf unterstützter Hardware mit direktem Zugriff auf hochpräzise Zeitquellen in der Infrastruktur. AWS
Wichtigste Vorteile
-
Standardmäßig verbesserte NTP-Quelle — Ihre Instance hat sofortigen Zugriff auf eine erweiterte lokale NTP-Zeitquelle, wenn Sie die NTP-Link-Local-IP-Adressen verwenden, wie im vorherigen Abschnitt beschrieben.
-
Microsecond-accurate Uhrsynchronisierung — Konfigurieren Sie Ihre Amazon EC2-Linux-Instance so, dass sie ein PTP-Hardware-Uhr-Gerät verwendet und eine mikrosekundengenaue Uhrsynchronisierung erreicht.
-
Vereinfachte Bereitstellung — Eine zentrale Platzierungsstrategie stellt sicher, dass alle Instances über Funktionen zur präzisen Zeitmessung verfügen.
-
Zeitstempel für Hardware-Pakete — Greifen Sie auf Paketzeitstempel auf niedriger Ebene für Netzwerkmessungen zu.
-
Keine zusätzlichen Kosten — Precision Time Placement-Gruppen sind ohne Aufpreis erhältlich.
Regeln und Einschränkungen
-
Precision Time Placement Groups sind in allen AWS kommerziellen Regionen verfügbar.
-
Precision Time Placement-Gruppen unterstützen die folgenden Amazon EC2-Instance-Familien der Generation 7 und höher:
-
Allgemeiner Zweck: M7a, M7g, M7d, M7i M7g-flex, M8a, M8g, M7i-flex M8g-flex
-
Computeroptimiert: C7a, C7d, C7i, C8g, C8g C7i-flex C8g-flex
-
Speicheroptimiert: R7a, R7g, R7i, R7id, R8g, X8adeZ,, X8adZs, X8aeDEZ,, X8aeZ, X8aZ, X8g, X8gE X8adz-3tb X8adz-6tb X8aedz-3tb X8aedz-6tb
-
Speicheroptimiert: I8g, I8ge
-
-
Wenn Sie eine Instance in einer Precision Time Placement-Gruppe starten oder starten und die Hardware nicht ausreicht, um den Zugriff auf den erweiterten Amazon Time Sync Service zu ermöglichen, schlägt die Anfrage fehl.
-
Wenn Sie eine Instance in einer Precision Time Placement-Gruppe stoppen und dann erneut starten, wird sie trotzdem in der Placement-Gruppe ausgeführt. Der Start kann jedoch fehlschlagen, wenn nicht genügend Hardware vorhanden ist, um den Zugriff auf den erweiterten Amazon Time Sync Service zu ermöglichen.
-
Amazon EC2 fügt kontinuierlich Hardware hinzu, die den erweiterten Amazon Time Sync Service unterstützt. Wenn Ihre Anfrage aufgrund unzureichender Kapazität fehlschlägt, versuchen Sie es später erneut oder versuchen Sie es mit einer anderen Availability Zone. Weitere Informationen finden Sie unter Fehlerbehebung bei Amazon-EC2-Instances.
-
Es gelten die Regeln und Einschränkungen der Praktikumsgruppen. Weitere Informationen finden Sie unter Platzierungsgruppen für Ihre Amazon-EC2-Instances.
Erstellen Sie eine Gruppe mit präziser Zeiteinteilung
Sie können mithilfe der AWS CLI, der AWS
Management Console oder der AWS SDKs eine Gruppe für präzise Zeitplatzierung erstellen, indem Sie die precision-time Strategie angeben.
Verwenden AWS CLI
Führen Sie den folgenden Befehl aus:
aws ec2 create-placement-group \ --group-namemy-precision-time-pg\ --strategy precision-time
Der Befehl gibt einen Platzierungsgruppen-ARN zurück, den Sie beim Erstellen von Kapazitätsreservierungen verwenden, sowie einen Gruppennamen oder eine Gruppen-ID, die Sie beim Starten von Instances und beim Verknüpfen von Placement-Gruppen verwenden.
Starten einer -Instance
Nachdem Sie eine Precision Time Placement-Gruppe erstellt haben, geben Sie diese beim Starten von Instances an, um auf den erweiterten Amazon Time Sync Service zuzugreifen:
aws ec2 run-instances \ --image-idami-0abcdef1234567890\ --instance-typer7g.2xlarge\ --placement GroupId=pg-0aaa1111111111111
Überprüfen Sie den Zugriff auf den erweiterten Amazon Time Sync Service
Nachdem Sie Ihre Instance in einer Precision Time Placement-Gruppe gestartet haben, profitieren Sie von einer erweiterten NTP-Zeitquelle.
Wenn Sie beispielsweise den Chronyd-Daemon auf Ihrer Instance verwenden, können Sie überprüfen, ob die NTP-Zeitquelle jetzt als Stratum 1 bezeichnet wird und über verbesserte Messwerte für die Taktgenauigkeit verfügt:
[ec2-user ~]$chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 169.254.169.123 1 4 377 3 +3477ns[+4689ns] +/- 91us
Überprüfen Sie die von chrony gemeldeten Zeitsynchronisierungsmetriken.
[ec2-user ~]$chronyc tracking
Reference ID : A9FEA97B (169.254.169.123)
Stratum : 2
Ref time (UTC) : Wed May 06 01:33:43 2026
System time : 0.000000276 seconds fast of NTP time
Last offset : +0.000000331 seconds
RMS offset : 0.000001929 seconds
Frequency : 2.870 ppm fast
Residual freq : +0.000 ppm
Skew : 0.031 ppm
Root delay : 0.000107584 seconds
Root dispersion : 0.000036476 seconds
Update interval : 16.2 seconds
Leap status : Normal
Greifen Sie auf die PTP Hardware Clock (PHC) zu
Die PTP Hardware Clock (PHC) ist Teil des Nitro-Systems. AWS Sie ist direkt über unterstützte Bare-Metal- und virtualisierte Amazon EC2-Instances zugänglich, die in einer Precision Time Placement-Gruppe gestartet werden. Auf das PHC-Gerät kann derzeit nur auf Linux-Instances zugegriffen werden. In den folgenden Abschnitten wird beschrieben, wie Sie das PHC-Gerät auf Ihrer Linux-Instance einrichten und überprüfen.
Voraussetzungen
-
Installation der ENA-Treiberversion 2.10.0 (oder höher) für ein unterstütztes Betriebssystem.
-
Eine Amazon EC2-Instance, auf der Linux ausgeführt wird. Weitere Informationen zu unterstützten Betriebssystemen finden Sie in den Treibervoraussetzungen
unter GitHub. -
Eine Amazon EC2-Instance, die in einer Precision Time Placement-Gruppe gestartet wurde (sieheGreifen Sie auf den erweiterten Amazon Time Sync Service zu).
Anmerkung
Auf den erweiterten Amazon Time Sync Service und das PHC-Gerät kann in den folgenden Regionen und für die jeweiligen Instance-Familien auch ohne eine Gruppe für die genaue Zeiteinteilung zugegriffen werden. Für ein optimales Erlebnis empfehlen wir, Amazon EC2-Instances stattdessen in Gruppen mit genauer Platzierung zu starten.
-
Legacy-Zugriffe werden unterstützt AWS-Regionen: USA Ost (Nord-Virginia), USA Ost (Ohio), Asien-Pazifik (Malaysia), Asien-Pazifik (Thailand), Asien-Pazifik (Tokio) und Europa (Stockholm)
-
Legacy Access wird unterstützt Lokale Zonen: USA Ost (New York City)
-
Von Legacy Access unterstützte Instance-Familien:
-
Allzweck: M7a, M7g, M7i
-
Arbeitsspeicheroptimiert: R7a, R7g, R7i
-
Speicheroptimiert: I8g, I8ge
-
Kompilieren und aktivieren Sie den ENA-Treiber mit PHC-Unterstützung
Lesen Sie in der ENA-Treiberdokumentation unter GitHub immer die neuesten Anweisungen zur neuesten Treiberversion des Elastic Network Adapters (
Bevor Sie beginnen, stellen Sie sicher, dass Ihre Instance die erfülltVoraussetzungen.
Um den ENA-Treiber mit PHC-Unterstützung zu kompilieren und zu aktivieren
-
Installieren Sie die erforderlichen Komponenten.
[ec2-user ~]$sudo yum update[ec2-user ~]$sudo yum install kernel-devel-$(uname -r) git[ec2-user ~]$sudo reboot -
Laden Sie das erforderliche PTP-Modul.
[ec2-user ~]$sudo modprobe ptp -
Rufen Sie die neueste ENA-Treiberversion ab (Version 2.10.0 oder höher).
[ec2-user ~]$git clone https://github.com/amzn/amzn-drivers.git /tmp/amzn-drivers -
Erstellen Sie den ENA-Treiber
ena.komit PHC-Unterstützung.[ec2-user ~]$cd /tmp/amzn-drivers/kernel/linux/ena[ec2-user ~]$ENA_PHC_INCLUDE=1 make -
Laden Sie den ENA-Treiber neu und aktivieren Sie das PHC-Gerät.
[ec2-user ~]$sudo rmmod ena && sudo insmod ena.ko phc_enable=1 -
Vergewissern Sie sich, dass der geladene ENA-Treiber PHC-Unterstützung bietet.
[ec2-user ~]$modinfo ena | grep -E "phc_enable"parm: phc_enable:Enable PHC. -
Stellen Sie sicher, dass die PHC-Unterstützung mit dem ENA-Treiber aktiviert ist.
[ec2-user ~]$cat /sys/module/ena/parameters/phc_enable1
Anweisungen zur Installation des Treibers und zur Aktivierung der Option phc_enable beim Neustart finden Sie in der README-Datei zum ENA-Treiber unter.
Überprüfen Sie die PTP-Gerätekonfiguration
Vergewissern Sie sich, dass das ENA-PTP-Hardware-Uhr-Gerät in Ihrer Instance angezeigt wird.
[ec2-user ~]$for file in /sys/class/ptp/*; do echo -n "$file: "; cat "$file/clock_name"; done
Erwartete Ausgabe
/sys/class/ptp/ptp<index>: ena-ptp-<PCI slot>
Wobei Folgendes gilt:
-
ist der im Kernel registrierte Index für die PTP-Hardware-Uhr.index -
ist der PCI-Steckplatz des ENA-Ethernet-Controllers. Dies ist derselbe Steckplatz wie unterPCI slotlspci | grep ENAgezeigt.
Beispielausgabe
/sys/class/ptp/ptp0: ena-ptp-05
Sollte ena-ptp- nicht in der Ausgabe enthalten sein, wurde der ENA-Treiber nicht korrekt installiert. Überprüfen Sie die Schritte unterKompilieren und aktivieren Sie den ENA-Treiber mit PHC-Unterstützung.<PCI slot>
PTP-Symlink konfigurieren
PTP-Geräte werden normalerweise /dev/ptp0, /dev/ptp1 usw. benannt, wobei ihr Index von der Reihenfolge der Hardware-Initialisierung abhängt. Durch das Erstellen eines Symlinks wird sichergestellt, dass Anwendungen wie chrony unabhängig von Indexänderungen konsistent auf das richtige Gerät verweisen.
Die neuesten AMIs von Amazon Linux 2023 enthalten eine udev-Regel, die den Symlink /dev/ptp_ena erstellt und auf den richtigen /dev/ptp-Eintrag verweist, der dem ENA-Host zugeordnet ist.
Prüfen Sie zunächst, ob der Symlink vorhanden ist, indem Sie den folgenden Befehl ausführen.
[ec2-user ~]$ls -l /dev/ptp*
Beispielausgabe
crw------- 1 root root 245, 0 Jan 31 2025 /dev/ptp0
lrwxrwxrwx 1 root root 4 Jan 31 2025 /dev/ptp_ena -> ptp0
Wobei Folgendes gilt:
-
/dev/ptpist der Pfad zum PTP-Gerät.<index> -
/dev/ptp_enaist der konstante Symlink, der auf dasselbe PTP-Gerät zeigt.
Wenn der /dev/ptp_ena Symlink vorhanden ist, fahren Sie mit fort. Konfigurieren Sie den Chronyd-Daemon so, dass er das PHC-Gerät verwendet Falls es fehlt, gehen Sie wie folgt vor:
Um den PTP-Symlink zu erstellen
-
Fügen Sie die folgende
udev-Regel hinzu.[ec2-user ~]$echo "SUBSYSTEM==\"ptp\", ATTR{clock_name}==\"ena-ptp-*\", SYMLINK += \"ptp_ena\"" | sudo tee -a /etc/udev/rules.d/53-ec2-network-interfaces.rules -
Laden Sie die
udev-Regel neu, indem Sie entweder die Instance neu starten oder den folgenden Befehl ausführen.[ec2-user ~]$sudo udevadm control --reload-rules && sudo udevadm trigger
Konfigurieren Sie den Chronyd-Daemon so, dass er das PHC-Gerät verwendet
Der Chronyd-Clock-Synchronisations-Daemon muss so konfiguriert sein, dass er das PHC-Gerät als zusätzliche Zeitquelle verwendet, wobei das Gerät anhand des /dev/ptp_ena Symlinks identifiziert wird.
So konfigurieren Sie den Chronyd-Daemon für die Verwendung des PHC-Geräts
-
Bearbeiten Sie
/etc/chrony.confmit einem Texteditor und fügen Sie die folgende Zeile hinzu:refclock PHC /dev/ptp_ena poll 0 delay 0.000010 prefer -
Starten Sie chrony erneut.
[ec2-user ~]$sudo systemctl restart chronyd -
Stellen Sie sicher, dass Chrony die PTP-Hardwareuhr verwendet. Das PHC0-Gerät muss die bevorzugte Zeitquelle mit einem Stratum 0-Wert sein. Die lokale NTP-Zeitquelle (falls konfiguriert) muss einen Stratum 1-Wert haben.
[ec2-user ~]$chronyc sourcesMS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== #* PHC0 0 0 377 0 +184ns[ +198ns] +/- 5032ns ^- 169.254.169.123 1 4 377 8 -18us[ -18us] +/- 115us
Überprüfen Sie den Zeitstempel für Hardwarepakete
Der mit der PHC-Unterstützung geladene ENA-Treiber ermöglicht den Zugriff auf die Zeitstempelung von Hardware-Paketen. Sie können die Unterstützung für diese Funktion überprüfen, indem Sie den Befehl verwenden. ethtool -T interface
Weitere Informationen zur Verwendung von Hardware-Paket-Zeitstempeln finden Sie in der Linux-Dokumentation zum Paket-Zeitstempel.
[ec2-user ~]$sudo ethtool -Tens5
Time stamping parameters for ens5:
Capabilities:
software-transmit
hardware-receive
software-receive
software-system-clock
PTP Hardware Clock: 0
Hardware Transmit Timestamp Modes: none
Hardware Receive Filter Modes:
none
all
Wenn die Ausgabe hardware-receive in der Liste der Funktionen angezeigt wird, ist der Zeitstempel für Hardware-Pakete auf Ihrer Instance verfügbar.