一般会默认安装 chrony 软件包
[root@kube-master-5 ~]# rpm -qa | grep chrony
chrony-3.4-1.el7.x86_64
设置开机启动并查看状态
systemctl enable chronyd.service
systemctlstartchronyd.service
systemctl status chronyd.service
服务端和客户端chrony配置
1. 服务端配置
配置文件修改vi /etc/chrony.conf a、修改第22行,Allow NTP client access from local network,配置允许访问的客户端列表,支持CIDR,例如:allow 192.168/16
b、修改第29行设置同步,Serve time even if not synchronized to any NTP server.,打开注释即可,即:
local stratum 10
重启下服务端chrony服务,使用systemctl restart chronyd.service重启即可。
2、客户端配置
配置文件修改vim /etc/chrony.conf a、修改server即可,删掉其他的,添加要同步时间的源服务器ip,格式如下:
server x.x.x.x iburst
重启下客户端chrony服务,使用systemctl restart chronyd.service重启即可。
客户端使用chronyc sources -v命令完成同步即可
查看同步状态
命令行模式查看时间同步源
chronyc sources-v
查看时间同步源状态
chronyc sourcestats-v
timedatectl status
Local time: Thu2020-10-2911:47:42 CST
Universal time: Thu2020-10-2903:47:42 UTC
RTC time: Thu2020-10-2903:47:43
Time zone: Asia/Shanghai (CST,+0800)
NTP enabled:yes
NTP synchronized:yes
RTCinlocal TZ: no
DST active: n/a
### NTP synchronized 为yes 代表已经同步
查看chrony是否启动
systemctl status chronyd |grepActive
查看配置文件中配置的时间同步器
cat/etc/chrony.conf |grepserver
手动进行同步
chronyc -a makestep
国内几个好的时间同步服务器
server ntp.ntsc.ac.cn prefer
server ntp1.aliyun.com
1.chronyc sources
查看到的同步源 以及字段解析
[root@kube-compute-node-11 ~]# chronyc sources
210Number of sources=4
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^?120.25.115.20060-+0ns[+0ns]+/- 0ns
^* time.cloudflare.com361710+14ms[+64ms]+/- 169ms
^- amy.chl.la26179+102ms[+102ms]+/- 311ms
^- ntp5.flashdance.cx26179-79ms[-79ms]+/- 224ms
这里总共输出8列信息,分别对应含义如下:
列名含义具体说明
M表示授时时钟源^表示服务器,= 表示二级时钟源 ,#表示本地连接的参考时钟
S指示源的状态*当前同步的源,+表示其他可接受的源,?表示连接丢失的源,x表示一个认为是falseticker 的时钟(即它的时间与大多数其他来源不一致),~表示其时间似乎具有太多可变性的来源
Name/IP address表示源的名称或IP地址,或者参考时钟的refid值无
Stratum表示源的层级层级1表示本地连接的参考时钟,第2层表示通过第1层级计算机的时钟实现同步,依此类推。
Poll表示源轮询的频率以秒为单位,值是基数2的对数,例如值6表示每64秒进行一次测量,chronyd会根据当时的情况自动改变轮询频率
Reach表示源的可达性的锁存值(八进制数值)该锁存值有8位,并在当接收或丢失一次时进行一次更新,值377表示最后八次传输都收到了有效的回复
LastRx表示从源收到最近的一次的时间通常是几秒钟,字母m,h,d或y分别表示分钟,小时,天或年,值10年表示从未从该来源收到时间同步信息
Last sample表示本地时钟与上次测量时源的偏移量方括号中的数字表示实际测量的偏移值,这可以以ns(表示纳秒),us(表示微秒),ms(表示毫秒)或s(表示秒)为后缀;方括号左侧的数字表示原始测量值,这个值是经过调整以允许应用于本地时钟的任何偏差;方括号右侧表示偏差值,+/-指示器后面的数字表示测量中的误差范围,+偏移表示本地时钟快速来源
2.chronyc sourcestats
[root@kube-compute-node-11 ~]# chronyc sourcestats -v
210 Number of sources = 4
.- Number of sample points in measurement set.
/ .- Number of residual runs with same sign.
| / .- Length of measurement set (time).
| | / .- Est. clock freq error (ppm).
| | | / .- Est. error in freq.
| | | | / .- Est. offset.
| | | | | | On the -.
| | | | | | samples. \
| | | | | | |
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
120.25.115.20 6 4 324 +221.821 805.359 +20ms 21ms
time.cloudflare.com 10 5 396 +27.605 261.826 -34ms 24ms
amy.chl.la 10 8 399 +66.182 289.209 -19ms 23ms
ntp5.flashdance.cx 10 5 397 +95.528 223.986 -62ms 16ms
列名含义
Name/IP address表示源的名称或IP地址,或者参考时钟的refid值
NP这是当前为服务器保留的采样点数,通过这些点执行线性回归方法来估算出偏移值
NR这是在最后一次回归之后具有相同符号的偏差值的运行次数。如果此数字相对于样本数量开始变得太小,则表明直线不再适合数据。如果运行次数太少,则chronyd丢弃旧样本并重新运行回归,直到运行次数变得可接受为止
Span这是最旧和最新样本之间的间隔。如果未显示任何单位,则该值以秒为单位。在该示例中,间隔为46分钟
Frequency这是服务器的估算偏差值的频率,单位为百万分之一。在这种情况下,计算机的时钟估计相对于服务器以10 ** 9的速度运行1个部分
Freq Skew这是Freq的估计误差范围(再次以百万分率计)
Offset这是源的估计偏移量
Std Dev这是估计的样本标准偏差