Dryft czasu

Odpowiedzi:

24

Network Time Protocol, lub NTP, może służyć do synchronizacji czasu na serwerze z wiarygodnym źródłem. Na przykład serwery Windows wykorzystają jeden z kontrolerów domeny sieci (kontroler domeny, który pełni rolę emulatora PDC FSMO dla domeny [dzięki Graeme]), aby uzyskać informacje o czasie. Możesz skonfigurować kontroler domeny, aby pobierał informacje z niektórych znanych źródeł, takich jak time.windows.com.

Justin Scott
źródło
3
Jeśli możesz to zorganizować, zdecydowanie polecam korzystanie z puli serwerów NTP, ponieważ pozwoli ci to uzyskać dostęp do kilku źródeł czasu, jednocześnie ładnie rozkładając obciążenie. Zobacz pool.ntp.org, aby uzyskać informacje na temat użytkowania.
Avery Payne
2
Chcę tylko wyjaśnić, że w środowisku Windows nie jest to tylko „jeden z” kontrolerów domeny, które przyjmują rolę serwera NTP dla wszystkich członków domeny, to w szczególności kontroler domeny, który pełni rolę emulatora PDC FSMO dla domeny. Skonfigurujesz tego kontrolera domeny do synchronizacji z serwerem NTP w puli, a wszystkie inne maszyny przyłączone do domeny, w tym wszystkie pozostałe kontrolery domeny w domenie, automatycznie synchronizują się z tym kontrolerem domeny.
ThatGraemeGuy
9

I aby reprezentować tłum maszyn wirtualnych ...

Jeśli korzystasz z serwerów wirtualnych , zmiana czasu wydaje się być częstym problemem - dlatego zwykle istnieje sposób (inny niż NTP), aby utrzymać synchronizację maszyn wirtualnych z hostem.

W moim przypadku używam VMWare. Mogę to włączyć w maszynie wirtualnej systemu Linux, używając:

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

A z maszyny wirtualnej Windows możesz otworzyć ikonę vmware-tools na pasku zadań i wybrać synchronizację czasu między maszyną wirtualną a systemem operacyjnym hosta

Brent
źródło
2
W rzeczywistości nie chcesz tego robić. Poniżej zamieściłem dość skomplikowaną odpowiedź. W skrócie: vmware-tools SyncTime jest zepsuty, a ntp jest właściwą drogą.
wzzrd
1
vmware zaleca teraz używanie ntpd na maszynach wirtualnych zamiast tego
Alex J
6

VMwareTools SyncTime nie jest dobrą opcją dla maszyn wirtualnych w ESX! Sam VMware zmienił swoje zalecenia dotyczące mierzenia czasu w maszynach wirtualnych na używanie NTP zamiast vmware-tools, jeśli wystąpią problemy.

Rozmawiałem o tym z inżynierem z VMware na VMworld i powiedziano mi, że vmware-tools nigdy nie zostało zaprojektowane do wykonywania zadań, które wykonuje teraz. W dawnych czasach utrata przerwań była dużym problemem. Dzisiaj znacznie mniej. To jest powód, dla którego vmware-tools jest w stanie skorygować czas pracy maszyny, jeśli maszyna jest z tyłu, ale nie wtedy, gdy maszyna jest z przodu. W rzeczywistości, gdy maszyna wyprzedza „czas rzeczywisty”, jesteś prawie wkręcony, jeśli używasz narzędzi vmware do pomiaru czasu.

Jeszcze lepiej: podczas korzystania z NTTP proces, który koryguje twój czas, tak naprawdę budzi się rzadziej niż w przypadku korzystania z narzędzi vmware. Tak więc dla maszyn wirtualnych ntp zapewni mniejszy narzut zamiast więcej.

Dlatego w systemie Linux zawsze powinieneś używać ntp na maszynach wirtualnych VMware. Całkowicie wyłącz synchronizację narzędzi vmware.

W przypadku maszyn wirtualnych z systemem Windows na Vmware jestem mniej pewien, ale myślę, że jest prawie tak samo. Użyj wbudowanej synchronizacji czasu w AD, która działa lepiej niż VMware SyncTime. (Mimo że synchronizacja czasu AD sama w sobie jest bardzo kiepska; jedynym powodem istnienia jest synchronizacja Windows Boxena z kontrolerami domeny, a Kerberos będzie nadal działał, dopóki różnica zegarowa będzie mniejsza niż około 5 minut, więc jest wiele mniejsza potrzeba dokładności.)

