[ntp:questions] Advice on a private stratum 2 pool
youssef.ghorbal at gmail.com
Mon Jul 1 10:12:24 UTC 2019
I'm seeking advice on what would be the best configuration to build a
private/internal stratum 2 pool. The idea is to provide internal
hosts/servers (~5000) with an NTP pool to sync to.
I'm not seeking very high precision/accuracy, I'm just hoping to
provide reliable and uniform time reference.
I've settled on running 4 ntpd on 4 different servers (the "4" comes
from NTP FAQ regarding the minimum number of hosts) I've also selected
4 stratum 1 available and public servers in my area.
I'm currently reviewing NTP FAQ regarding what would be the best
architecture but I've no clue :
- Option 1 : each one of the ntpd is configured to sync to one and
only one upstream stratum 1 server. In this option my stratum 2 hosts
are not aware of each other. On the client side I configure a pool
pointing to a DNS Round Robin enslaving my 4 NTP servers.
=> This works OK but it does not seem to be the one described in this
NTP architecture http://www.ntp.org/ntpfaq/NTP-s-config-adv.htm where
stratum n-1 are peered together
- Option 2 : Starting from Option 1, I add on each stratum 2 server a
peer directive pointing to the 3 others. After some time, an NTP
hierarchy is created stratum 3 and sometimes 4 gets created. For
exemple ntp03 becomes a stratum 3 poiting to ntp01 which is pointing
to an upstream stratum 1. ntp03 totally ignores it's configured
stratum 1 (for many valid reasons I guess)
=> On the client side too, the one ntp the peer "elected" as the best
is also the one chosed by the client. This Option seems to be more
aligned with previsously referenced architecture but I can't tell why
I don't like it (maybe that I'm expecting that my pool would be
Do you think that I should be using the same 4 upstream NTP stratum 1
servers on all my stratum 2 servers? My failure scenario is if one of
those upstream is faulty, my pool detect it and everything continues
to work (and if my Internet connection is dead, I have more bigger
problems than NTP going out of sync)
How would you do it ? Do you have any pointers to reference NTP architectures ?
Thank you for your help
More information about the questions