chrony服务器
硬件时间:BIOS里面;关机后依然运行,主板电池为它供电;RTC时钟
系统时间:开机后,软件启动读取硬件时钟,之后独立运行
Chrony 的配置文件是/etc/chrony.conf
chronyd服务器端
chronyc客户端
Chrony是一个开源自由的网络时间协议 NTP 的客户端和服务器软软件。它能让计算机保持系统时钟与时钟服务器(NTP)同步,因此让你的计算机保持精确的时间,Chrony也可以作为服务端软件为其他计算机提供时间同步服务。
Chrony由两个程序组成,分别是chronyd和chronyc
chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。(平滑的变化)
chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作。
NTP 是网络时间协议(Network Time Protocol)的简称,通过 udp 123 端口进行网络时钟同步。
RHEL7中默认使用chrony作为时间服务器,也支持NTP,需要额外安装。
NTP与chrony不能同时存在,只能用其中一个
一,一些相关的简单命令
1,使用命令Systecmctl restart chronyd 启动状态
2,使用命令Systemctl status chronyd查看chronyd的状态
3,使用命令Timedatectl 查看时间状态
4,使用命令rpm -qa | grep chrony查看是否安装chrony软件
5,如果没有的可以用Yum install chrony -y命令安装
6,使用命令cat /etc/services在linux查看服务对应的端口
二,chrony服务器配置
1,从阿里云同步时间(第一台机器)
(1)使用命令vim /etc/chrony.conf打开配置文件
(2)注释掉pool ntp服务器池,添加一个阿里云的单个ntp服务器
Server ntp.aliyun.comiburst (此台服务器从阿里云来同步时间)
allow:默认情况下不允许任何ntp客户端访问
allow 192.168.0.0/16 (打开允许后面的服务器从此服务器来同步时间)
:wq保存并退出
(3)重启chronyd服务 systemctl restart chronyd
(4)使用timedatectl命令来查看状态是否为yes active
(5)Ping ntp.aliyun.com查看是否能够ping通,以及是否拿到ip
2,从第一台机器同步时间(第二台机器)
(1) 克隆第一台机器(第二台机器)后改掉ip 和 主机名
使用命令systemctl status chronyd查看状态
(2)使用命令vim/etc/chrony.conf打开配置文件同步第一台
:wq 保存退出
(3)使用命令systemctlrestart chronyd 重启服务
(4)使用命令chronycsources查看时钟服务器的状态
(5)Timedatectl 查看时间是否同步,ntp服务器的状态
(6)Chronyc tracking查看跟踪信息
三,chronyc命令
M
这表示信号源的模式。^表示服务器,=表示对等方,#表示本地连接的参考时
钟。
S
此列指示源的状态。
• * 表示 chronyd当前同步到的源。
• + 表示可接受的信号源,与选定的信号源组合在一起。(信号源可以用,我们没
有使用它)
• - 表示被合并算法排除的可接受源。(不接受的时间源)
• ?指示已失去连接性或其数据包未通过所有测试的源。它也显示在启动时,直
到从中至少收集了 3 个样本为止。 (连接过,且连接成功过,此时已经断开)
• x 表示 chronyd 认为是虚假行情的时钟(即,其时间与大多数其他来源不一
致)。
• 〜 表示时间似乎具有太多可变性的来源。(不可靠)
-v 详细信息
1,查看 ntp_servers
chronycsources -v
Name/IP address
这显示了源的名称或 IP 地址,或参考时钟的参考 ID。
Stratum
这显示了来源的层,如其最近收到的样本中所报告的那样。层 1 表示一台具有本
地连接的参考时钟的计算机。与第 1 层计算机同步的计算机位于第 2层。与第 2
层计算机同步的计算机位于第 3 层,依此类推。
Poll
这显示轮询源的速率,以秒为单位的时间间隔的以 2 为底的对数。因此,值为 6
表示每 64 秒进行一次测量。chronyd 会根据当前情况自动更改轮询速率。
Reach
这显示了源的可达性寄存器以八进制数字打印。寄存器有 8 位,并在每个从源接
收或丢失的数据包上更新。值 377 表示从最后八次传输中收到了对所有用户的有
效答复。
LastRx
此列显示多长时间前从来源接收到了最后一个好的样本(在下一列中显示)。未通
过某些测试的测量将被忽略。通常以秒为单位。字母 m,h,d 或 y 表示分钟,小
时,天或年。
Last sample (偏移量)
此列显示上次测量时本地时钟与源之间的偏移。方括号中的数字表示实际测得的偏
移量。可以用 ns(表示纳秒),us (表示微秒),ms(表示毫秒)或 s(表示
秒)作为后缀。方括号左侧的数字表示原始测量值,已调整为允许此后施加于本地
时钟的任何摆度。
+/-指示器后面的数字表示测量中的误差范围。正偏移表示本地时钟位于源时钟之
前
2,查看 ntp_servers 状态
chronycsourcestats
-Name/IP address 时间源的域名、IP地址或Refernce ID。
- NP 服务器当前保留的样本点的数量。偏移率和偏移值是通过这些样本点进行线性回归计算预估的。
- NR 这是最后一次回归计算后,具有相同符号的残差的运行次数。如果这个数字相对于样本的数量开始变得太小,则表明直线不再适合数据。如果运行的次数过低,那么chronyd将丢弃旧的样本并重新运行回归计算,直到运行的次数可以接受为止。
- Span表示最老的样本与最新的样本之前的时间间隔。如果没有显示单位,则单位是s(秒)。
-Frequency 估计的时间源的residual frequency。以ppm(百万分之一)为单位。‘+’表示本地时间比时间源快,‘-’表示比时间源慢。
- FreqSkew 这是频率的估计误差范围,以ppm(百万分之一)为单位。
-Offset 这是估计的时间源的偏移量。
- StdDev 这是估计的样本标准差。
3,查看 ntp_servers 是否在线
chronycactivity -v
200表示查看成功,查看所有时钟源的状态
4,查看 ntp 详细信息
chronyctracking -v
5,强制同步下系统时钟(需要重启服务,才能生效)
chronyc-a makestep