centos7使用chrony配置时间同步

查看之前笔记没有记录过ntp时间同步相关的笔记,今天我们再重新温习下目前主流的时间同步配置和相关配置的软件

目前同步时间主要使用chrony,之前一直是使用ntpd server/client来做,使用chrony对比之前的方案有以下几个优点

1.时间同步的速度比ntpd更快

2.chrony很好的处理了同步延迟以及网络延迟

3.即使出现网络降级,chrony仍然能正常工作

4.本地机器可以作为时间服务器,其他机器从这台服务器上同步时间

我们本地的现状是一台节点192.168.1.72作为内网时间服务器源,其他节点连接此节点进行时间同步,同时我们192.168.1.72这个节点可以连接外网,其他节点不能连接外网,也会从外网时间源服务器校准时间。

我们本地集群信息如下

192.168.1.72 master1 #内部时间服务器源
192.168.1.73 node1 #普通节点

我们接着来看看具体的安装配置,安装前需要注意chrony和其他时间同步工具有冲突,建议如果要安装这个先卸载其他时间同步工具

首先在192.168.1.72节点进行软件的安装

yum install -y chrony libsepol policycoreutils-python

然后他会自动创建systemctl服务,我们可以使用系统服务管理的方法进行管理

systemctl start chronyd #启动
systemctl stop chronyd #停止
systemctl restart chronyd #重启
systemctl status chronyd #状态

设置开机启动

systemctl enable chronyd
systemctl daemon-reload

接着我们进行服务端的配置

mv /etc/chrony.conf /etc/chrony.conf_bak
cat /etc/chrony.conf_bak | grep -ivE "^$|#" >/etc/chrony.conf

编辑/etc/chrony.conf文件,添加允许客户通过的地址和服务器同步时间,这里其实就是服务器本机的IP地址,同时修改server地址为时间服务IP地址

cat /etc/chrony.conf
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
logdir /var/log/chrony
allow 192.168.1.0/24

上述配置一些说明

server 外部的时间同步服务器,为本地时间同步服务器提供时钟源
driftfile 记录系统时钟获得/丢失时间的速率至drift文件中
makestep 如果系统时钟由于某种原因与启动后的服务器时间相差甚远,允许chronyd通过步进而不是回转来快速纠正它
rtcsync 启用RTC(实时时钟)的内核同步
logdir 指定存放日志文件的目录
allow 只允许某个IP或者网段的客户端进行时间同步

上述配置好以后重启下chronyd服务

systemctl restart chronyd

可以使用以下命令查看时间同步源

chronyc sources -v

查看时间同步源状态的命令如下

chronyc sourcestats -v

接着我们配置客户端,我们登录192.168.1.73节点操作

客户端是通过我们上面自建的时间服务器来同步时间

首先客户端也是需要安装chrony

yum install -y chrony

接着也是和时间服务器一样配置/etc/chrony.conf文件,清空并写入以下内容

cat >/etc/chrony.conf<<EOF
server 192.168.1.72 iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
logdir /var/log/chrony
EOF

接着重启chronyd服务

systemctl restart chronyd

接着在客户端节点执行以下命令查看时间同步源和状态

chronyc sources -v
chronyc sourcestats -v

微信截图_20240131164023.png

如果查看源状态Reacch一栏是0的话需要检查网络联通性,如果是开启了防火墙可以添加端口的访问,使用的是udp协议

firewall-cmd --permanent --add-port=123/udp
#如果需要删除可以使用以下命令
firewall-cmd --permanent --remove-port=123/udp 
#重新载入配置
firewall-cmd --reload

在时间服务器端可以使用命令查看客户端连接情况

chronyc clients

微信截图_20240131173913.png

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/972.html

我要评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。