本文主要是介绍Linux基础软件-时间同步chrony,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
Linux进阶部分又分了很多小的部分,我们刚讲完了Linux日常运维。讲的那些东西都算是系统自带的,但是Linux作为一个服务器操作系统,肯定是要安装运行软件来满足我们的业务需要,本章基础软件部分,将从下面几个部分来讲解:
Linux基础软件-软件安装
Linux基础软件-yum(一)
Linux基础软件-yum(二)
Linux基础软件-ntp
Linux基础软件-chrony(本章节)
Linux基础软件-dns(一)
Linux基础软件-dns(二)
Linux基础软件-nfs
Linux基础软件-lvm
Linux基础软件-Selinux&库文件&swap
其实在NTP时间同步协议里面常用的软件有2个,一个就是上小节讲的软件ntp,另外一个就是本小节要讲的另外一个软件chrony,这2个软件都有类似的功能,目前国内的公有云厂商,有的厂商给用户提供的ntp,有的给用户的提供的chrony。
这2个软件,在默认情况下是互斥的,也就是只能同时启动一个,后启动的会把先启动的服务给停止掉。甚至默认情况下ntpdate命令和ntpd服务都是互斥的就算他们是一个软件包安装出来的,也就是ntpd服务在运行的时候,ntpdate命令我是无法执行的。
[root@localhost ~]# systemctl status ntpd
● ntpd.service - Network Time ServiceLoaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled)Active: active (running) since 一 2024-07-29 23:32:58 CST; 37min ago
7月 29 23:32:58 localhost.localdomain ntpd[1228]: Listen normally on 3 ens33 192.168.31.104 UDP 123
#中间省略部分内容
7月 29 23:48:59 localhost.localdomain ntpd[1228]: 0.0.0.0 0515 05 clock_sync
[root@localhost ~]# ntpdate ntp.aliyun.com
30 Jul 00:10:28 ntpdate[1292]: the NTP socket is in use, exiting
Chrony
chrony在最小化安装的centos7系统里面都是自带的,如果不配置就和ntp一样,都是使用官方默认的源。
[root@localhost ~]# chronyc sources
210 Number of sources = 7
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 100.100.61.88 1 10 377 655 -1634us[-1629us] +/- 29ms
^+ 100.100.3.1 2 10 377 313 +18us[ +18us] +/- 20ms
^+ 100.100.3.2 2 10 377 695 +6110us[+6115us] +/- 25ms
^+ 100.100.3.3 2 10 227 33m +3569us[+3521us] +/- 26ms
^+ 100.100.5.1 2 10 377 980 +24us[ +29us] +/- 20ms
^+ 100.100.5.2 2 10 377 464 +931us[ +931us] +/- 21ms
^+ 100.100.5.3 2 10 377 1008 -54us[ -48us] +/- 20ms
MS Name/IP address: 当前chrony客户端的上游服务器,其中"*"代表当前上级源,"+"代表参考,"*"只能有一个,"+"可以有多个。
Stratum: 数字越小,代表级别越高。
Poll: 代表同步时间间隔,这个10是最大,也就是1024秒同步一次,这个服务启动的时间一般都比较小,当同步越稳定就是同步的间隔就越低。
Reach: 代表最近8次同步状态,其中377代表8次都成功,如果有一次不成功则不是377。
LastRx: 最近一次同步过去了多少时间,这个和前面的Poll对应,Poll越大,LastRx的值才可能越大。
Last sample: 代表和上游服务器的误差,有正,也有负数,正常的可以接受的大小大概是几十毫秒或者更低的微秒。
上面的参数和ntpd -pn 显示参数基本上是一样的。
chronyd默认是监听127.0.0.1,也就是他默认只能当作客户端,不能作为服务端。
总结
1.无论是ntp还是chrony,他们使用的协议都是udp,而不是一般常用的tcp协议,这个需要注意。
2.作为服务端,我要考虑他怎么给客户端提供稳定可靠的服务(高可用,防止跳变)。
3.作为客户端,我需要考虑的就是如果服务端故障(chrony其实不怕故障),或者说服务端时间发生跳变,我怎么来降低他对我的影响。
关注微信公众号《运维小路》获取更多内容。
这篇关于Linux基础软件-时间同步chrony的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!