8 Settembre 2023

Utilizzare ntpdate su CentOS 8 e RHEL 8 o derivate

Sincronizzazione del Tempo su CentOS 8 e RHEL 8 e successive: Deprecazione di ntpdate all’Implementazione di Chronyd, una Guida Dettagliata su Installazione, Configurazione e Utilizzo.

chrony-1-2

Introduzione

La sincronizzazione del tempo è un aspetto cruciale per qualsiasi sistema informatico. Un orologio di sistema non sincronizzato può causare una serie di problemi, che vanno da log errati a malfunzionamenti di applicazioni e servizi. In passato, ntpdate era uno strumento popolare utilizzato per sincronizzare l’orologio di sistema con un server NTP (Network Time Protocol). Tuttavia, dalla versione di RHEL 8 e derivate, Red Hat ha eliminato ntpdate e lo ha sostituito con Chronyd. In questo post, esploreremo cosa è ntpdate, come Chronyd lo ha sostituito e come utilizzare Chronyd su CentOS 8 e RHEL 8 o derivate tra cui AlmaLinux, Rocky Linux e simili.

Cosa è ntpdate?

ntpdateè un’utilità software che fa parte della suite di protocolli e strumenti NTP (Network Time Protocol). Questo comando è specificamente progettato per sincronizzare l’orologio di sistema di un computer con un server NTP remoto. L’obiettivo principale di ntpdate è fornire un meccanismo rapido e relativamente semplice per portare l’orologio di sistema in allineamento con un riferimento temporale affidabile. Questo è particolarmente utile in scenari in cui è necessaria una sincronizzazione del tempo “una tantum”, come durante l’avvio del sistema o in ambienti in cui la macchina non è in esecuzione 24/7.

La funzionalità di ntpdate è focalizzata su operazioni di sincronizzazione temporale immediate e non è progettata per fornire una sincronizzazione del tempo in tempo reale o continua. In altre parole, una volta eseguito il comando ntpdate, l’orologio del sistema viene sincronizzato una sola volta e non ci sono meccanismi integrati per mantenere questa sincronizzazione nel tempo. Questa è una delle ragioni per cui ntpdate è spesso utilizzato in combinazione con ntpd (Network Time Protocol Daemon) o altri demoni NTP.

Ntpd, a differenza di ntpdate, è un demone che esegue una sincronizzazione del tempo in background, monitorando costantemente più server NTP e utilizzando algoritmi sofisticati per determinare l’ora più accurata. Gli amministratori di sistema che necessitano di una sincronizzazione del tempo più robusta e continua spesso optano per l’uso di ntpd o di altri servizi simili, riservando ntpdate per operazioni di sincronizzazione iniziale o per casi d’uso specifici in cui una sincronizzazione una tantum è sufficiente.

Perché Chronyd?

Con l’introduzione di RHEL 8 e derivate, ntpdate è stato deprecato e sostituito da Chronyd, un demone più moderno e flessibile per la sincronizzazione del tempo. Chronyd è stato progettato per lavorare sia come client che come server, fornendo una sincronizzazione del tempo più accurata e affidabile rispetto a ntpdate. Inoltre, Chronyd è più adatto per sistemi che hanno connessioni Internet intermittenti o che passano frequentemente tra diverse reti.

Installazione di Chronyd su CentOS 8 e RHEL 8

Per installare Chronyd su CentOS 8 o RHEL 8, segui i seguenti passaggi:

  1. Apri il terminale: Accedi come utente root o utilizza sudo per i comandi successivi.
  2. Aggiorna il sistema: Esegui il comando sudo dnf update per assicurarti di avere tutti gli aggiornamenti più recenti.
  3. Installa Chronyd: Esegui il comando sudo dnf install chrony.
  4. Abilita e avvia il servizio: Utilizza i seguenti comandi per abilitare e avviare il servizio chronyd.sudo systemctl enable chronyd
    sudo systemctl start chronyd
  5. Verifica lo stato: Per assicurarti che Chronyd sia in esecuzione, esegui sudo systemctl status chronyd.

Sintassi di Uso Avanzato di Chronyd

