Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

17.10. Synchroniser avec le temps PTP ou NTP en utilisant Timemaster

Lorsque de multiples domaines PTP sont disponibles sur le réseau, ou lorsqu'un basculement sur NTP est nécessaire, le programme timemaster peut être utilisé pour synchroniser l'horloge système sur toutes les sources de temps disponibles. Le temps PTP est fourni par phc2sys et ptp4l via des horloges de référence de pilotes de mémoire partagée shared memory driver (SHM ) sur chronyd ou ntpd (selon le démon NTP qui a été configuré sur le système). Le démon NTP peut ensuite comparer toutes les sources de temps, PTP et NTP, et utiliser les meilleures sources pour synchroniser l'horloge système.
Lors du démarrage, timemaster lit un fichier de configuration qui spécifie les sources de temps NTP et PTP, vérifie quelles interfaces réseau possèdent la leur ou partagent une horloge matérielle PTP (PHC), génère des fichiers de configuration pour ptp4l et chronyd ou pour ntpd, et lance les processus ptp4l, phc2sys, et chronyd ou ntpd selon les besoins. Il supprimera également les fichiers de configuration générés lors de la fermeture. Il écrit des fichiers de configuration pour chronyd, ntpd, et ptp4l sur /var/run/timemaster/.

17.10.1. Lancer timemaster en tant que service

Pour lancer timemaster en tant que service, veuillez exécuter la commande suivante en tant qu'utilisateur root :
~]# systemctl start timemaster
Ceci lira les options dans /etc/timemaster.conf. Pour obtenir des informations supplémentaires sur la gestion des services système sur Red Hat Enterprise Linux 7, veuillez consulter le Chapitre 9, Gérer les services avec systemd.

17.10.2. Comprendre le fichier de configuration timemaster

Red Hat Enterprise Linux fournit un fichier /etc/timemaster.conf par défaut avec un certain nombre de sections contenant les options par défaut. Les en-têtes de section sont entre crochets.
Pour afficher la configuration par défaut, veuillez exécuter une commande comme suit :
~]$ less /etc/timemaster.conf
# Configuration file for timemaster

#[ntp_server ntp-server.local]
#minpoll 4
#maxpoll 4

#[ptp_domain 0]
#interfaces eth0

[timemaster]
ntp_program chronyd

[chrony.conf]
include /etc/chrony.conf

[ntp.conf]
includefile /etc/ntp.conf

[ptp4l.conf]

[chronyd]
path /usr/sbin/chronyd
options -u chrony

[ntpd]
path /usr/sbin/ntpd
options -u ntp:ntp -g

[phc2sys]
path /usr/sbin/phc2sys

[ptp4l]
path /usr/sbin/ptp4l
Remarquez la section suivante :
[ntp_server address]
Ceci est un exemple de section de serveur NTP, « ntp-server.local » est un exemple de nom d'hôte pour un serveur NTP sur le réseau LAN local. Ajoutez davantage de sections selon les besoins en utilisant un nom d'hôte ou une adresse IP faisant partie du nom de la section. Remarquez que les valeurs d'interrogation courtes dans cet exemple de section ne sont pas convenables pour un serveur public, veuillez consulter le Chapitre 16, Configurer NTP à l'aide de ntpd pour une explication sur des valeurs minpoll et maxpoll qui conviennent.
Remarquez la section suivante :
[ptp_domain number]
Un « PTP domain » est un groupe d'une ou plusieurs horloges PTP synchronisées. Elles peuvent être ou ne pas être synchronisées avec des horloges dans un autre domaine. Les horloges configurées avec le même numéro de domaine compose celui-ci. Cela inclut une horloge PTP « Grandmaster » . Le numéro de domaine dans chaque section « PTP domain » doit correspondre à l'un des domaines PTP configuré sur le réseau.
Une instance de ptp4l est lancée pour chaque interface possédant sa propre horloge PTP et l'horodatage matériel est activé automatiquement. Les interfaces qui prennent en charge l'horodatage matériel possèdent une horloge PTP (PHC) attachée, cependant il est possible pour un groupe d'interfaces sur un NIC de partager une horloge PHC. Une instance ptp4l séparée sera lancée pour chaque groupe d'interfaces partageant le même PHC et pour chaque interface qui prend en charge l'horodatage logiciel uniquement. Toutes les instances ptp4l sont configurées pour être exécutées en tant qu'esclaves. Si une interface avec horodatage matériel est spécifiée dans plus d'un domaine PTP, alors seule l'instance ptp4l créée aura l'horodatage matériel activé.
Remarquez la section suivante :
[timemaster]
La configuration timemaster par défaut inclut le ntpd du système et la configuration chrony (/etc/ntp.conf ou /etc/chronyd.conf) afin d'inclure la configuration des restrictions d'accès les clés d'authentification. Cela signifie que tout serveur NTP spécifié sera également utilisé avec timemaster.
Les en-têtes de section sont comme suit :
  • [ntp_server ntp-server.local] — spécifie les intervalles d'interrogation de ce serveur. Crée des sections supplémentaires selon les besoins. Inclut le nom d'hôte ou l'adresse IP dans l'en-tête de section.
  • [ptp_domain 0] — spécifier les interfaces sur lesquelle les horloges PTP sont configurées pour ce domaine. Crée des sections supplémentaires avec le numéro de domaine approprié, selon les besoins.
  • [timemaster] — spécifie le démon NTP à utiliser. Les valeurs possibles sont chronyd et ntpd.
  • [chrony.conf] — spécifie tout paramètre supplémentaire à copier dans le fichier de configuration généré pour chronyd.
  • [ntp.conf] — spécifie tout paramètre supplémentaire à copier dans le fichier de configuration généré pour ntpd.
  • [ptp4l.conf] — spécifie les options à copier dans le fichier de configuration généré pour ptp4l.
  • [chronyd] — spécifie tout paramètre supplémentaire à passer sur la ligne de commande pour chronyd.
  • [ntpd] — spécifie tout paramètre supplémentaire à passer sur la ligne de commande pour ntpd.
  • [phc2sys] — spécifie tout paramètre supplémentaire à passer sur la ligne de commande pour phc2sys.
  • [ptp4l] — spécifie tout paramètre supplémentaire à passer sur la ligne de commande pour toutes les instances de ptp4l.
