Dérive du temps

Réponses:

24

Le Network Time Protocol, ou NTP, peut être utilisé pour synchroniser l'heure sur un serveur avec une source faisant autorité. Les serveurs Windows, par exemple, utiliseront l'un des contrôleurs de domaine réseau (le contrôleur de domaine qui détient le rôle FSMO de l'émulateur PDC pour le domaine [merci Graeme]) pour obtenir des informations sur l'heure. Vous pouvez configurer le contrôleur de domaine pour obtenir des informations d'une source connue, telle que time.windows.com.

Justin Scott
la source
3
Si vous pouvez l'arranger, je vous recommande fortement d'utiliser le pool de serveurs NTP car il vous permettra d'avoir accès à plusieurs sources de temps, tout en répartissant la charge de manière agréable. Voir pool.ntp.org pour l'utilisation.
Avery Payne
2
Je veux juste préciser que dans un environnement Windows, ce n'est pas seulement "l'un" des contrôleurs de domaine qui assument le rôle de serveur NTP pour tous les membres du domaine, c'est spécifiquement le contrôleur de domaine qui détient le rôle FSMO de l'émulateur PDC pour le domaine. Vous devez configurer ce contrôleur de domaine pour qu'il se synchronise à partir d'un serveur NTP dans le pool, et toutes les autres machines qui sont jointes au domaine, y compris tous les autres contrôleurs de domaine du domaine, se synchroniseraient automatiquement avec ce contrôleur de domaine.
ThatGraemeGuy
9

Et pour représenter la foule des machines virtuelles ...

Si vous exécutez des serveurs virtuels , la dérive du temps semble être un problème commun - et il existe donc généralement un moyen (autre que NTP) de garder les machines virtuelles synchronisées avec leur hôte.

Dans mon cas, j'utilise VMWare. Je peux l'activer à partir d'une machine virtuelle Linux en utilisant:

vmware-guestd --cmd "vmx.set_option synctime 0 1"

Et à partir d'une machine virtuelle Windows, vous pouvez ouvrir l' icône vmware-tools dans la barre d'état système et sélectionner la synchronisation de l'heure entre la machine virtuelle et le système d'exploitation hôte

Brent
la source
2
En fait, vous ne voulez pas faire ça. J'ai posté une réponse assez élaborée ci-dessous. En bref: vmware-tools SyncTime est cassé et ntp est le chemin à parcourir.
wzzrd
1
vmware vous recommande désormais d'utiliser ntpd sur les machines virtuelles au lieu de cela
Alex J
6

VMwareTools SyncTime n'est pas une bonne option pour les machines virtuelles sur ESX! VMware lui-même a modifié ses recommandations de chronométrage dans les machines virtuelles pour utiliser NTP au lieu de vmware-tools si vous rencontrez des problèmes.

J'en ai parlé à un ingénieur de VMware chez VMworld une fois et on m'a dit que vmware-tools n'avait jamais été conçu pour faire le travail qu'il fait actuellement. Autrefois, les interruptions perdues étaient un gros problème. Aujourd'hui beaucoup moins. C'est la raison pour laquelle vmware-tools est capable de corriger le temps de votre machine si la machine est derrière, mais pas quand la machine est en avance. En fait, une fois que la machine devance le temps «réel», vous êtes à peu près foutu si vous utilisez vmware-tools pour faire du chronométrage.

Mieux encore: lorsque vous utilisez ntp, le processus qui corrige votre temps se réveille en réalité moins souvent que l'utilisation de vmware-tools. Ainsi, pour les machines virtuelles, ntp fournira moins de surcharge au lieu de plus.

Par conséquent, pour Linux, vous devez toujours utiliser ntp dans les machines virtuelles VMware. Désactivez complètement Syntime vmware-tools.

Pour les VM Windows sur Vmware, je suis moins sûr, mais je pense que c'est à peu près la même chose. Utilisez la synchronisation de l'heure intégrée dans AD, qui fonctionne mieux que VMware SyncTime. (Même si la synchronisation de l'heure AD est assez mauvaise en soi; sa seule raison d'exister est de garder Windows boxen en synchronisation avec leurs contrôleurs de domaine et Kerberos fonctionnera toujours tant que la différence d'horloge est inférieure à environ 5 minutes, donc il y a beaucoup moins besoin de précision.)

Vous pouvez lire un peu plus sur la synchronisation de l'heure VMware sous Linux ici

wzzrd
la source
4

Utilisez le démon NTP.

iny
la source
4

NTP est votre ami.

RHEL / CentOS:

yum install ntpd

Debian / Ubuntu:

apt-get install ntpd

Les fenêtres:

  • Pour Windows 2000 : Tardis 2000 . Fonctionne bien, est livré avec un panneau de contrôle. Si vous l'utilisez, veillez à désactiver le service de temps Windows.
  • Pour Windows 2003/2008 : déjà mentionné dans d'autres réponses à cette question. Alternativement, vous pouvez exécuter Tardis 2000 sur une box 2k3, je ne sais pas si cela fonctionne sur 2k8.
  • Pour tout poste de travail Windows : exécutez la commande suivante lors de la connexion: net time /domain:your-domain-here

Pour tous les services NTP:

Pointez votre service sur pool.ntp.org, bien que vous souhaitiez au moins le limiter au même continent. Par exemple, les serveurs américains utiliseraient 0.us.pool.ntp.org, 1.us.pool.ntp.org, 2.us.pool.ntp.org, etc.

Avery Payne
la source
3

Comme beaucoup l'ont répondu, le NTP est la voie à suivre. Selon vos besoins et exigences, il existe plusieurs conceptions possibles que vous pouvez utiliser pour synchroniser l'heure.

  1. Synchronisez les machines individuelles avec l'hôte public, c'est-à-dire pool.ntp.org
  2. Désignez un maître local (avec NTP en amont) et synchronisez tout le reste avec lui
  3. Maître local avec votre propre GPS connecté (peut être $$$)

Si vous avez plusieurs machines, les options 2 et 3 sont beaucoup plus conviviales pour le réseau. Pour plus de détails, lisez le NTP et les strates d'horloge .

De plus, je trouve que l'intervalle par défaut de Windows pour la synchronisation est trop long (une fois par semaine), ce qui entraîne trop de dérive. Vous devriez vérifier ce qui suit si vous souhaitez régler les choses sur une période plus courte (j'utilise une fois par jour).

http://www.softpedia.com/get/System/System-Miscivers/Internet-Time-Update.shtml http://www.tweakxp.com/article36948.aspx

Jauder Ho
la source
2

Un bon serveur NTP, principalement. Configurez-le de sorte que l'horloge n'ait pas dérivé plus de quelques secondes depuis la dernière synchronisation NTP et vous ne devriez pas avoir de problèmes.

Si votre serveur dérive plus de 30 secondes par jour, vous voudrez peut-être chercher de meilleures alternatives, mais les horloges à l'intérieur de la plupart des ordinateurs sont généralement bien meilleures que 30 secondes par jour, donc une synchronisation par jour est généralement bien.

Sachez que vous pourriez sauter des minutes si vous le configurez pour se synchroniser périodiquement (ntpdate), et n'utilisez pas le démon NTP (ntpd) - si vous êtes en retard de 3 secondes et que la synchronisation NTP tente une mise à jour à 10 minutes 58 secondes , il passera à 11 minutes 1 seconde, et selon le planificateur que vous utilisez, il peut ne pas déclencher les tâches de 11 minutes.

Le démon NTP s'exécute en arrière-plan et fixe l'heure lentement afin que les programmes et les processus remarquent que l'heure peut aller un peu plus rapidement ou plus lentement que d'habitude, mais elle ne sautera pas la seconde.

-Adam

Adam Davis
la source
1

Un serveur NTP, c'est ce qui est nécessaire pour synchroniser l'heure sur votre DC, oui. Lisez cet article pour obtenir des instructions sur la synchronisation de votre contrôleur de domaine avec une source externe et cet article de la base de connaissances sur la configuration d'un serveur de temps faisant autorité avec Windows 2003. Vous aurez besoin des deux pour conserver la synchronisation de l'heure de votre domaine. Les postes de travail joints au domaine se synchroniseront automatiquement avec le serveur de temps faisant autorité.


la source
0

Utilisez une source d'horloge commune pour tous vos serveurs et assurez-vous que vos fuseaux horaires sont correctement configurés. Une bonne source Internet est "time.windows.com". Si vous utilisez Windows, vous pouvez utiliser "net time" et "w32tm" pour les commandes liées au temps.

Jeroen Landheer
la source