内网使用chronyd搭建时钟源用于内部服务器同步时间

一、概要

本文主要讲述了在内网环境中如何使用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端口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值