Una volta completata l’installazione di Chronyd sul tuo sistema CentOS 8 o RHEL 8, avrai a disposizione una serie di comandi e opzioni per configurare, gestire e monitorare la sincronizzazione del tempo. Questi comandi sono accessibili attraverso l’interfaccia della riga di comando di chronyc, che è il client di comando per il demone chronyd. Di seguito, approfondiamo alcuni dei comandi più comuni e utili che puoi utilizzare per interagire con Chronyd.

Visualizzare le Informazioni sullo Stato della Sincronizzazione

Il comando chronyc tracking è estremamente utile per ottenere un quadro dettagliato dello stato attuale della sincronizzazione del tempo. Questo comando fornisce informazioni come l’offset del tempo, il ritardo di rete e l’ultimo server NTP con cui il sistema è stato sincronizzato. È un ottimo punto di partenza per diagnosticare problemi o per avere un’idea generale dell’efficacia della tua configurazione NTP.

Elencare i Server NTP

Per avere una visione completa dei server NTP ai quali il tuo sistema è attualmente connesso o sta tentando di connettersi, puoi utilizzare il comando chronyc sources. Questo comando elenca tutti i server NTP configurati, mostrando anche lo stato di ciascuno di essi, che può essere utile per identificare problemi di connettività o latenza.

Aggiungere un Server NTP

Se desideri aggiungere un nuovo server NTP alla tua configurazione, dovrai modificare il file di configurazione chrony.conf. Questo file è generalmente situato nella directory /etc/chrony/. Per aggiungere un nuovo server, apri il file con un editor di testo come vi o nano e aggiungi la seguente riga:

server [nome_server] iburst

Qui, [nome_server] è l’indirizzo IP o il nome di dominio del server NTP che desideri aggiungere. L’opzione iburst è raccomandata perché tenta di sincronizzare rapidamente con il server, eseguendo una sequenza di query in rapida successione.

Forzare una Sincronizzazione Immediata

In certi scenari, come dopo aver apportato modifiche significative alla configurazione del server o alla rete, o in situazioni in cui è critico che il sistema sia allineato con precisione ad un server NTP, potrebbe emergere la necessità di forzare una sincronizzazione del tempo in modo immediato. In questi casi, attendere che il demone chronyd completi la sua routine di sincronizzazione in background potrebbe non essere un’opzione praticabile.

Per risolvere questo problema e imporre una sincronizzazione immediata, il comando chronyc makestep è la soluzione ideale. Quando eseguito, questo comando instrada chronyd ad aggiornare l’orologio del sistema il più rapidamente possibile. Questo avviene senza tener conto delle impostazioni di drift (la variazione dell’orologio del sistema nel tempo) o dei limiti di correzione del tempo che potrebbero normalmente influenzare la velocità o la frequenza con cui chronyd aggiorna l’orologio del sistema.

È importante notare che l’uso del comando chronyc makestep è un’azione piuttosto drastica e dovrebbe essere utilizzato con cautela. È consigliabile utilizzarlo solo quando è assolutamente necessario forzare una sincronizzazione immediata e non come pratica comune. Questo perché forzare frequentemente la sincronizzazione del tempo potrebbe avere implicazioni sulla stabilità del sistema e sulla precisione del logging e di altre funzioni che dipendono da un orologio di sistema accurato.

Conclusione

La sincronizzazione del tempo è un elemento vitale per il corretto funzionamento di qualsiasi sistema. Anche se ntpdate è stato un utile strumento per la sincronizzazione del tempo, la sua deprecazione in favore di Chronyd su RHEL 8 e derivate rappresenta un passo avanti significativo. Chronyd offre una maggiore flessibilità, precisione e affidabilità, rendendolo una scelta eccellente per la gestione del tempo su sistemi moderni.

Seguendo le istruzioni di installazione e configurazione fornite in questo post, dovresti essere in grado di impostare Chronyd su CentOS 8 e RHEL 8 o derivate con facilità. Con Chronyd, non solo garantisci che il tuo sistema sia sempre sincronizzato con l’ora esatta, ma ottieni anche un controllo più granulare sul processo di sincronizzazione.

Hai dei dubbi? Non sai da dove iniziare? Contattaci !

Abbiamo tutte le risposte alle tue domande per aiutarti nella giusta scelta.

