2020-05-29

Chronyd同步时间(Server/Client)配置

Chronyd同步时间(Server/Client)配置


chronyd时间服务器,和之前NTP的功能一样,提供时间的。

基础概念我就不说了,不擅长。chronyd是NTP之后诞生的。

最近下载了最新的Centos Linux 8.1,发现里面没有ntp服务了,百度一搜发现改为了Chronyd,这篇文章就是部署一个服务器+客户端测试。

1、服务器端

Centos Linux 8.1 默认安装了chronyd服务。我们只需要配置即可。

配置文件配置

红色部分是需要服务器配置的,这是基本配置,主要在于实现基本功能。

vim /etc/chrony.conf

# Use public servers from the pool.ntp.org project.# Please consider joining the pool pool 2.centos.pool.ntp.org iburst# 同步哪台服务器上的时间server 192.168.94.133 iburst# Record the rate at which the system clock gains/losses time.driftfile /var/lib/chrony/drift# Allow the system clock to be stepped in the first three updates# if its offset is larger than 1 second.makestep 1.0 3# Enable kernel synchronization of the real-time clock (RTC).rtcsync# Allow NTP client access from local network.# allow 192.168.0.0/16# 允许哪个网段的客户端同步时间,133这台是服务器。allow 192.168.94.0/24# Serve time even if not synchronized to a time source.# 字面翻译,提供时间即使没有同步一个时间源。local stratum 10# Specify file containing keys for NTP authentication.keyfile /etc/chrony.keys# Get TAI-UTC offset and leap seconds from the system tz database.leapsectz right/UTC

启动chronyd,并设置开机自启

[root@filesystem ~]# systemctl start chronyd[root@filesystem ~]# systemctl enable chronyd

查看时间同步情况,本地能够同步才能够让其他节点进行同步

timedatectl是一个时间配置工具,用于设定时间、与时间相关的配置等。

[root@filesystem ~]# timedatectl    Local time: 五 2020-05-29 11:17:46 EDT   Universal time: 五 2020-05-29 15:17:46 UTC     RTC time: 五 2020-05-29 15:17:46    Time zone: America/New_York (EDT, -0400)# 当此值为yes代表同步成功,如果为no就代表未同步,或同步失败。System clock synchronized: yes    NTP service: active   RTC in local TZ: no[root@filesystem ~]#

查看当前时间是从哪里同步过来的,这里显示的是主机名。不影响。

[root@filesystem ~]# chronyc sources210 Number of sources = 1MS Name/IP address   Stratum Poll Reach LastRx Last sample===============================================================================^* filesystem     10 7 377 537 +11us[ +25us] +/- 30us[root@filesystem ~]#

防火墙配置

防火墙要能放行此服务,关闭防火墙或是放行相应的端口及服务。

关闭防火墙,并设置开机不启动

[root@filesystem ~]# systemctl stop firewalld[root@filesystem ~]# systemctl disable firewalldRemoved /etc/systemd/system/multi-user.target.wants/firewalld.service.Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.[root@filesystem ~]#

设置防火墙放行规则

[root@filesystem ~]# netstat -antup | grep chronyudp  0  0 127.0.0.1:323   0.0.0.0:*       35191/chronydudp  0  0 0.0.0.0:123    0.0.0.0:*       35191/chronydudp6  0  0 ::1:323     :::*        35191/chronyd[root@filesystem ~]## 只有upd 123端口[root@filesystem ~]# firewall-cmd --permanent --add-port=123/tcpsuccess[root@filesystem ~]# firewall-cmd --reloadsuccess[root@filesystem ~]#

2、客户端配置

配置文件配置

vim /etc/chrony.conf

# Use public servers from the pool.ntp.org project.# Please consider joining the pool pool 2.centos.pool.ntp.org iburstserver 192.168.94.133 iburst

配置开机自启

[root@node1 ~]# systemctl restart chronyd[root@node1 ~]# systemctl enable chronyd[root@node1 ~]#

查看同步状态及信息

[root@node1 ~]# timedatectl    Local time: 五 2020-05-29 11:28:12 EDT   Universal time: 五 2020-05-29 15:28:12 UTC     RTC time: 五 2020-05-29 15:28:12    Time zone: America/New_York (EDT, -0400)System clock synchronized: yes    NTP service: active   RTC in local TZ: no[root@node1 ~]# chronyc sources210 Number of sources = 1MS Name/IP address   Stratum Poll Reach LastRx Last sample===============================================================================^* filesystem     11 6 17 34 -520ns[+7955ns] +/- 15ms[root@node1 ~]#

我们看到是yes,但是如何判断它是原来的时间还是同步好了。毕竟很多系统不同步时间也是近似的。

3、设置时间

我们对chronyd服务器端进行时间修改。

这里说明一点,时间的修改只能在时间不进行同步的状态下进行,也就是说,如果时间是同步中的,是不允许修改时间的。对时间进行保护。

[root@filesystem ~]# timedatectl    Local time: 五 2020-05-29 11:30:40 EDT   Universal time: 五 2020-05-29 15:30:40 UTC     RTC time: 五 2020-05-29 15:30:40    Time zone: America/New_York (EDT, -0400)System clock synchronized: yes    NTP service: active   RTC in local TZ: no[root@filesystem ~]#

我们测试效果,关掉ntp,修改时间

timedatectl set-ntp 0

[root@filesystem ~]# timedatectl set-ntp 0[root@filesystem ~]# timedatectl set-time "2020-06-01 01:01:01"[root@filesystem ~]# timedatectl set-ntp 1[root@filesystem ~]# systemctl restart chronyd[root@filesystem ~]# timedatectl    Local time: 一 2020-06-01 01:01:20 EDT   Universal time: 一 2020-06-01 05:01:20 UTC     RTC time: 一 2020-06-01 05:01:20    Time zone: America/New_York (EDT, -0400)System clock synchronized: yes    NTP service: active   RTC in local TZ: no[root@filesystem ~]#

客户端查看时间

[root@node1 ~]# systemctl restart chronyd[root@node1 ~]#[root@node1 ~]# timedatectl    Local time: 一 2020-06-01 01:01:55 EDT   Universal time: 一 2020-06-01 05:01:55 UTC     RTC time: 五 2020-05-29 15:46:52    Time zone: America/New_York (EDT, -0400)System clock synchronized: yes    NTP service: active   RTC in local TZ: no[root@node1 ~]#

客户端不重启服务也是能同步的,如果你下去做实验的话,可以测试下。


读书和健身总有一个在路上


No comments:

Post a Comment