Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
linux:ntp [22.02.2024 12:21. ] – [Chrony Daemon] djangolinux:ntp [21.03.2024 08:41. ] (aktuell) – [Orchestrierung - Installation und Konfiguration des chronyd mit Hilfe von Ansible] Typofixing django
Zeile 1: Zeile 1:
 +{{htmlmetatags>metatag-robots=() 
 +metatag-keywords=(Ansible,Arch Linux,ntp, chrony, timeserver,stratum,chronyc,chronyd) 
 +metatag-description=(NTP-Zeitserver mit chrony unter Arch Linux einrichten und nutzen)
 +}}
 ====== NTP-Zeitserver mit chrony unter Linux einrichten und nutzen ====== ====== NTP-Zeitserver mit chrony unter Linux einrichten und nutzen ======
 {{:linux:hourglass.png?nolink&100 |Bild: stilisierte Sanduhr}} Basis für eine zuverlässige Kommunikation zwischen netzwerkbasierten Diensten und Servern ist unter anderem eine exakte Zeitmessung. Nur so kann gewährleistet werden das Systemkomponenten wie z.B. systemd-Timer und Cronjobs zur richtigen Zeit gestartet werden und laufen. Einzelne Systeme können mit Hilfe des **N**etwork **T**ime **P**rotocol kurz **NTP** ihre Systemzeiten mit einem zentralen Zeitserver oder einem Pool von Servern zu synchronisieren. NTP wurde 1985 von David L. Mills entwickelt und wurde als [[https://tools.ietf.org/html/rfc958|RFC 958]] definiert um eine zuverlässige Zeitgabe über Netzwerke mit variabler Paketlaufzeit über das verbindungslose Protokolls **UDP** zu ermöglichen und bekam von der Internet Assigned Numbers Authority den UDP-Ports **123** zugewiesen. Das **RFC958** wurde in den letzten Jahren mehrfach überarbeitet und ergänzt und wurde letztmalig mit **[[https://www.rfc-editor.org/rfc/rfc9109|RFC 9109 - Network Time Protocol Version 4: Port Randomization]]** ergänzt. {{:linux:hourglass.png?nolink&100 |Bild: stilisierte Sanduhr}} Basis für eine zuverlässige Kommunikation zwischen netzwerkbasierten Diensten und Servern ist unter anderem eine exakte Zeitmessung. Nur so kann gewährleistet werden das Systemkomponenten wie z.B. systemd-Timer und Cronjobs zur richtigen Zeit gestartet werden und laufen. Einzelne Systeme können mit Hilfe des **N**etwork **T**ime **P**rotocol kurz **NTP** ihre Systemzeiten mit einem zentralen Zeitserver oder einem Pool von Servern zu synchronisieren. NTP wurde 1985 von David L. Mills entwickelt und wurde als [[https://tools.ietf.org/html/rfc958|RFC 958]] definiert um eine zuverlässige Zeitgabe über Netzwerke mit variabler Paketlaufzeit über das verbindungslose Protokolls **UDP** zu ermöglichen und bekam von der Internet Assigned Numbers Authority den UDP-Ports **123** zugewiesen. Das **RFC958** wurde in den letzten Jahren mehrfach überarbeitet und ergänzt und wurde letztmalig mit **[[https://www.rfc-editor.org/rfc/rfc9109|RFC 9109 - Network Time Protocol Version 4: Port Randomization]]** ergänzt.
Zeile 26: Zeile 30:
 ==== Chrony unter Arch Linux installieren ==== ==== Chrony unter Arch Linux installieren ====
 Bei der Installation des chrony-Paketes verwenden wir unter **[[https://archlinux.org/|Arch Linux]]** den Paketmanager **''pacman''**. Bei der Installation des chrony-Paketes verwenden wir unter **[[https://archlinux.org/|Arch Linux]]** den Paketmanager **''pacman''**.
-  - Als User: <code> $ sudo pacman -S chrony -y </code> +  - Als User: <code> $ sudo pacman -S chrony</code> 
-  - Als Nutzer mit Root-Rechten entsprechend: <code> $ sudo pacman -S chrony -y </code>+  - Als Nutzer mit Root-Rechten entsprechend: <code> pacman -S chrony</code>
  
 ===== Paketinhalt ===== ===== Paketinhalt =====
Zeile 1774: Zeile 1778:
 ++++ ++++
 ===== Dokumentation ===== ===== Dokumentation =====
-Eine ausführliche Onlinedokumentation des Chrony Projekts findet sich auf der entsprechnden Projektseite → https://chrony-project.org/documentation.html Bei der Installation des aktuellen chrony-Paketes z.B. unter Arch Linux finden sich im Verzeichnis **''/usr/share/doc/chrony/''** auch entsprechende FAQs, READMEs, NEWS und Beispiele.+Eine ausführliche Onlinedokumentation des Chrony Projekts findet sich auf der entsprechenden Projektseite → https://chrony-project.org/documentation.html Bei der Installation des aktuellen chrony-Paketes z.B. unter Arch Linux finden sich im Verzeichnis **''/usr/share/doc/chrony/''** auch entsprechende FAQs, READMEs, NEWS und Beispiele.
    # tree /usr/share/doc/chrony/    # tree /usr/share/doc/chrony/
 <code>/usr/share/doc/chrony// <code>/usr/share/doc/chrony//
Zeile 5184: Zeile 5188:
 MS Name/IP address         Stratum Poll Reach LastRx Last sample                MS Name/IP address         Stratum Poll Reach LastRx Last sample               
 =============================================================================== ===============================================================================
-^* defiant.tlercher.de            10   377    96    +59us[ +988us] +/-   10ms</code>+^+ time.cnetm.de                   6   377       +755us[ +755us] +/-   17ms 
 +^- frank.askja.de                2     377       -166us[ -166us] +/-   59ms 
 +^* ntp1.noris.net                2     377    72   -154us[ -125us] +/-   12ms 
 +^+ sv1.ggsrv.de                  2     377       +284us[ +284us] +/-   15ms 
 +</code>
  
 Dieses Beispiel zeigt die Abfrage auf unserem zentralen NTP-Server, den wir gerade eingerichtet haben. Nachfolgendes Beispiel zeigt einen Host, der wiederum unseren eigenen zentralen NTP-Server als Quelle benutzt. Dieses Beispiel zeigt die Abfrage auf unserem zentralen NTP-Server, den wir gerade eingerichtet haben. Nachfolgendes Beispiel zeigt einen Host, der wiederum unseren eigenen zentralen NTP-Server als Quelle benutzt.
Zeile 5238: Zeile 5246:
  
    chronyc> sources -v    chronyc> sources -v
-<code>  .-- Source mode  '^' = server, '=' = peer, '#' = local clock.+<code> 
 +  .-- Source mode  '^' = server, '=' = peer, '#' = local clock.
  / .- Source state '*' = current best, '+' = combined, '-' = not combined,  / .- Source state '*' = current best, '+' = combined, '-' = not combined,
 | /             'x' = may be in error, '~' = too variable, '?' = unusable. | /             'x' = may be in error, '~' = too variable, '?' = unusable.
Zeile 5248: Zeile 5257:
 MS Name/IP address         Stratum Poll Reach LastRx Last sample                MS Name/IP address         Stratum Poll Reach LastRx Last sample               
 =============================================================================== ===============================================================================
-^* defiant.tlercher.de            10   377   246    +59us[ +988us] +/-   10ms+^+ time.cnetm.de                   6   377     7   +755us[ +755us] +/-   17ms 
 +^- frank.askja.de                2     377       -166us[ -166us] +/-   59ms 
 +^* ntp1.noris.net                2     377    72   -154us[ -125us] +/-   12ms 
 +^+ sv1.ggsrv.de                  2     377       +284us[ +284us] +/-   15ms
 </code> </code>
  
Zeile 5257: Zeile 5269:
 <code>Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev <code>Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
 ============================================================================== ==============================================================================
-defiant.tlercher.de         6     86m     +0.279      0.359    +87us   188us</code>+time.cnetm.de              16  11   782     -0.042      1.299    -35us   292us 
 +frank.askja.de             16     783     +0.281      0.379   +169us    99us 
 +ntp1.noris.net              6     452     -0.529      0.977   -304us    43us 
 +sv1.ggsrv.de               14     784     +0.211      0.264   +434us    70us</code>
  
 Mit der Option **''-v''** erhalten wir eine Kurzbeschreibung der angezeigten Werte.  Mit der Option **''-v''** erhalten wir eine Kurzbeschreibung der angezeigten Werte. 
Zeile 5272: Zeile 5287:
 Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
 ============================================================================== ==============================================================================
-defiant.tlercher.de         6     86m     +0.279      0.359    +95us   188us+time.cnetm.de              16  11   782     -0.042      1.299    -37us   292us 
 +frank.askja.de             16     783     +0.281      0.379   +178us    99us 
 +ntp1.noris.net              6     452     -0.529      0.977   -320us    43us 
 +sv1.ggsrv.de               14     784     +0.211      0.264   +440us    70us
 </code> </code>
  
Zeile 5318: Zeile 5336:
    # chronyc tracking    # chronyc tracking
  
-<code>Reference ID    : C3C98961 (defiant.tlercher.de)+<code>Reference ID    : 3E800112 (ntp1.noris.net)
 Stratum         : 3 Stratum         : 3
-Ref time (UTC)  : Wed Feb 21 17:44:33 2024 +Ref time (UTC)  : Thu Feb 22 12:24:14 2024 
-System time     : 0.000000083 seconds slow of NTP time +System time     : 0.000030264 seconds slow of NTP time 
-Last offset     : +0.000929279 seconds +Last offset     : +0.000049906 seconds 
-RMS offset      : 0.000310979 seconds +RMS offset      : 0.000355495 seconds 
-Frequency       : 23.866 ppm fast +Frequency       : 23.667 ppm fast 
-Residual freq   : +0.279 ppm +Residual freq   : +0.017 ppm 
-Skew            : 0.179 ppm +Skew            : 0.322 ppm 
-Root delay      : 0.019519085 seconds +Root delay      : 0.016084936 seconds 
-Root dispersion : 0.001197367 seconds +Root dispersion : 0.002525240 seconds 
-Update interval : 1025.seconds+Update interval : 64.seconds
 Leap status     : Normal</code> Leap status     : Normal</code>
  
Zeile 5388: Zeile 5406:
  
 ===== Orchestrierung - Installation und Konfiguration des chronyd mit Hilfe von Ansible ===== ===== Orchestrierung - Installation und Konfiguration des chronyd mit Hilfe von Ansible =====
-Natürlich wird man im Jahr 2024 nicht mehr ernsthaft, manuell Server aufsetzen und betreiben wollen. Vielmehr wird amn auf ein Orchestrierungswerkzeug wie z.B. **[[linux:ansible:start|Ansible]]** zurückgreifen.+Natürlich wird man im Jahr 2024 nicht mehr ernsthaft, manuell Server aufsetzen und betreiben wollen. Vielmehr wird man auf ein Orchestrierungswerkzeug wie z.B. **[[linux:ansible:start|Ansible]]** zurückgreifen.
  
 Wir werden uns nun nachfolgend sowohl die Client- wie auch die Server-Installation und -konfiguration genauer betrachten.  Wir werden uns nun nachfolgend sowohl die Client- wie auch die Server-Installation und -konfiguration genauer betrachten. 
  • linux/ntp.1708604482.txt.gz
  • Zuletzt geändert: 22.02.2024 12:21.
  • von django