yum install ntp安装完成后

一、配置自定义NTP服务:

1.执行命令sudo vi /etc/ntp.conf用vim打开并编辑NTP服务配置文件。
2.找到server ntp 服务器 iburst的信息后,输入i开始编辑文件,给您暂时不需要的NTP服务器句首加上#隐藏起来。
3.新添加一行NTP服务器信息,格式为:server 您需要添加的NTP服务器 iburst。完成编辑后按下Esc键并输入:wq保存退出。
4.执行命令sudo service ntpd start启用自定义的NTP服务。
5.执行命令chkconfig ntpd on启用NTP服务。
6.执行命令ntpstat查看是否启用了NTP服务。

CentOS 7.5, 配置过ntpd与某个时间服务器同步后,偶然发现某一个节点的NTP synchronized一直是no:
尝试是否联通

ntpdate -u 172.16.172.17
 no server suitable for synchronization found

从服务器出现以下原因,我一直以为从服务器已经关了防火墙,原因就是防火墙

$ ntpstat
  unsynchronised
  time server re-starting
  polling server every 8 s

二、主服务器设置成ntp.aliyun.com,想试试 date -s 10:10:10 靠ntp能不能自动改回来,结果:

NTP synchronized: no。如果安装了 NTP,并用它替代 timedatectl 来同步时间,则 NTP synchronized 将被设置为 yes。

Local time: 二 2019-07-30 09:41:08 CST
  Universal time: 二 2019-07-30 01:41:08 UTC
    RTC time: 二 2019-07-30 01:08:13
   Time zone: Asia/Shanghai (CST, +0800)
 NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
  DST active: n/a
具体原因不清楚,可能执行date后与ntp冲突,如果输入ntpstat正常的话那就再等等几分钟,如果不行再试试以下方式

解决NTP synchronized: no的方法:

timedatectl

Local time: 二 2019-07-30 09:41:08 CST
  Universal time: 二 2019-07-30 01:41:08 UTC
    RTC time: 二 2019-07-30 01:08:13
   Time zone: Asia/Shanghai (CST, +0800)
 NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
  DST active: n/a

停掉ntpd, 执行ntpd -gq重新调整时间后,再启动ntpd:

systemctl stop ntpd

sudo ntpd -gq

ntpd: time slew +0.002311s

systemctl start ntpd

等待一会儿后,NTP synchronized恢复成yes:

timedatectl

Local time: 二 2019-07-30 09:44:28 CST
  Universal time: 二 2019-07-30 01:44:28 UTC
    RTC time: 二 2019-07-30 01:44:28
   Time zone: Asia/Shanghai (CST, +0800)
 NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
  DST active: n/a

关于timedatectl命令

$ sudo timedatectl set-ntp false
[sjz@mzy /]$ ntpq -p
ntpq: read: Connection refused
[sjz@mzy /]$ timedatectl
      Local time: 六 2020-09-19 15:55:56 CST
  Universal time: 六 2020-09-19 07:55:56 UTC
        RTC time: 六 2020-09-19 07:55:56
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: no
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a
[sjz@mzy /]$ ntpstat
Unable to talk to NTP daemon. Is it running?

过一会NTP synchronized: yes 改为no
如果需要使用ntp,重启ntp服务,这时执行ntpq -p和ntpstat都显示正常,但
NTP enabled: no

$ timedatectl
      Local time: 六 2020-09-19 16:06:28 CST
  Universal time: 六 2020-09-19 08:06:28 UTC
        RTC time: 六 2020-09-19 08:06:28
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: no
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

,再 timedatectl set-ntp true。

三、保证集群统一时间就好,随后调整从服务器跟随主服务器,主服务器跟随阿里云时间ntp.aliyun.com或者不跟随

再输入 ntpq -p

```bash
$ ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 172.16.242.133  LOCAL(0)         6 u   56   64    3    0.763  -104.19   0.203

其实有数不是0就没问题,但是ntpstat一直显示 unsynchronised 等了数分钟:

$ ntpstat
  unsynchronised
  polling server every 8 s

又等了半小时:

$ ntpstat
   synchronised to NTP server (172.16.242.133) at stratum 7
   time correct to within 467 ms
   polling server every 64 s

本来还想做实验试试是否能真的矫正时间,ntp 的守护进程 ntpd 会计算你的系统时钟的时间偏移量并且持续的进行调整,所以不会出现时间差距较大的更正,但ntpd是微调整方式,做实验也不好看出效果。
通过ntpdate调整比较粗暴,慎用,注意会影响定时任务。注意的是使用ntpdate会临时关闭ntpd,跟上步一样,再等等就好了。

sudo ntpdate -u ntp.aliyun.com
19 Sep 13:04:28 ntpdate[1374]: step time server 203.107.6.88 offset 3.773658 sec
$ ntpstat
unsynchronised
polling server every 64 s
$ timedatectl
      Local time: 六 2020-09-19 13:19:30 CST
  Universal time: 六 2020-09-19 05:19:30 UTC
        RTC time: 六 2020-09-19 05:19:30
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a

$ ntpstat
synchronised to NTP server (172.16.242.133) at stratum 7
time correct to within 19 ms
polling server every 64 s
$ timedatectl
      Local time: 六 2020-09-19 13:34:44 CST
  Universal time: 六 2020-09-19 05:34:44 UTC
        RTC time: 六 2020-09-19 05:34:44
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

搞了一天终于完成了,呼
关于ntp难点就在于是否生效不好判定,很多设置需要等一段时间生效,而不是立即生效(此前没遇到过