配置chrony服务,实现服务器时间自动同步

一 什么是时间同步

 

时间同步:
多个主机协作工作时,各个主机的时间同步很重要,时间不一致会造成 很多重要应用的故障,如:加密协议,日志,集群等, 
利用NTP(Network Time Protocol) 协议使网络中的各个计算机时间达到同步。目前NTP协议属于运维架构中必备的基本服务之一

 

二时间同步实现的方式

 

时间同步实现的两种方式:ntp和chrony
ntp服务和chrony默认在Centos7系统上都默认存在
chrony默认只在Centos7上存在

 

三 chrony


这里我们介绍chrony进行实现。

 

3.1 chrony是什么?
chrony是实现时间同步的一种方式。

3.2 chrony 的优势:

更快的同步只需要数分钟而非数小时时间,从而最大程度减少了时间和频率 误差,对于并非全天 24 小时运行的虚拟计算机而言非常有用 
 
能够更好地响应时钟频率的快速变化,对于具备不稳定时钟的虚拟机或导致 时钟频率发生变化的节能技术而言非常有用
 
在初始同步后,它不会停止时钟,以防对需要系统时间保持单调的应用程序 造成影响 
 
在应对临时非对称延迟时(例如,在大规模下载造成链接饱和时)提供了更 好的稳定性 
 
无需对服务器进行定期轮询,因此具备间歇性网络连接的系统仍然可以快速 同步时钟 

3.3 chrony程序具体内容

server - 可用于时钟服务器,iburst 选项当服务器可达时,发送一个八个数据包而不是通常的一个数据包。包间隔时间通常为2秒,可以加快初始同步速度。

driftfile - 根据实际时间计算出计算机增减时间的比率。将它记录到一个文件中,会在重启后为系统时钟做出补偿。

rtcsync - 启用内核模式,系统时间每11分钟会拷贝到实时时钟(RTC)

allow/deny - 指定一台主机,子网,或者网络以允许或者拒绝访问本服务器

cmdallow /cmddeny - 可以指定哪台主机可以通过chronyd使用控制命令

bindcmdaddress -允许chronyd监听哪个接口来接收由chronyc执行的命令。

makestep - 通常chronyd根据需求通过减慢后者加速时钟,使得系统逐步纠正所有时间偏差。在某些特定情况下,系统时钟可能会漂移过快,导致该调整过程消耗很长的时间来纠正系统时钟。该指令强制chronyd在调整期大于某个阈值调整系统时间

local stratum 10 - 即使server 指令中时间服务器不可用,也允许将本地时间作为标准时间授予其他客户端。

 

四 chrony服务器搭建和配置

 

准备工作: 
服务器端: 192.168.233.150  系统:centos7
客户端:192.168.233.151   系统: centos6

4.1 chrony服务器端搭建
4.1.1 安装和启用

yum install chrony
systemctl start chronyd
systemctl enable chronyd

配置chrony服务,实现服务器时间自动同步
4.1.2 进行chrony.conf配置

[root@localhost ~]# cat /etc/chrony.conf |sed '/^$/d'|sed '/^#/d'
server 192.168.233.150 iburst   #修改为NTP服务器的IP或者域名
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
allow 192.168.233.0/16   #设置允许的IP段
local stratum 10  #开启,即使server指令中时间服务器不可用,也允许将本地时间作为标准时间授予其他客户端
logdir /var/log/chrony

4.2 客户端设置
系统为centos6

yum install -y chrony
service chronyd start
chkconfig  chronyd on

修改配置文件:

vim  /etc/chrony.conf
server chrony服务器IP iburst  #只需要修改此处就可以。

4.3 进行测试

修改客户端的时间
然后,重启chrony服务
查看时间已经恢复了正常

也通过如下命令:
chronyc sources -v 查看同步时间的状态

查看
配置chrony服务,实现服务器时间自动同步
至此,安装配置结束。

 

五 其他


5.1 从Centos7 开始,新增了一条时间查询命令:timedatectl

 

配置chrony服务,实现服务器时间自动同步5.2 chronyc命令
配置chrony服务,实现服务器时间自动同步

上一篇:centos 8.x系统配置chrony时间同步服务


下一篇:[Qt]窥探信号槽的实现细节