Oracle Cloud Infrastructure-NTP-Service für Instanzen konfigurieren

Oracle Cloud Infrastructure bietet einen vollständig verwalteten, sicheren und hochverfügbaren NTP-Service, mit welchem Sie das Datum und die Uhrzeit von Compute- und Datenbankinstanzen über ein virtuelles Cloud-Netzwerk (VCN) festlegen können. Der Oracle Cloud Infrastructure NTP-Service verwendet redundante Stratum 1-Geräte in jeder Availability-Domain. Die Stratum 2-Geräte werden mit dedizierten Stratum 1-Geräten synchronisiert, mit denen jeder Host synchronisiert wird. Der Service ist in jeder Region verfügbar.

In diesem Thema wird beschrieben, wie Sie Compute-Instanzen für diesen NTP-Service konfigurieren.

Sie können auch festlegen, dass Instanzen einen öffentlichen NTP-Service verwenden, oder FastConnect verwenden, um einen On-Premise-NTP-Service zu nutzen.

Hinweis

Plattformimages für Oracle Autonomous Linux 8.x, Oracle Autonomous Linux 7.x, Oracle Linux 9.x, Oracle Linux 8.x, Oracle Linux 7.x, Oracle Linux Cloud Developer 8.x und CentOS 7.x, die nach Februar 2018 veröffentlicht wurden, sowie CentOS Stream 8 enthalten standardmäßig den Chrony-Service. Sie müssen den Oracle Cloud Infrastructure NTP-Service für diese Instanzen nicht konfigurieren.
Oracle Linux 7.x, veröffentlicht im Februar 2018 oder früher

Mit den folgenden Schritten können Sie Oracle Linux 7.x-Instanzen für die Verwendung des Oracle Cloud Infrastructure NTP-Service konfigurieren.

  1. Führen Sie mit dem folgenden Befehl die Befehle in diesem Abschnitt als Root aus:
    sudo su -
  2. Installieren Sie den NTP-Service mit dem folgenden Befehl:
    yum -y install ntp
  3. Ändern Sie die Firewallregeln, um eingehenden und ausgehenden Traffic mit dem Oracle Cloud Infrastructure NTP-Server unter 169.254.169.254 auf UDP-Port 123 mit dem folgenden Befehl zuzulassen:
    awk -v n=13 -v s=' <passthrough ipv="ipv4">-A OUTPUT -d 169.254.169.254/32 -p udp -m udp --dport 123 -m comment --comment "Allow access to OCI local NTP service" -j ACCEPT </passthrough>' 'NR == n {print s} {print}' /etc/firewalld/direct.xml > tmp && mv tmp /etc/firewalld/direct.xml

    Geben Sie in der Eingabeaufforderung mv: overwrite '/etc/firewalld/direct.xml'? y ein.

  4. Starten Sie die Firewall mit dem folgenden Befehl neu:
    service firewalld restart
  5. Legen Sie das Datum Ihrer Instanz mit dem folgenden Befehl fest:
    ntpdate 169.254.169.254
  6. Konfigurieren Sie die Instanz so, dass der Oracle Cloud Infrastructure NTP-Service für iburst verwendet wird. Ändern Sie dazu die Datei /etc/ntp.conf wie folgt:
    1. Kommentieren Sie im Abschnitt server die Zeilen aus, in denen die RHEL-Server angegeben werden:
      #server 0.rhel.pool.ntp.org iburst
      #server 1.rhel.pool.ntp.org iburst
      #server 2.rhel.pool.ntp.org iburst
      #server 3.rhel.pool.ntp.org iburst
    2. Fügen Sie einen Eintrag für den Oracle Cloud Infrastructure NTP-Service hinzu:

      server 169.254.169.254 iburst

    Der geänderte Abschnitt server sollte jetzt Folgendes enthalten:

    # Please consider joining the pool (http://www.pool.ntp.org/join.html).
    #server 0.rhel.pool.ntp.org iburst
    #server 1.rhel.pool.ntp.org iburst
    #server 2.rhel.pool.ntp.org iburst
    #server 3.rhel.pool.ntp.org iburst
    server 169.254.169.254 iburst
  7. Starten und aktivieren Sie den NTP-Service mit den folgenden Befehlen:

    systemctl start ntpd
    systemctl enable ntpd

    Außerdem müssen Sie mit den folgenden Befehlen den chrony-NTP-Client deaktivieren, damit der NTP-Service nach einem Neustart automatisch gestartet wird:

    systemctl stop chronyd
    systemctl disable chronyd
  8. Stellen Sie mit dem folgenden Befehl sicher, dass der NTP-Service ordnungsgemäß konfiguriert ist:

    ntpq -p

    Die Ausgabe sieht in etwa wie folgt aus:

         remote           refid      st t when poll reach   delay   offset  jitter
    ==============================================================================
    169.254.169.254 192.168.32.3     2 u    2   64    1    0.338    0.278   0.187
    						
