Najlepszy wybór do konfiguracji klienta NTP

9

Zobaczmy, czy ktoś może rzucić nieco światła na ten temat ...

Wykonam instalację serwera w ciągu najbliższych dni. Mój klient chce wdrożyć Hortonworks HDP z 2 serwerami jako serwerami głównymi i 5 serwerami pracowników. Jednym z wymagań dla nich wszystkich jest włączenie NTP. Ale to wszystko, co mam, nie powiedział mi, czy chce lokalnego serwera działającego jak serwer NTP, czy też chce, żeby wszystkie 7 służyło jako klienci. System operacyjny to Centos 6.6 lub 6.7.

Więc moje pytanie brzmi:

Biorąc pod uwagę, że nie będzie to środowisko produkcyjne, ale bardziej „środowisko testowe”, który byłby twoim wyborem do konfiguracji NTP na tych komputerach? Wszystkie 7 działa jako klienci lub 1-2 serwery i pięciu klientów?

lgg
źródło

Odpowiedzi:

9

Czuję dość mocno, że dwa lokalne serwery, z którymi wszyscy inni się wiążą, to właściwa droga. NTP jest zaprojektowany do pracy w ten sposób i minimalizuje obciążenie serwerów publicznych / puli.

Prowadzę serwer puli NTP. Nawet w obszarach z dobrze wypełnionymi pulami obciążenie jest nadal znaczące (pracuję ze średnią roczną liczbą 25 żądań klientów na sekundę, co oznacza około 2,5 miliona dziennie). W niektórych częściach świata pule są tak małe, że niewielu ludzi, którzy zarządzają serwerami puli, jest dość przytłoczonych .

Edit : Aaron Copley sprawia, że doskonały punkt, że dwa serwery będą zarówno być odrzucony przez klientów, czy tylko jeden z nich jest out-of-sync , ale wciąż uważa, że to poprawne (patrz, to pytanie ), i że mając dwie (a nie tylko jeden) po prostu podwaja pojedynczy punkt awarii. Ma absolutną rację, że trzy byłyby lepsze, a w większej sieci produkcyjnej zgodziłbym się, że jest to właściwe w tym przypadku użycia. Z mojego doświadczenia wynika jednak, że właściwie skonfigurowany protokół NTPd działa znacznie częściej niż ulega awarii, a ryzyko, że pojedynczy serwer będzie niedostępny, a zegary klienta zbyt daleko od synchronizacji, aby automatycznie się zregenerować, znacznie przewyższa ryzyko, że jeden serwer reklamuje awarię czas i unieważnienie obu.

Dla mnie dwa to odpowiednia liczba serwerów zsynchronizowanych w górę dla tej sieci - ale zdecydowanie jest uzasadniona dyskusja na ten temat i jestem wdzięczny Aaronowi za podniesienie racji.

Szalony Kapelusznik
źródło
1
Jeden serwer jest lepszy od dwóch. Jeśli miało się zdarzyć, że te dwa serwery nie zsynchronizują się, algorytm NTP nie będzie w stanie ustalić, który jest dokładny i odrzuci oba. Jeszcze lepiej byłoby trzy, a opiekunowie uważają to za minimalną liczbę serwerów do skonfigurowania.
Aaron Copley,
Nie mam wątpliwości, że masz bardziej praktyczne doświadczenie, ale coś z 1 lub 3, ale nigdy 2 nie utknęło we mnie. Dziękujemy za wzmiankę w Twojej edycji. :)
Aaron Copley
Porada przeciwko dwóm opiera się całkowicie na problemach, które występują, jeśli się nie zgadzają, i na tej podstawie jest doskonała. Po prostu okazuje się, że często nie zdarza się to bez utraty synchronizacji jednego z serwerów i dyskwalifikacji się jako źródła . Jedno byłoby w porządku, jestem pewien; dwa dają większą wytrzymałość. Ale osobiście (i to w dużej mierze moim zdaniem) uważam, że trzy to za dużo, z grupy siedmiu, pod względem obciążenia puli. Mimo to, jak już powiedziałem, jest to doskonała uwaga i zdecydowanie coś, o czym ludzie powinni pomyśleć; Byłem zachwycony, że mogłem ci podziękować za podniesienie go.
MadHatter
Link z @AaronCopley powyżej bardzo wyraźnie uzasadnia, dlaczego 4 należy uznać za dolną granicę dla liczby źródeł (serwerów lub równorzędnych) dla dokładnego zachowania czasu i nadal pozwalających na zaplanowaną konserwację lub usterkę jednego z nich. Jeśli żaden serwer nie jest złośliwy, 2 jest bardziej prawdopodobne, że będzie dokładne niż 1 (ponieważ przez większość czasu okna będą się nakładać), a 3 to minimum, aby umożliwić efektywne działanie algorytmów klastrowania i przecięcia NTP.
Paul Gear
@PaulGear, jak mówisz, w dużej sieci cztery są rozsądnie niskie; mój serwer puli ma pięć źródeł. Ale, jak sami zauważacie, „ jeśli żaden serwer nie jest złośliwy, prawdopodobieństwo wystąpienia błędu 2 jest większe niż 1 ”, więc w małej sieci, takiej jak OP, gdzie cztery są nieuzasadnioną przesadą, dwa wydają mi się właściwą równowagą między usługami udostępnianie i przeciążanie puli. Oczywiście, jeśli tworzysz własne serwery warstwy 1, masz ich tyle, ile chcesz i możesz sobie pozwolić; moja odpowiedź dotyczy wyłącznie kompromisu między obowiązkiem publicznym a usługą prywatną podczas korzystania z serwerów puli.
MadHatter,
4

Przy tak małym środowisku, które zostało oznaczone jako „testowanie”, zepchnęłam NTP na brzeg sieci. Uruchom serwer NTP na przełączniku lub routerze, jeśli możesz, i skonfiguruj go dla 3 lub więcej źródeł czasu pobierania . Następnie wskaż tutaj wszystkie 7 węzłów. Prawdopodobnie jest to Twoja jedyna ścieżka dostępu do Internetu, więc konfigurowanie dodatkowych źródeł czasu „wewnątrz” nie przyniosłoby żadnych korzyści w przypadku awarii przełącznika lub awarii sieci. Będziesz miał gorsze problemy niż synchronizacja czasu, jeśli Twoja sieć nie działa.

Aaron Copley
źródło
0

Wybrałbym 1-2 serwery. Oszczędzasz puli kilka próśb. A jeśli stracisz łączność z pulą na dłuższy okres czasu z powodu pewnych powodów, przynajmniej maszyny w wewnętrznej sieci pozostaną ze sobą zsynchronizowane.

Piotr
źródło