勿忘初心做自己 发表于 2024-7-21 03:19:36

linux进阶 --- chrony服务器

chrony服务器

(1)界说:

   是一个开源自由的网络时间协议NTP的客户端与服务器端软件。让盘算机保持系统时钟与时钟服务器(NTP)同步。chrony由两个程序组成,chronyd(服务器端)和chronyc(客户端)


[*]chronyd:后台运行的守护进程,用于调解内核中运行的系统时钟和时政服务器同步,它确定了盘算机增减时间的比率,并对此进行平滑调解。
[*]chronyc:提供用户界面,用于监控性能并进行多样化的设置。可在chronyd实例控制的盘算机上工作,也可在一台差异的远程盘算机工作
查找软件安装情况
# rpm -qa | grep chrony
chrony-3.3-3.el8.x86_64
(2)安装设置

yum -y install chrony --- 安装
systemctl enable chronyd --- 开机自启动
systemctl start chronyd --- 启动 chrony的设置文件是:/etc/chrony.conf
详细内容:
   # 使用 pool.ntp.org 项目中的公共服务器。以server开,理论上想添加多少时间服务器都可以。
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst

# 根据现实时间盘算出服务器增减时间的比率,然跋文录到一个文件中,在系统重启后为系统做出最佳时间补偿调解。
driftfile /var/lib/chrony/drift

# 如果系统时钟的偏移量大于1秒,则允许系统时钟在前三次更新中步进。
makestep 1.0 3

# 启用实时时钟(RTC)的内核同步。
rtcsync

# 通过使用 hwtimestamp 指令启用硬件时间戳
hwtimestamp *

# 增长调解系统时钟所需的最小可选源数。
minsources 2

# 纵然未同步到时间源,也要提供时间。
# Serve time even if not synchronized to a time source.
local stratum 10(取值范围1-15,当默认时钟源无法同步,则当前系统层级为10)

# 指定包罗 NTP 身份验证密钥的文件。
keyfile /etc/chrony.keys

# 指定日记文件的目次。
logdir /var/log/chrony

# 选择日记文件要记录的信息。
log measurements statistics tracking
rtcsyc:该指令使得chronyd定期将系统时间复制到RTC时钟。
(3)同步网络时间服务器

<1> 进入/etc/chrony.conf进行修改
设置时间源:server  时间源IP  ibursthttps://img-blog.csdnimg.cn/2936a86467954ff5841472b4fbf95d66.png
iburst:加快调解时间的频率(突发)
ntp.aliyun.com --- 阿里云授时中央
<2> 设置开机启动和重启服务
systemctl enable chronyd --- 开机启动
systemctl restart chronyd --- 重启服务 <3> 检察时间同步
timedatectl status --- 时间同步状态
timedatectl set-ntp true --- 开启网络时间同步 (4)chronyc 下令



[*]chronyc sources -v --- 检察ntp_servers
[*]chronyc sourcestats -v --- 检察ntp_servers状态
[*]chronyc activity -v --- 检察net_servers是否在线
[*]chronyc tracking -v --- 检察ntp详细信息
[*]chronyc -a makestep --- 强制同步系统时钟
例:强制同步系统时钟(特定条件才气进行,高出步进时间则无法同步)
# date -s "2023-09-11 11:30"
Mon Sep 11 11:30:00 CST 2023
# timedatectl
               Local time: Mon 2023-09-11 11:30:10 CST
         Universal time: Mon 2023-09-11 03:30:10 UTC
               RTC time: Mon 2023-06-12 02:34:29
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: no
            NTP service: active
          RTC in local TZ: no
# chronyc -a makestep
200 OK
# date
Mon Sep 11 11:30:30 CST 2023
# systemctl restart chronyd --- 需重启chronyd服务才可同步
# date
Mon Jun 12 10:35:16 CST 2023
# timedatectl
               Local time: Mon 2023-06-12 10:35:26 CST
         Universal time: Mon 2023-06-12 02:35:26 UTC
               RTC time: Mon 2023-06-12 02:35:25
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
            NTP service: active
          RTC in local TZ: no (5)chronyc sources 输出效果剖析