Chatta con noi

Chatta direttamente con il nostro supporto prevendita.

0256569681

Contattaci telefonicamente negli orari d’ufficio 9:30 – 19:30

Contattaci online

Apri una richiesta direttamente nell’area dei contatti.

INFORMAZIONI

Managed Server S.r.l. è un player italiano di riferimento nel fornire soluzioni avanzate di sistemistica GNU/Linux orientate all’alta performance. Con un modello di sottoscrizione dai costi contenuti e prevedibili, ci assicuriamo che i nostri clienti abbiano accesso a tecnologie avanzate nel campo dell’hosting, server dedicati e servizi cloud. Oltre a questo, offriamo consulenza sistemistica su sistemi Linux e manutenzione specializzata in DBMS, IT Security, Cloud e molto altro. Ci distinguiamo per l’expertise in hosting di primari CMS Open Source come WordPress, WooCommerce, Drupal, Prestashop, Joomla, OpenCart e Magento, affiancato da un servizio di supporto e consulenza di alto livello adatto per la Pubblica Amministrazione, PMI, ed aziende di qualsiasi dimensione.

Red Hat, Inc. detiene i diritti su Red Hat®, RHEL®, RedHat Linux®, e CentOS®; AlmaLinux™ è un marchio di AlmaLinux OS Foundation; Rocky Linux® è un marchio registrato di Rocky Linux Foundation; SUSE® è un marchio registrato di SUSE LLC; Canonical Ltd. detiene i diritti su Ubuntu®; Software in the Public Interest, Inc. detiene i diritti su Debian®; Linus Torvalds detiene i diritti su Linux®; FreeBSD® è un marchio registrato di The FreeBSD Foundation; NetBSD® è un marchio registrato di The NetBSD Foundation; OpenBSD® è un marchio registrato di Theo de Raadt. Oracle Corporation detiene i diritti su Oracle®, MySQL®, e MyRocks®; Percona® è un marchio registrato di Percona LLC; MariaDB® è un marchio registrato di MariaDB Corporation Ab; REDIS® è un marchio registrato di Redis Labs Ltd. F5 Networks, Inc. detiene i diritti su NGINX® e NGINX Plus®; Varnish® è un marchio registrato di Varnish Software AB. Adobe Inc. detiene i diritti su Magento®; PrestaShop® è un marchio registrato di PrestaShop SA; OpenCart® è un marchio registrato di OpenCart Limited. Automattic Inc. detiene i diritti su WordPress®, WooCommerce®, e JetPack®; Open Source Matters, Inc. detiene i diritti su Joomla®; Dries Buytaert detiene i diritti su Drupal®. Amazon Web Services, Inc. detiene i diritti su AWS®; Google LLC detiene i diritti su Google Cloud™ e Chrome™; Microsoft Corporation detiene i diritti su Microsoft®, Azure®, e Internet Explorer®; Mozilla Foundation detiene i diritti su Firefox®. Apache® è un marchio registrato di The Apache Software Foundation; PHP® è un marchio registrato del PHP Group. CloudFlare® è un marchio registrato di Cloudflare, Inc.; NETSCOUT® è un marchio registrato di NETSCOUT Systems Inc.; ElasticSearch®, LogStash®, e Kibana® sono marchi registrati di Elastic N.V. Hetzner Online GmbH detiene i diritti su Hetzner®; OVHcloud è un marchio registrato di OVH Groupe SAS; cPanel®, L.L.C. detiene i diritti su cPanel®; Plesk® è un marchio registrato di Plesk International GmbH; Facebook, Inc. detiene i diritti su Facebook®. Questo sito non è affiliato, sponsorizzato o altrimenti associato a nessuna delle entità sopra menzionate e non rappresenta nessuna di queste entità in alcun modo. Tutti i diritti sui marchi e sui nomi di prodotto menzionati sono di proprietà dei rispettivi detentori di copyright. Ogni altro marchio citato appartiene ai propri registranti. MANAGED SERVER® è un marchio registrato a livello europeo da MANAGED SERVER SRL, Via Enzo Ferrari, 9, 62012 Civitanova Marche (MC), Italia.

Torna in alto