当前位置: 首页 > news >正文

Linux的时间同步服务器

一、时间同步服务

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

时间同步实现:ntp,chrony

ntp:将系统时钟和世界协调时UTC同步,精度在局域网内可达0.1ms,在互联网上绝大多数的地方精 度可以达到1-50ms,项目官网:http://www.ntp.org

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

二、时间同步服务的使用

1.系统时间及时区的管理

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时间计算方式

2.公共ntp地址

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

2.2阿里云公共NTP服务器

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

windows类: time.pool.aliyun.com

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

3.使用公共ntp时间到本机

在RHEL 9 中使用的同步时间软件为chrony

chrony由两个程序组成,分别是chronyd和chronyc。

chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定 计算机增减时间的比率,并对此进行补偿。

chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计 算机上工作,也可以在一台不同的远程计算机上工作

chrony作为client使用方法如下:

]# dnf install chrony –y

]# vim /etc/chrony.conf

server ntp.ntsc.ac.cn iburst

#server 指定时钟服务器地址 #iburst 当服务器可达时,发送一个八个数据包 #包间隔通常为2秒,可加快初始同步速度

4.显示同步信息

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

]# chronyc sources –v

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

S:指源的状态

表示chronyd当前已经同步到的源。

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

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

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

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

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

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

Stratum:显示时间来源的层

Poll:显示轮询源的速率

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

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

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

5.时间同步服务器的搭建

在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指令中时间服务器不可用

#也允许将本地时间作为标准时间授时给其它客户端

修改配置文件

]# vim /etc/chrony.conf

27 allow 0.0.0.0/0

30 local stratum 10

三、实验

1.系统时间的调整方法

首先是查看系统时间(比较全)

然后我们要将ntp协议关闭才能改时间

然后我们依然去监控时间

然后我们可以去改时间,当改了时间后,时间就不同步了

然后我们可以去改时区,先是列出可改时区,在选择改的时区

我们可以将硬件时间改为本地时间

2.如何同步网络时间

我们可以使用公共的ntp地址来进行数据同步,我们可以使用国家授时中心服务器的,先尝试是否能ping通,若能ping通,则可以使用,我们先编辑

在这里修改

然后重启来开启服务

3.部署时间同步服务器

我们需要用到两台主机,分别为1和2,我们将1作为服务端,将2作为客户端,首先我们依然在1中这里面改

然后进行编辑

然后进行重启,此时你是时间源

此时转换为主机2,改时间

然后我们同步时间,重启

然后服务器端关闭火墙,这里的话是主机1,时间就同步了

相关文章:

  • Python 中的 collections 库:高效数据结构的利器
  • node核心学习
  • dpm_sysfs_add
  • 构建良好的 AI 文化:解锁未来的密钥
  • C++日志系统实现(二)
  • 李沐《动手学深度学习》 | Softmax回归 - 分类问题
  • 牛客周赛90 C题- Tk的构造数组 题解
  • 2023年第十四届蓝桥杯省赛B组Java题解【 简洁易懂】
  • Python变量作用域陷阱:为什么函数内赋值会引发_局部变量未定义
  • Day 4:牛客周赛Round 91
  • I.MX6U的GPIO配置和LED点灯实验。
  • Dream it possible歌词中英文对照
  • 使用python写多文件#inlcude
  • GoLang基础(续)
  • 腾讯云服务器技术全景解析:从基础架构到行业赋能​
  • 人员睡岗玩手机检测数据集VOC+YOLO格式3853张3类别
  • 第13章:陈默再访海奥华
  • 2024年第十五届蓝桥杯省赛B组Python【 简洁易懂题解】
  • QT开发工具对比:Qt Creator、Qt Designer、Qt Design Studio
  • 详细案例,集成算法
  • 黔西游船倾覆事故84名落水人员已全部找到,10人不幸遇难
  • 中国驻美国使领馆提醒在美中国公民注意交通安全
  • 客流持续高位运行,长三角铁路计划增开153列旅客列车
  • 空间站第八批科学实验样品返抵地球并交付科学家
  • 朝鲜新型驱逐舰“崔贤”号进行多项武器试验
  • 上汽集团一季度净利润30.2亿元,同比增长11.4%