chrony时间同步

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了chrony时间同步相关的知识,希望对你有一定的参考价值。

参考技术A 一般会默认安装 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这是估计的样本标准偏差

第十章   时间同步chrony

                 ********chrony时间同步服务*****
vim /etc/chrony.conf        /*时间同步配置文件
服务时间同步方:
1.注销已有接受服务
 3 #server 0.rhel.pool.ntp.org iburst                /*服务方必须注销接受其他时间同步的服务
  4 #server 1.rhel.pool.ntp.org iburst
  5 #server 2.rhel.pool.ntp.org iburst
  6 #server 3.rhel.pool.ntp.org iburst
2.设置允许的ip地址
# Allow NTP client access from local network.            /*打开允许同步时间的ip时间段
 23 allow 192.168/16
3.设置允许级别
# Serve time even if not synchronized to any NTP server.    /*设置服务级别
 30 local stratum 10
4.关闭防火墙                            (备注:时间同步可以不用关闭接受时间同步方的防火墙)
systemctl stop firewalld
5.重新启动chronyd服务
systemctl restart chronyd.service
接受时间同步方
1.设置同步服务器的ip地址
# Please consider joining the pool (http://www.pool.ntp.org/join.html)./*设置要同步服务器的ip 地址
  3 #server 0.rhel.pool.ntp.org iburst
  4 #server 1.rhel.pool.ntp.org iburst
  5 #server 2.rhel.pool.ntp.org iburst
  6 #server 3.rhel.pool.ntp.org iburst
  7 server 172.25.254.254 iburst
2.重新启动chronyd服务
systemctl restart chronyd.service
3.测试是否时间同步成功
chronyc sources -v
******设置时区*******
timedatectl      status            /*查看时区设置的情况        
        set-time        /*设置当前时间
        set-timezone        /*设置当前时区
        set-local-rtc 0|1    /*设定是否使用utc时间(utc伦敦时间)
以下为日志采集格式
$template WESTOS,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"

%timegenerated%            /*现实日志时间
%FROMHOST-IP%            /*现实主机ip
%syslogtag%            /*日志内容
\n                /*换行符

以上是关于chrony时间同步的主要内容,如果未能解决你的问题,请参考以下文章

linux时间同步chrony介绍

Linux系统下的Chrony时间同步

第十章   时间同步chrony

chrony 时间同步

Linux Chrony 设置服务器集群同步时间

Linux时间同步服务chrony