同步两台机器的最佳服务器

时间:2018-08-17 06:54:47

标签: ntp

我在悉尼有一台机器,在伦敦有一台机器,两个AWS实例都在运行。

我希望时间同步它们。我在确定最好由一个服务器服务另一个服务器还是让两个服务器都由服务器服务(例如,默认的ubuntu ntp服务器池)时遇到麻烦。或者,因为它们都是AWS EC2实例,这是否意味着在这种情况下,亚马逊服务器实际上是最佳选择?

1 个答案:

答案 0 :(得分:1)

为此,您应该分别将它们与位于每个AWS服务器附近的可靠源分开同步。 (例如,世界各地的一些服务器,以避免不必要的RTT等。)

NTP喜欢至少有3台服务器,最好是5台服务器进行同步。如果您选择的服务器来自受信任的一致来源,那么您应该很好,并且不会遇到任何问题。如果您分别同步两个服务器,则不必担心其中一台计算机发疯,并且使另一台计算机与世界其他地方不同步,或者做任何奇怪的事情。

如果您运行大型专用网络,则应考虑自己的计时源。

几个例子;

[AU NTP Pool] ---> [AU Server] 
[UK NTP Pool] ---> [UK Server]

每台服务器都独立于池中最近的源进行同步,服务器彼此独立,并且在参考“外部”时间时应该正确。例如,如果一个池存在根本问题,则服务器可能会有所不同。仅一台服务器上的整个网络中断或配置中断都会中断该一台服务器上的同步,而不会同时中断两者。

[AU NTP Pool] ---> [AU Server] <---> [UK Server] <--- [UK NTP Pool]

如上所述,但是2个服务器也可以互相通信。可以弥补池的外部网络中断,但允许在服务器之间进行AWS内部访问。 1次外部故障不应导致与任何一台服务器的同步丢失。

[AU Server] ---> [UK Server] <--- [NTP Pool]

使用此配置,如果UK服务器失去与池的连接,它将自由运行,并且两台服务器最终都可能与“外部”时间不同步。

要避免管理,提供最一致的覆盖范围,最简单的方法是使用第二个示例,其中两个服务器都与外部受信任的源以及彼此进行通信。这样一来,您应该可以覆盖大多数情况-但要花一些时间仔细选择上游服务器。

理想情况下,您希望在确定生产设置之前对其收集一些稳定性统计信息-您希望服务器与预期的ntp服务器之间的层数低(如果可以找到,则为1或2)并且RTT较低。