NTP:如何为NTP服务器建立冗余解决方案?

Ita*_*not 5 ntp time-synchronization redundancy centos6

在我公司的基础设施中,有 5 个数据中心位于偏远地区。

在每个远程位置,有一对服务器保存 DNS 和 NTP 服务,并在该位置的每台服务器上进行配置,以从这两个服务器获取 DNS 和 NTP 调用。

所有服务器都是 CentOS 6.x 机器。

有动机在这两个服务器之间创建 DNS 和 NTP 冗余。

涵盖了 DNS 部分,我只有 NTP 有问题。

确保当一个 NTP 服务器出现故障时,第二个/其余服务器将继续为客户端提供服务的正确方法是什么?

我已经谷歌搜索并找到了一个RedHat 解决方案来将其中一台服务器设置为主服务器(通过在客户端中将其配置为“true”),但万一“true”(主)服务器出现故障......然后它失败了,客户端不会从中获取 NTP 更新,因此它不是纯粹的冗余解决方案。

我想知道是否有人有任何配置此类解决方案的经验?

编辑#1:

为了测试 MadHatter 的答案,我做了以下工作:

  1. 我已经停止了服务器上的 NTPd,该服务器在每个 NTP 客户端上都配置为“首选”。
  2. 我正在等待 NTP 客户端停止针对此服务器工作并开始针对其合作伙伴 NTPd 服务器工作。
  3. 我正在ntpq -p客户端上运行以查看更改。这是输出ntpq -p
[root@ams2proxy10 ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 10.X.X.38      .INIT.          16 u    -  128    0    0.000    0.000   0.000
*10.X.X.39      131.211.8.244    2 u    2   64  377    0.123    0.104   0.220
Run Code Online (Sandbox Code Playgroud)

什么是“在 ntpq 中”?我应该运行哪个命令?

编辑#2: 输出为:

[root@ams2proxy10 ~]# ntpq
ntpq> as

ind assid status  conf reach auth condition  last_event cnt
===========================================================
  1 64638  8011   yes    no  none    reject    mobilize  1
  2 64639  963a   yes   yes  none  sys.peer    sys_peer  3
ntpq>
Run Code Online (Sandbox Code Playgroud)

pe的输出:

ntpq> pe
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 10.X.X.38      .INIT.          16 u    -  512    0    0.000    0.000   0.000
*10.X.X.39      131.211.8.244    2 u   36   64  377    0.147    0.031 18874.7
ntpq>
Run Code Online (Sandbox Code Playgroud)

Mad*_*ter 11

我怀疑这不是问题:NTP 已经对此具有弹性。

您没有“主要”NTP 服务器和一些辅助服务器:您有一组已配置的服务器。NTPd 将决定哪个可靠,哪个最有可能提供良好的时间信号,并且会不断重新评估其决定。

这是过去一个月左右来自我的 NTP 池服务器的一组绑定:

munin NTP 状态图

如您所见,大部分时间状态 6(系统对等方)都被绿线 占据ntp0.jonatkins.com,这是我绑定的第 1 层服务器(我所有其他服务器都是第 2 层,因此 NTPd 更喜欢更高的层)服务器(如果没有其他因素适用)。

但是您可以在第 44 周初看到该线的下降,并且图像下方的数值证实,在图表期间,ntp0.jonatkins.com下降到状态 4(异常值),而linnaeus.inf.ed.ac.uk,其大部分时间都处于状态 5(候选人),但最高为 6(系统对等)。(线条不会一直下​​降到 4 / 最多 6,因为这些是 5 分钟原始数据的 2 小时平均值;据推测,发生的任何事情都持续不到 2 小时,因此已被平滑。)

这表明,在我没有任何意见的情况下,NTPd 在某个时候决定其通常的对等方不够可靠,并在“中断”期间选择了最佳替代来源。一旦其首选对等方再次通过其内部 QA 测试,它就会恢复到对等方状态。