一、概要
本文主要讲述了在内网环境中如何使用chronyd部署时钟源并如何同步时间。
- 简介
- 安装chronyd服务端Server
- 安装chronyd客户端Client
- 常用命令
二、简介
- NTP (Network Time Protocol):
NTP 是一种用于同步计算机系统时钟的协议。它通过在计算机之间传递时间信息来实现精确的时间同步。NTP 有一个分层的服务器体系结构,其中包含一组公共的时间服务器,这些服务器彼此同步并提供时间信息给其他计算机。特点: 历史悠久:NTP 是最早用于网络时间同步的协议之一,具有广泛的支持和成熟的实现。 精度高:NTP 可以提供高精度的时间同步,通常可以达到毫秒级别的准确度。 复杂性:NTP 的配置和管理可能相对复杂,特别是对于大型网络和要求高精度同步的环境。
- Chrony:
Chrony 是一个相对较新的时间同步工具,旨在改进传统 NTP 的一些方面,并提供更简单、更稳定的时间同步解决方案。Chrony 在计算机之间传递时间信息时采用了不同的算法,以提高时间同步的稳定性和准确性。 特点: 简单性:Chrony 设计为易于配置和管理,尤其适用于普通用户或小型网络环境。 稳定性:Chrony 使用了一些优化技术,如更快的时钟步进和更准确的时钟漂移计算,以提高同步的稳定性。 灵活性:Chrony 支持多种时间源,包括 NTP 服务器、本地时钟和 GPS 接收器等,可以根据实际需求进行配置。 总的来说,NTP 是一个经过广泛验证和成熟的时间同步协议,适用于对时间精度有较高要求的环境。而 Chrony 则更注重简单性和稳定性,在一些小型网络或普通用户中较为流行。选择使用哪个取决于你的需求和偏好,以及你对时间同步的要求。
三、安装chronyd服务端Server
一般服务器会默认自带chronyd服务,如果没有我们可以使用yum进行安装
安装
yum -y install chrony
配置server端配置文件
cat /etc/chrony.conf
pool pool.ntp.org iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
allow all
local stratum 10
logdir /var/log/chrony
启动
systemctl enable chronyd –now
四、安装chronyd客户端Client
安装
yum -y install chrony
配置client端配置文件
cat /etc/chrony.conf
#服务端的IP地址
server 10.100.103.25 iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
logdir /var/log/chrony
启动
systemctl enable chronyd –now
五、常用命令
1.查看 chronyd 状态
chronyc tracking
#Leap status为Normal表示正常
[root@ng][14:04:27] ~# chronyc tracking
Reference ID : 0A646719 (10.100.103.25)
Stratum : 11
Ref time (UTC) : Mon Aug 19 06:13:08 2024
System time : 0.000015495 seconds slow of NTP time
Last offset : -0.000028991 seconds
RMS offset : 0.000030404 seconds
Frequency : 13.029 ppm slow
Residual freq : -0.004 ppm
Skew : 0.050 ppm
Root delay : 0.000498235 seconds
Root dispersion : 0.000124229 seconds
Update interval : 256.7 seconds
Leap status : Normal
2.列出 NTP 服务器
chronyc sources -v
[root@ng][14:15:09] ~# chronyc sources -v
210 Number of sources = 1
.– Source mode '^' = server, '=' = peer, '#' = local clock.
/ .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| / '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
|| .- xxxx [ yyyy ] +/- zzzz
|| Reachability register (octal) -. | xxxx = adjusted offset,
|| Log2(Polling interval) –. | | yyyy = measured offset,
|| \\ | | zzzz = estimated error.
|| | | \\
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 10.100.103.25 10 8 377 240 -27us[ -56us] +/- 249us
3.手动同步系统时间
chronyc makestep
[root@zcfront][14:30:32] ~# chronyc makestep
六、扩展
1.如果使用chronyc makestep手动同步时间命令后时间并未生效,可以使用systemctl restart chronyd重启客户端服务进行同步时间。
2.chrond服务启动后会占用123端口,如果开启防火墙后需要放行123端口。
评论前必须登录!
注册