Linux 时间同步服务

  • 时间同步:多主机协作工作时,各个主机的时间同步很重要,时间不一致会造成很多重要应用的故 障,如:加密协议,日志,集群等,利用NTP(Network Time Protocol )协议使网络中的各个计算机 时间达到同步。目前NTP协议属于运维基础架构中必备的基本服务之一

  • 时间同步实现:ntp,chrony

//关闭系统同步时间服务
timedatectl stop chronyd.service

ntp:将系统时钟和世界协调时UTC同步,精度在局域网内可达0.1ms,在互联网上绝大多数的地方精 度可以达到1-50ms,项目官网:Welcome to the home of the Network Time Protocol (NTP) Project.

chrony : 实现NTP协议的的自由软件。可使系统时钟与NTP服务器,参考时钟(例如GPS接收器)以及 使用手表和键盘的手动输入进行同步。还可以作为NTPv4(RFC 5905)服务器和对等体运行,为网络 中的计算机提供时间服务。设计用于在各种条件下良好运行,包括间歇性和高度拥挤的网络连接, 温度变化(计算机时钟对温度敏感),以及不能连续运行或在虚拟机上运行的系统。通过Internet同步 的两台机器之间的典型精度在几毫秒之内,在LAN上,精度通常为几十微秒。利用硬件时间戳或硬 件参考时钟,可实现亚微秒的精度。

时间同步服务的使用

系统时间及时区的管理

timedatectl set-time "2024-02-13 10:41:55" #设定系统时间
timedatectl list-timezones #显示系统的所有时区
timedatectl set-timezone "Asia/Shanghai" #设定系统时区
timedatectl set-local-rtc 0|1 #设定系统时间计算方式
 #0表示使用utc时间计算方式

公共ntp地址

1.www.ntppool.org : 项目是一个提供可靠易用的NTP服务的虚拟集群,[0-3].asia.pool.ntp.org

2.阿里云公共NTP服务器

  • Unix/linux类: ntp.aliyun.com,ntp1-7.aliyun.com

  • windows类: time.pool.aliyun.com

  • 国家授时中心服务器:ntp.ntsc.ac.cn

使用公共ntp时间到本机

在RHEL 9 中使用的同步时间软件为hrony chrony由两个程序组成,分别是chronyd和chronyc。 chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定 计算机增减时间的比率,并对此进行补偿。 chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计 算机上工作,也可以在一台不同的远程计算机上工作 chrony作为client使用方法如下:

[root@localhost ~]# dnf install chrony –y
[root@localhost ~]# vim /etc/chrony.conf
server ntp.ntsc.ac.cn iburst #server 指定时钟服务器地址
 #iburst 当服务器可达时,发送一个八个数据包
 #包间隔通常为2秒,可加快初始同步速度 

显示同步信息

在RHEL9中我们可以使用chronyc 来查看时间同步情况

 chronyc sources –v

Linux 时间同步服务_第1张图片

  • M:时间源模式 ^表示服务器,=表示对等方,#表示本地连接的参考时钟

  • S:指源的状态 表示chronyd当前已经同步到的源。

  • 表示可接受的信号源,与选定的信号源组合在一起。

  • 表示被合并算法排除的可接受源

  • ? 指已失去连接性或者其数据包未通过所有测试的源。

  • x 表示chronyd认为时虚假行情的时钟,即标记该时间与其他多数时间不一致

  • ~ 表示时间似乎具有太多可变性

  • Name/IP address:显示源的名称或IP地址

  • Stratum:显示时间来源的层

  • Poll:显示轮询源的速率

  • Reach:显示源的可达性寄存器以八进制数字打印

  • LastRx:显示多长时间前从来源接收到了最后一个好的样本

  • Last sample:此列显示上次测量时本地时钟与源之间的偏移

时间同步服务器的搭建

 在RHEL9中ntp的服务端同样默认使用chrony

 chrony使用端口为udp 323,chrony兼容ntp所以在设定chrony为服务端是也会开启udp的123端口

chrony 的优势:

  • 更快的同步只需要数分钟而非数小时时间,从而最大程度减少了时间和频率误差,对于并非全天24小时 运行的虚拟计算机而言非常有用
  • 能够更好地响应时钟频率的快速变化,对于具备不稳定时钟的虚拟机或导致时钟频率发生变化的节能技 术而言非常有用
  • 在初始同步后,它不会停止时钟,以防对需要系统时间保持单调的应用程序造成影响
  • 在应对临时非对称延迟时(例如,在大规模下载造成链接饱和时)提供了更好的稳定性
  • 无需对服务器进行定期轮询,因此具备间歇性网络连接的系统仍然可以快速同步时钟

chrony的参数说明:

  • server :可用于时钟服务器, iburst :选项当服务器可达时,发送一个八个数据包而不是通常的一个数据包 ;包间隔通常为2秒,可加快初始同步速度
  • driftfile :根据实际时间计算出计算机增减时间的比率 ,将它记录到一个文件会在重启后为系统时钟作出补偿
  • rtcsync :启用内核模式,系统时间每11分钟会拷贝到实时时钟(RTC)
  • allow / deny :指定一台主机、子网,或者网络以允许或拒绝访问本服务器
  • bindcmdaddress :允许chronyd监听哪个接口来接收由chronyc执行的命令
  • local stratum 10 :即使server指令中时间服务器不可用,也允许将本地时间作为标准时间授时给其它客户端 修改配置文件

你可能感兴趣的:(linux)