Vergleichen von Zeitstempeln für Ihre Linux-Instances - Amazon Elastic Compute Cloud

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.

Vergleichen von Zeitstempeln für Ihre Linux-Instances

Wenn Sie den Amazon Time Sync Service verwenden, können Sie die Zeitstempel Ihrer Amazon-EC2-Linux-Instances mit ClockBound vergleichen, um den tatsächlichen Zeitpunkt eines Ereignisses zu ermitteln. ClockBound misst die Taktgenauigkeit Ihrer EC2-Instance und ermöglicht es Ihnen zu überprüfen, ob sich ein bestimmter Zeitstempel in Bezug auf die aktuelle Uhr Ihrer Instance in der Vergangenheit oder Zukunft befindet. Diese Informationen sind wertvoll, um die Reihenfolge und Konsistenz von Ereignissen und Transaktionen über EC2-Instances hinweg unabhängig vom geografischen Standort jeder Instance zu bestimmen.

ClockBound ist ein Daemon und eine Bibliothek auf Open-Source-Basis. Weitere Informationen über ClockBound, einschließlich Installationsanweisungen, finden Sie unter ClockBound auf GitHub.

ClockBound wird nur für Linux-Instances unterstützt.

Bei Verwendung der direkten PTP-Verbindung mit der PTP-Hardware-Uhr unterschätzt Ihr Zeit-Daemon (beispielsweise chrony) die Zeitfehlergrenze. Das liegt daran, dass eine PTP-Hardware-Uhr im Gegensatz zu NTP nicht die richtigen Informationen zur Fehlergrenze an chrony übergibt. Folglich geht Ihr Daemon für die Zeitsynchronisierung davon aus, dass die UTC-Zeit der Uhr korrekt ist, und verwendet daher eine Fehlergrenze von 0. Zur Messung der gesamten Fehlergrenze berechnet das Nitro-System die Fehlergrenze der PTP-Hardware-Uhr und macht sie über das ENA-Treiberdateisystem sysfs für Ihre EC2-Instance verfügbar. Dies ist direkt als Wert in Nanosekunden lesbar.

De PTP-Hardware-Uhr abrufen
  1. Rufen Sie zunächst mithilfe eines der folgenden Befehle den korrekten Standort der PTP-Hardware-Uhr ab. Der Pfad im Befehl unterscheidet sich je nach AMI, das zum Starten der Instance verwendet wird.

    • Für Amazon Linux 2:

      cat /sys/class/net/eth0/device/uevent | grep PCI_SLOT_NAME
    • Für Amazon Linux 2023:

      cat /sys/class/net/ens5/device/uevent | grep PCI_SLOT_NAME

    Die Ausgabe gibt den PCI-Steckplatz an, an dem sich die PTP-Hardware-Uhr befindet. In diesem Beispiel ist der Speicherort 0000:00:03.0.

    PCI_SLOT_NAME=0000:00:03.0
  2. Führen Sie den folgenden Befehl aus, um den PTP-Hardware-Zeitfehler abzurufen. Geben Sie den PCI-Steckplatznamen aus dem vorherigen Schritt an.

    cat /sys/bus/pci/devices/0000:00:03.0/phc_error_bound

    Die Ausgabe gibt die Zeitfehlergrenze der PTP-Hardware-Uhr in Nanosekunden an.

Um bei Verwendung der direkten PTP-Verbindung mit der PTP-Hardware-Uhr die korrekte Zeitfehlergrenze für einen bestimmten Zeitpunkt zu berechnen, müssen Sie die Zeitfehlergrenze von chrony oder von ClockBound zu dem Zeitpunkt, zu dem chrony die PTP-Hardware-Uhr abfragt, addieren. Weitere Informationen zur Messung und Überwachung der Zeitgenauigkeit finden Sie unter Verwalten der Zeitgenauigkeit von Amazon-EC2-Instances mithilfe von Amazon Time Sync Service und Amazon CloudWatch – Teil 1.