https://img-blog.csdnimg.cn/417a7924c5bb48b7abedc8b957a08b0c.png
<1> M
这表现信号源的模式。^表现服务器,=表现对等方,#表现本地连接的参考时钟。
<2> S
此列指示源的状态。


[*]* 表现chronyd当前同步到的源。
[*]+ 表现可担当的信号源,与选定的信号源组合在一起。
[*]- 表现被合并算法排除的可担当源。
[*]? 指示已失去连接性或其数据包未通过全部测试的源。它也表现在启动时,直到从中至少网络了3个样本为止。
[*]x 表现chronyd认为是虚伪行情的时钟(即,其时间与大多数其他泉源不一致)
[*]〜 表现时间似乎具有太多可变性的泉源。
<3> Name/IP address
这表现了源的名称或IP地址,或参考时钟的参考ID。
<4> Stratum
这表现了泉源的层,如其近来收到的样本中所报告的那样。层1表现一台具有本地连接的参考时钟的盘算机。与第1层盘算机同步的盘算机位于第2层。与第2层盘算机同步的盘算机位于第3层,依此类推。
<5> Poll
这表现轮询源的速率,以秒为单位的时间间隔的以2为底的对数。因此,值为6表现每64秒进行一次丈量。chronyd会根据当前环境自动更改轮询速率。
<6> Reach
这表现了源的可达性寄存器以八进制数字打印。寄存器有8位,并在每个从源接收或丢失的数据包上更新。值377表现从末了八次传输中收到了对全部用户的有用答复。
<7> LastRx
此列表现多长时间前从泉源接收到了末了一个好的样本(在下一列中表现)。未通过某些测试的丈量将被忽略。通常以秒为单位。字母m,h,d或y表现分钟,小时,天或年。
<8> Last sample
此列表现上次丈量时本地时钟与源之间的偏移。方括号中的数字表现现实测得的偏移量。可以用ns(表现纳秒),us (表现微秒),ms(表现毫秒)或s(表现秒)作为后缀。方括号左侧的数字表现原始丈量值,已调解为允许此后施加于本地时钟的任何摆度。
<9> +/-指示器后面的数字表现丈量中的误差范围。正偏移表现本地时钟位于源时钟之前。
例:现偶然钟服务器time_server:它的层级是2,一台主机node1从time_server同步时间,那么node1主机的层级就是3,以此类推另一台在node1同步时间,那它的层级就是4。
https://img-blog.csdnimg.cn/ca073e7dcaf74506859c10bf3720aa0a.png
在另一台假造机上同步此台假造机的ntp状态
https://img-blog.csdnimg.cn/82d22f13b5d44903a4c69504581bb075.png
https://img-blog.csdnimg.cn/54efc829547d4d25983bb4a3e4543325.png
例:node1向time_server同步时,无法同步;则第二台主机node2依旧向node1同步时间,则此时node2的层级是(11),同步的时间为(node1本地系统时间的时钟源)
进入/etc/chrony.conf中,修改server端ip为不存在ip
https://img-blog.csdnimg.cn/c7f9f61e307d419da23fa5180b76cc51.png
https://img-blog.csdnimg.cn/7fedb2e893844d5c90e6b60bbcbdc716.png
重启服务再次检察同步时钟源
https://img-blog.csdnimg.cn/ebc32f541bcd4117b90b2f53748d93a2.png
检察node1层级
https://img-blog.csdnimg.cn/3d16d3f1b5ae4162a95314e46dafa0f4.png
检察node2层级
https://img-blog.csdnimg.cn/2774cc32a8a545709b232bf024435221.png
(6)常用下令

   chrony -> 服务端:chronyd;客户端:chronyc
chronyc sources -v -> 时钟源检察
timedatectl -> 当前系统是否已同步时间、NTP的服务状态
chronyc tracking -> 检察详细信息
设置文件:/etc/chrony.conf
 
设置文件中:
server 时钟源地址 iburst
allow:不设置,不允许全部客户端访问
(allow 192.168.0.0/16)
local stratum 10:仅表达距真正时钟源较远
rtcsync:将系统时钟复制给硬件时钟

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: linux进阶 --- chrony服务器