1. 配置本地时钟作为 NTP 服务器的时间源
#检查ntp服务状态
[root@k8s-master01 ~]#systemctl status ntp.service
● ntp.service – Network Time Service
Loaded: loaded (/lib/systemd/system/ntp.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2024-12-05 17:48:02 CST; 9min ago
Docs: man:ntpd(8)
Main PID: 418168 (ntpd)
Tasks: 2 (limit: 4558)
Memory: 1.6M
CGroup: /system.slice/ntp.service
└─418168 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 113:117
Dec 05 17:48:16 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 193.182.111.142
Dec 05 17:48:17 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 84.16.67.12
Dec 05 17:48:20 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 193.182.111.141
Dec 05 17:48:20 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 81.16.177.123
Dec 05 17:48:24 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 185.125.190.57
Dec 05 17:48:24 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 185.125.190.58
Dec 05 17:48:25 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 185.125.190.56
Dec 05 17:48:26 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 91.189.91.157
Dec 05 17:48:27 k8s-master01.dinginx.org ntpd[418168]: Soliciting pool server 2620:2d:4000:1::41
Dec 05 17:53:58 k8s-master01.dinginx.org ntpd[418168]: kernel reports TIME_ERROR: 0x2041: Clock Unsynchronized
在 /etc/ntp.conf 配置文件中,你可以将本地时钟(即 local)作为 NTP 服务器的时间源。
# /etc/ntp.conf
# 本地时钟同步配置
# 存储本地时钟漂移文件
driftfile /var/lib/ntp/ntp.drift
# 存储闰秒信息的文件
leapfile /usr/share/zoneinfo/leap-seconds.list
# 启用 NTP 统计功能并生成日志文件
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
# 使用本地时钟作为时间源
server 10.6.100.7 # 本地时钟,0 表示使用本地时钟,1 表示使用硬件时钟
fudge 127.127.1.0 stratum 10 # 设置本地时钟的层次(默认是 10)
# 配置访问控制,允许本地计算机访问
restrict 127.0.0.1
restrict ::1
# 默认拒绝所有外部访问,只允许同步时间,但不允许配置
restrict -4 default kod notrap nomodify nopeer noquery limited
restrict -6 default kod notrap nomodify nopeer noquery limited
# 特别配置本地网络子网的访问权限
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap noquery
# 如果启用广播功能,可以将时间同步信息广播到子网
#broadcast 192.168.1.255
# 启用接收广播信息的客户端
#broadcastclient
# 如果想启用身份验证功能,可以在这里设置(默认是启用的)
#disable auth
配置说明
server 10.6.100.7:
这个配置指示 NTP 服务器使用本地时钟(10.6.100.7)。这意味着服务器将使用系统的内部时钟(硬件时钟或系统时钟)来同步其他设备。
127.127.1.0 是一个特殊的配置,指示 ntpd 使用本地时钟作为时间源。stratum 层次设置为 10,意味着这是一个低优先级的时间源。
fudge 127.127.1.0 stratum 10:
fudge 语句用于调整特定时间源的配置参数。在这个例子中,stratum 设置为 10,表示本地时钟的优先级较低。正常情况下,外部 NTP 服务器的 stratum 层次会小于本地时钟。
restrict 配置:
保持了对本地计算机 127.0.0.1 和 IPv6 本地地址 ::1 的访问权限。
配置了默认的访问限制规则,拒绝外部访问,确保 NTP 服务器不会被滥用。
配置了允许 192.168.1.0/24 子网的设备同步时间,但禁止它们修改 NTP 配置或查询其他数据。
日志和统计配置:
统计信息 (loopstats、peerstats、clockstats) 用于记录和分析时间同步的详细数据,帮助诊断问题。
2. 启动 NTP 服务
#重启服务
service ntp restart
或
systemctl restart ntp.service
#验证 NTP 服务的状态
ntpq -p
评论前必须登录!
注册