Oracle Cloud Infrastructure-NTP-Service für Instanzen konfigurieren
Oracle Cloud Infrastructure bietet einen vollständig verwalteten, sicheren und hochverfügbaren NTP-Service, mit dem Sie das Datum und die Uhrzeit Ihrer 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 Instanzen auch so konfigurieren, dass sie einen öffentlichen NTP-Service verwenden, oder über FastConnect einen On-Premise-NTP-Service einsetzen.
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.
Führen Sie die folgenden Schritte aus, um Oracle Linux 6.x-Instanzen für den Oracle Cloud Infrastructure-NTP-Service zu konfigurieren.
-
Konfigurieren Sie mit den folgenden Befehlen IPtables so, dass Verbindungen zum Oracle Cloud Infrastructure-NTP-Service zulässig sind:
sudo iptables -I BareMetalInstanceServices 8 -d 169.254.169.254/32 -p udp -m udp --dport 123 -m comment --comment "Allow access to OCI local NTP service" -j ACCEPT
sudo service iptables save
-
Installieren Sie den NTP-Service mit dem folgenden Befehl:
sudo yum install ntp
-
Legen Sie das Datum Ihrer Instanz mit dem folgenden Befehl fest:
sudo ntpdate 169.254.169.254
-
Konfigurieren Sie die Instanz für die Verwendung des Oracle Cloud Infrastructure-NTP-Service für iburst. Ändern Sie dazu die Datei
/etc/ntp.conf
wie folgt:-
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
-
Fügen Sie einen Eintrag für den Oracle Cloud Infrastructure-NTP-Server hinzu:
server 169.254.169.254 iburst
Der geänderte Abschnitt
server
enthält jetzt Folgendes:# 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
-
-
Legen Sie mit dem folgenden Befehl fest, dass der NTP-Service beim Booten der Instanz automatisch gestartet wird:
sudo chkconfig ntpd on
-
Starten Sie den NTP-Service mit dem folgenden Befehl:
sudo /etc/init.d/ntpd start
-
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
Führen Sie die folgenden Schritte aus, um Oracle Linux 7.x-Instanzen für den Oracle Cloud Infrastructure-NTP-Service zu konfigurieren.
- Führen Sie mit dem folgenden Befehl die Befehle in diesem Abschnitt als Root aus:
sudo su -
- Installieren Sie den NTP-Service mit dem folgenden Befehl:
yum -y install ntp
- Ändern Sie mit dem folgenden Befehl die Firewallregeln so, dass ein- und ausgehender Traffic mit dem Oracle Cloud Infrastructure-NTP-Server unter 169.254.169.254 auf UDP-Port 123 zulässig ist:
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. - Starten Sie die Firewall mit dem folgenden Befehl neu:
service firewalld restart
- Legen Sie das Datum Ihrer Instanz mit dem folgenden Befehl fest:
ntpdate 169.254.169.254
- Konfigurieren Sie die Instanz für die Verwendung des Oracle Cloud Infrastructure-NTP-Service für iburst. Ändern Sie dazu die Datei
/etc/ntp.conf
wie folgt:- 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
-
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
- Kommentieren Sie im Abschnitt
-
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
-
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
Wenn beim Einrichten des NTP-Service auf Windows Server die Fehlermeldung no time data was available angezeigt wird, prüfen Sie die Informationen im Artikel zu diesem bekannten Microsoft-Problem.
-
Konfigurieren Sie eine Windows Server-Instanz für den Oracle Cloud Infrastructure-NTP-Service, indem Sie eine der folgenden Aktionen 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:
- Ändern Sie den Servertyp in NTP:
- Navigieren Sie im Registrierungs-Editor zu:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\
- Klicken Sie auf Typ.
- Ändern Sie den Wert in
NTP
. Klicken Sie auf OK.
- Navigieren Sie im Registrierungs-Editor zu:
-
Konfigurieren Sie den Windows-Zeitdienst, um die Flags
Timeserv_Announce_Yes
undReliable_Timeserv_Announce_Auto
zu aktivieren.Setzen Sie dazu den Parameter
AnnounceFlags
auf 5:- Navigieren Sie im Registrierungs-Editor zu:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
- Klicken Sie auf AnnounceFlags.
- Ändern Sie den Wert in
5
. Klicken Sie auf OK.
- Navigieren Sie im Registrierungs-Editor zu:
- Aktivieren Sie den NTP-Server:
- Navigieren Sie im Registrierungs-Editor zu:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\
- Klicken Sie auf Aktiviert.
- Ändern Sie den Wert in
1
. Klicken Sie auf OK.
- Navigieren Sie im Registrierungs-Editor zu:
- Legen Sie die Zeitquellen fest:
- Navigieren Sie im Registrierungs-Editor zu:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\
- Klicken Sie auf NtpServer.
- Ändern Sie den Wert in
169.254.169.254,0x9
. Klicken Sie auf OK.
- Navigieren Sie im Registrierungs-Editor zu:
- Legen Sie das Polling-Intervall fest:
- Navigieren Sie im Registrierungs-Editor zu:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\
- Klicken Sie auf SpecialPollInterval.
- 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
,. Klicken Sie dann auf OK.
- Navigieren Sie im Registrierungs-Editor zu:
- Legen Sie die Grenzwerteinstellungen für die Phasenkorrektur so fest, dass die Grenzen des Zeitbeispiels eingeschränkt werden:
- Navigieren Sie im Registrierungs-Editor zu:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
- Klicken Sie auf MaxPosPhaseCorrection.
- 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 dann auf OK. - Klicken Sie auf MaxNegPhaseCorrection.
- 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 dann auf OK.
- Navigieren Sie im Registrierungs-Editor zu:
- Ändern Sie den Servertyp in NTP:
-
- Starten Sie mit dem folgenden Befehl in der Eingabeaufforderung den Zeitdienst neu:
net stop w32time && net start w32time
-
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
vonPending
zuActive
.