1 votes

Déviation du timestamp Unix

J'ai deux serveurs Ubuntu qui synchronisent leur horodatage avec europe.pool.ntp.org chaque nuit. Juste avant la synchronisation, je peux voir une différence de 4 secondes entre les deux serveurs. L'un des serveurs semble s'écarte de 4 secondes en 24 heures.

  • S'agit-il plutôt d'un problème matériel ou logiciel ?
  • Existe-t-il un moyen de corriger cela, en dehors de la synchronisation plusieurs fois par jour ?
  • Si la seule solution est de synchroniser plus souvent, y a-t-il des conséquences pour le serveur ?

Merci, Olivier

2voto

coredump Points 12455

C'est une caractéristique des horloges d'ordinateur. Vous pouvez en lire un peu plus à ce sujet ici et un peu sur le dérive de l'horloge sur wikipedia.

Synchroniser plus souvent est le meilleur moyen de lutter contre cela. Je synchronise normalement les horloges toutes les heures avec un serveur local qui se synchronise également une fois par heure. Vous pouvez avoir plusieurs serveurs pour assurer la redondance de ntp.

Il existe des pools ntp que vous pouvez utiliser, synchronisés avec des horloges de haute résolution comme ntp.org.

2voto

Hurda Points 614

Le décalage horaire est absolument une partie normale de la mesure du temps sur un ordinateur, mais les détails sur combien de décalage se produit peut dépendre de beaucoup de choses différentes. En cas de décalage "anormalement grand", les raisons peuvent aller d'une horloge matérielle de basse qualité à un système avec une forte utilisation. Ainsi, se maintenir synchronisé avec un serveur de temps externe, canonique, est une étape très importante.

La meilleure configuration est d'utiliser ntpdate pour définir l'heure au démarrage, puis d'utiliser ntpd en cours de route pour prendre en compte le décalage horaire. J'ai entendu des plaintes par le passé au sujet de ntpd qui consommerait beaucoup de ressources (je ne peux pas parler de l'exactitude, seulement que j'ai souvent entendu cette plainte), mais les implémentations modernes sont presque imperceptibles. La véritable élégance de ntpd réside dans deux points principaux :

  • Il surveillera le décalage horaire au fil du temps pour déterminer à quelle vitesse votre horloge dérive et ajustera en conséquence sa fréquence de sondage
  • Chaque fois qu'une synchronisation se produit, il utilisera ces calculs de dérive et ramènera lentement votre horloge à l'heure

Cela présente l'avantage considérable de minimiser l'impact des changements d'heure sur votre système, par exemple vous n'aurez pas des situations où les horodatages dans les journaux semblent sauter.

Je recommande vivement de configurer plusieurs serveurs dans votre configuration, cela peut facilement être fait en éditant le fichier /etc/ntp.conf et en ajoutant plusieurs déclarations de serveurs. Par exemple ;

serveur ntp.ubuntu.com
serveur 0.pool.ntp.org
serveur 1.pool.ntp.org

Pour discuter des serveurs NTP publics disponibles, vous pouvez voir la question -- Serveurs NTP publics

Un avertissement concernant ntpd est le suivant : si votre heure est trop décalée, alors il ne corrigera pas votre heure. Pour citer la page de manuel (selon RHEL5.6)

Dans le cas où il n'y a pas de puce TOY ou pour quelque raison sa heure est de plus de 1000s du temps du serveur, ntpd suppose qu'il doit y avoir un grave problème et que la seule action fiable est pour l'opérateur d'intervenir et de régler l'horloge manuellement. Cela provoque ntpd à quitter avec un message de panique dans le journal du système.

C'est pourquoi je considère important de définir l'heure au démarrage. Pendant que la machine est éteinte, vous vous appuyez sur l'horloge matérielle et la pile CMOS pour maintenir l'heure. De plus, dans le cas d'une VM, le retour à l'instantané déclenchera presque certainement cette condition. Garder cela à l'esprit est une considération importante si vous utilisez des applications sensibles au temps, telles que l'authentification Kerberos.

1voto

Todd Price Points 703

Il suffit d'utiliser ntpd. Il diminue les charges sur les serveurs en leur parlant lorsqu'ils sont moins occupés et ont moins de latence. En fonctionnant en continu, il peut surveiller plus étroitement l'horloge et modéliser la dérive avec plus de paramètres que simplement la vitesse.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X