Les en-têtes de section et le contenu sont expliqués en détails dans la page man timemaster(8).

17.10.3. Configurer les options timemaster

Procédure 17.1. Modifier le fichier de configuration timemaster

  1. Pour modifier la configuration par défaut, veuillez ouvrir le fichier /etc/timemaster.conf pour effectuer des modifications en tant qu'utilisateur root :
    ~]# vi /etc/timemaster.conf
  2. Pour chaque serveur NTP que vous souhaitez contrôler en utilisant timemaster, veuillez créer des sections [ntp_server address]. Remarquez que les valeurs d'interrogation courtes dans la section exemple ne conviennent pas à un serveur public, veuillez consulter le Chapitre 16, Configurer NTP à l'aide de ntpd pour une explication sur des valeurs minpoll et maxpoll qui conviennent.
  3. Pour ajouter des interfaces qui doivent être utilisées dans un domaine, veuillez modifier la section #[ptp_domain 0] et ajouter les interfaces. Créer des domaines supplémentaires selon les besoins. Par exemple :
    [ptp_domain 0]
           interfaces eth0
    
           [ptp_domain 1]
           interfaces eth1
  4. Si vous devez d'utiliser ntpd comme démon NTP sur ce système, veuillez modifier l'entrée par défaut dans la section [timemaster] de chronyd à ntpd. Veuillez consulter le Chapitre 15, Configurer NTP en utilisant Chrony Suite pour obtenir des informations sur les différences entre ntpd et chronyd.
  5. Si vous utilisez chronyd comme serveur NTP sur ce système, ajoutez toute option supplémentaire sous l'entrée par défaut include /etc/chrony.conf dans la section [chrony.conf]. Modifiez l'entrée par défaut include si le chemin vers /etc/chrony.conf a changé.
  6. Si vous utilisez ntpd comme serveur NTP sur ce système, ajoutez toute option supplémentaire sous l'entrée par défaut include /etc/ntp.conf dans la section [ntp.conf]. Modifiez l'entréer par défaut include si le chemin vers /etc/ntp.conf a changé.
  7. Dans la section [ptp4l.conf], ajoutez les options à copier au fichier de configuration généré pour ptp4l. Ce chapitre documente les options communes et davantage d'informations sont disponibles sur la page man de ptp4l(8).
  8. Dans la section [chronyd], veuillez ajouter les options de ligne de commande à passer sur chronyd lorsque appelé par timemaster. Veuillez consulter le Chapitre 15, Configurer NTP en utilisant Chrony Suite pour obtenir des informations sur l'utilisation de chronyd.
  9. Dans la section [ntpd], veuillez ajouter les options de ligne de commande à passer sur ntpd lorsque appelé par timemaster. Veuillez consulter le Chapitre 16, Configurer NTP à l'aide de ntpd pour obtenir des informations sur l'utilisation de ntpd.
  10. Dans la section [phc2sys], ajoutez les options de ligne de commande à passer sur phc2sys lorsque appelé par timemaster. Ce chapitre documente les options communes et davantage d'informations sont disponibles sur la page man de phy2sys(8).
  11. Dans la section [ptp4l], ajoutez les options de ligne de commande à passer sur ptp4l lorsque appelé par timemaster. Ce chapitre documente les options communes et davantage d'informations sont disponibles sur la page man de ptp4l(8).
  12. Enregistrez le fichier de configuration et redémarrez timemaster en saisissant la commande suivante en tant qu'utilisateur root :
    ~]# systemctl restart timemaster