Windows Server
Tipp

Wenn beim Einrichten des NTP-Service auf Windows Server eine Fehlermeldung keine Zeitdaten verfügbar waren angezeigt wird, überprüfen Sie die Informationen im Artikel zu dem bekannten Microsoft-Problem.
  1. Konfigurieren Sie eine Windows Server-Instanz so, dass sie den Oracle Cloud Infrastructure NTP-Service verwendet, indem Sie einen der folgenden Schritte ausführen:

    • Um den NTP-Service mit Windows Powershell zu konfigurieren, führen Sie die folgenden Befehle in Powershell als Administrator aus:

      Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Parameters' -Name 'Type' -Value NTP -Type String
      Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Config' -Name 'AnnounceFlags' -Value 5 -Type DWord
      Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer' -Name 'Enabled' -Value 1 -Type DWord
      Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Parameters' -Name 'NtpServer' -Value '169.254.169.254,0x9' -Type String
      Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient' -Name 'SpecialPollInterval' -Value 900 -Type DWord
      Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Config' -Name 'MaxPosPhaseCorrection' -Value 1800 -Type DWord
      Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Services\W32Time\Config' -Name 'MaxNegPhaseCorrection' -Value 1800 -Type DWord
    • So konfigurieren Sie den NTP-Service durch manuelle Bearbeitung der Registry:

      1. Ändern Sie den Servertyp in NTP:
        1. Navigieren Sie im Registrierungs-Editor zu:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\
        2. Klicken Sie auf Typ.
        3. Klicken Sie auf OK, und ändern Sie den Wert in NTP.
      2. Konfigurieren Sie den Windows-Zeitdienst, um die Flags Timeserv_Announce_Yes und Reliable_Timeserv_Announce_Auto zu aktivieren.

        Setzen Sie dazu den Parameter AnnounceFlags auf 5:

        1. Navigieren Sie im Registrierungs-Editor zu:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
        2. Klicken Sie auf AnnounceFlags.
        3. Klicken Sie auf OK, und ändern Sie den Wert in 5.
      3. Aktivieren Sie den NTP-Server:
        1. Navigieren Sie im Registrierungs-Editor zu:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\
        2. Klicken Sie auf Aktiviert.
        3. Klicken Sie auf OK, und ändern Sie den Wert in 1.
      4. Legen Sie die Zeitquellen fest:
        1. Navigieren Sie im Registrierungs-Editor zu:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\
        2. Klicken Sie auf NtpServer.
        3. Klicken Sie auf OK, und ändern Sie den Wert in 169.254.169.254,0x9.
      5. Legen Sie das Polling-Intervall fest:
        1. Navigieren Sie im Registrierungs-Editor zu:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\
        2. Klicken Sie auf SpecialPollInterval.
        3. Setzen Sie den Wert auf das Intervall, in dem der Zeitdienst synchronisiert werden soll. Der Wert wird in Sekunden angegeben. Um 15 Minuten festzulegen, setzen Sie den Wert auf 900, und klicken Sie auf OK.
      6. Legen Sie die Grenzwerteinstellungen für die Phasenkorrektur so fest, dass die Grenzen des Zeitbeispiels eingeschränkt werden:
        1. Navigieren Sie im Registrierungs-Editor zu:
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
        2. Klicken Sie auf MaxPosPhaseCorrection.
        3. Legen Sie den Wert für Zeitbeispiele auf den maximalen Zeitversatz in der Zukunft fest. Der Wert wird in Sekunden angegeben. Um 30 Minuten festzulegen, setzen Sie den Wert auf 1800. Klicken Sie auf OK.
        4. Klicken Sie auf MaxNegPhaseCorrection.
        5. Legen Sie den Wert für Zeitbeispiele auf den maximalen Zeitversatz in der Vergangenheit fest. Der Wert wird in Sekunden angegeben. Um 30 Minuten festzulegen, setzen Sie den Wert auf 1800. Klicken Sie auf OK.
  2. Starten Sie mit dem folgenden Befehl in der Eingabeaufforderung den Zeitdienst neu:
    net stop w32time && net start w32time
  3. Testen Sie mit dem folgenden Befehl in der Eingabeaufforderung die Verbindung zum NTP-Service:

    w32tm /query /peers

    Die Ausgabe sieht in etwa wie folgt aus:

    #Peer: 1
     
    Peer: 169.254.169.254,0x9
    State: Active
    Time Remaining: 22.1901786s
    Mode: 3 (Client)
    Stratum: 0 (unspecified)
    PeerPoll Interval: 10 (1024s)
    HostPoll Interval: 10 (1024s)

    Wenn die im Polling-Intervall angegebene Zeit abgelaufen ist, wechselt der Status in State von Pending zu Active.