Więcej informacji na temat synchronizacji czasu VMware w systemie Linux można znaleźć tutaj

wzzrd
źródło
4

Użyj demona NTP.

iny
źródło
4

NTP jest twoim przyjacielem.

RHEL / CentOS:

yum install ntpd

Debian / Ubuntu:

apt-get install ntpd

Windows:

  • W systemie Windows 2000 : Tardis 2000 . Działa ładnie, jest wyposażony w panel sterowania. Jeśli tego używasz, pamiętaj, aby wyłączyć usługę Czas systemu Windows.
  • W systemie Windows 2003/2008 : Wspomniano już w innych odpowiedziach na to pytanie. Alternatywnie możesz uruchomić Tardis 2000 na urządzeniu 2k3, nie wiem czy to działa na 2k8.
  • Dla dowolnej stacji roboczej Windows : uruchom następujące polecenie przy logowaniu: net time /domain:your-domain-here

Dla wszystkich usług NTP:

Skieruj swoją usługę na pool.ntp.org, chociaż będziesz chciał przynajmniej zawęzić ją do tego samego kontynentu. Na przykład serwery w USA używają 0.us.pool.ntp.org, 1.us.pool.ntp.org, 2.us.pool.ntp.org itp.

Avery Payne
źródło
3

Jak wielu odpowiedziało, NTP jest właściwą drogą. W zależności od potrzeb i wymagań istnieje kilka możliwych projektów, których można użyć do synchronizacji czasu.

  1. Zsynchronizuj poszczególne maszyny z hostem publicznym, tj. Pool.ntp.org
  2. Wyznacz lokalnego mistrza (z wcześniejszym NTP) i zsynchronizuj z nim wszystko inne
  3. Lokalny mistrz z podłączonym własnym sprzętem GPS (może być $$$)

Jeśli masz wiele komputerów, opcje 2 i 3 są o wiele bardziej przyjazne dla sieci. Aby uzyskać więcej informacji, przeczytaj o NTP i warstwach zegara .

Ponadto uważam, że domyślny interwał synchronizacji systemu Windows jest zbyt długi (raz w tygodniu), co prowadzi do zbyt dużego odchylenia. Powinieneś sprawdzić poniższe, jeśli chcesz ustawić rzeczy na krótszy okres (używam raz dziennie).

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

Jauder Ho
źródło
2

Dobry dobry serwer NTP. Skonfiguruj go tak, aby zegar nie płynął dłużej niż kilka sekund od ostatniej synchronizacji NTP i nie powinieneś mieć żadnych problemów.

Jeśli Twój serwer dryfuje dłużej niż 30 sekund dziennie, możesz chcieć spojrzeć na lepsze alternatywy, ale zegary w większości komputerów są zazwyczaj znacznie lepsze niż 30 sekund dziennie, więc jedna synchronizacja dziennie jest zwykle w porządku.

UWAŻAJ, że możesz pominąć minuty, jeśli ustawisz okresową synchronizację (ntpdate) i nie korzystasz z demona NTP (ntpd) - jeśli opóźniasz się o 3 sekundy, a synchronizacja NTP podejmuje próbę aktualizacji po 10 minutach 58 sekundach przeskoczy do 11 minut na 1 sekundę, aw zależności od używanego harmonogramu może nie wyzwalać 11 minutowych zadań.

Demon NTP działa w tle i powoli ustala czas, więc programy i procesy zauważają, że czas może iść nieco szybciej lub wolniej niż zwykle, ale nie przeskakuje na sekundę.

-Adam

Adam Davis
źródło
1

Tak, serwer NTP jest potrzebny do synchronizacji czasu na twoim DC. Przeczytaj ten artykuł, aby uzyskać instrukcje dotyczące synchronizowania kontrolera domeny ze źródłem zewnętrznym , oraz ten artykuł z bazy wiedzy na temat konfigurowania autorytatywnego serwera czasu w systemie Windows 2003. Będziesz potrzebował obu, aby utrzymać synchronizację czasu domeny. Stacje robocze dołączone do domeny automatycznie synchronizują się z autorytatywnym serwerem czasu.


źródło
0

Użyj wspólnego źródła zegara dla wszystkich serwerów i upewnij się, że strefy czasowe są ustawione poprawnie. Dobrym źródłem internetowym jest „time.windows.com”. Jeśli korzystasz z systemu Windows, możesz używać poleceń „net time” i „w32tm” dla poleceń związanych z czasem.

Jeroen Landheer
źródło