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

【Chrony 时间同步双实验实操】从单节点校准到本地 NTP 服务器搭建详解

目录

实验一:单节点时间同步到阿里云 NTP 服务器

1. 环境准备与错误时间设置

2. Chrony 配置文件改造

3. 服务重启与同步验证 

实验二:搭建本地时间同步服务器集群 

1. 架构设计

2. 服务端配置(时间中转节点) 

3. 客户端配置(依赖本地服务端) 

 知识拓展:

chronyc sources输出分析


授时服务器:


210.72.145.44 国家授时中心 
ntp.aliyun.com 阿里云 
s1a.time.edu.cn 北京邮电大学 
s1b.time.edu.cn 清华大学 
s1c.time.edu.cn 北京大学 
s1d.time.edu.cn 东南大学 
s1e.time.edu.cn 清华大学 
s2a.time.edu.cn 清华大学 
s2b.time.edu.cn 清华大学 
s2c.time.edu.cn 北京邮电大学 
s2d.time.edu.cn 西南地区网络中心 
s2e.time.edu.cn 西北地区网络中心 
s2f.time.edu.cn 东北地区网络中心 
s2g.time.edu.cn 华东南地区网络中心 
s2h.time.edu.cn 四川大学网络管理中心 
s2j.time.edu.cn 大连理工大学网络中心 
s2k.time.edu.cn CERNET桂林主节点 
s2m.time.edu.cn 北京大学 
ntp.sjtu.edu.cn 202.120.2.101 上海交通大学

实验一:单节点时间同步到阿里云 NTP 服务器

1. 环境准备与错误时间设置

[root@localhost ~]# date -s 10:00
2025年 04月 25日 星期五 10:00:00 CST

2. Chrony 配置文件改造

[root@localhost ~]# vim  /etc/chrony.conf 
# 定位第3行,删除后添加阿里的时间同步服务地址server   ntp.aliyun.com   iburst# 注意:也可以先清空chrony.conf内容,将阿里开源提供的时间服务器推荐配置复制粘贴到该文件中
server ntp.aliyun.com iburst
stratumweight 0
driftfile /var/lib/chrony/drift
rtcsync
makestep 10 3
bindcmdaddress 127.0.0.1
bindcmdaddress ::1
keyfile /etc/chrony.keys
commandkey 1
generatecommandkey
logchange 0.5
logdir /var/log/chrony

 

3. 服务重启与同步验证 

#重启服务
[root@localhost ~]# systemctl restart  chronyd#时间同步
[root@localhost ~]# chronyc sources -v
#查看时间是否同步
[root@localhost ~]# timedatectl status

实验二:搭建本地时间同步服务器集群 

1. 架构设计

角色IP地址(根据个人实际情况查看)同步目标
服务端192.168.2.131ntp.aliyun.com(上游)
客户端192.168.2.134192.168.48.131(本地)

2. 服务端配置(时间中转节点) 

# 配置上游服务器
[root@localhost ~]# vim  /etc/chrony.conf 
# 定位第3行,添加阿里的时间同步服务地址server   ntp.aliyun.com   iburst# 开放客户端访问
# 定位第26行,设置谁可以访问本机进行同步
allow 192.168.2.0/24  # 允许同网段客户端同步

#重启服务
[root@localhost ~]# systemctl restart chronyd

3. 客户端配置(依赖本地服务端) 

# 安装软件
[root@lysLinux ~]# yum  install  chrony  -y    # 编辑配置文件
[root@lysLinux ~]# vim  /etc/chrony.conf     # 修改第3行为server的地址
server  192.168.2.131  iburst# 重启服务
[root@lysLinux ~]# systemctl restart  chronyd# 测试
[root@lysLinux ~]# chronyc  sources  -v

注意:客户端同步失败的原因

- 检查网络连通性,需要能ping通
- 检查服务端的allow参数
- 需要重启服务

 知识拓展:

chronyc sources输出分析

  • M:这表示信号源的模式。*^*表示服务器,*=*表示对等方,#表示本地连接的参考时钟。
  • S:此列指示源的状态
*chronyd当前同步到的源
+表示可接受的信号源,与选定的信号源组合在一起
-表示被合并算法排除的可接受源
?表示已失去连接的源
x表示chronyd认为是虚假行情的时钟(即,其时间与大多数其他来源不一致)
~表示时间似乎具有太多可变性的来源
  • Name/IP address:显示服务器源的名称或IP地址
  • Stratum:表示源的层级,层级1表示本地连接的参考时钟,第2层表示通过第1层级计算机的时钟实现同步,依此类推
  • Poll:表示源轮询频率,以秒为单位,值是基数2的对数,例如值6表示每64秒进行一次测量,chronyd会根据当时的情况自动改变轮询频率
  • Reach:表示源的可达性的锁存值(八进制数值),该锁存值有8位,并在当接收或丢失一次时进行一次更新,值377表示最后八次传输都收到了有效的回复
  • LastRx:表示从源收到最近的一次的时间,通常是几秒钟,字母m,h,d或y分别表示分钟,小时,天或年
  • Last sample:表示本地时钟与上次测量时源的偏移量,方括号左侧的数字表示原始测量值,方括号右侧表示偏差值,*+/-*指示器后面的数字表示测量中的误差范围。正偏移表示本地时钟位于源时钟之前

http://www.xdnf.cn/news/2030.html

相关文章:

  • guvcview-源码记录
  • 项目质量管理
  • 风吸式杀虫灯环保优势
  • Coze高阶玩法 | 使用Coze制作思维认知提升视频,效率提升300%!(附保姆级教程)
  • Django之旅:第七节--模版继承
  • Git基本使用(很详细)
  • FWFT_FIFO和Standard_FIFO对比仿真
  • Shell脚本参数处理:位置变量/预定义变量
  • Java对接企业微信实战笔记
  • [原创](现代Delphi 12指南):[macOS 64bit App开发]:如何使用CFStringRef类型字符串?
  • 【vue】【element-plus】 el-date-picker使用cell-class-name进行标记,type=year不生效解决方法
  • BongoCat - 跨平台键盘猫动画工具
  • 线程同步与互斥
  • ElementUi的Dropdown下拉菜单的详细介绍及使用
  • 软件测试大模型Agent探索(dify:chatflow+企业微信机器人)
  • 【C++类和数据抽象】复制构造函数
  • SIEMENS PLC 程序 GRAPH 程序解读 车型入库
  • 【深度强化学习 DRL 快速实践】近端策略优化 (PPO)
  • mybatis-plus里的com.baomidou.mybatisplus.core.override.MybatisMapperProxy 类的详细解析
  • Python Cookbook-6.8 避免属性读写的冗余代码
  • (PYTHON)函数
  • 多物理场耦合低温等离子体装置求解器PASSKEy2
  • uniapp小程序开发入门01-快速搭建一个空白的项目并预览它
  • 多模态(3):实战 GPT-4o 视频理解
  • 线上图书借阅小程序源码介绍
  • 系统测试的技术要求
  • 基于Docker的Flask项目部署完整指南
  • 基于C#+Unity实现遇见李白小游戏
  • 《强势量价关系》速读笔记
  • 【信息系统项目管理师】高分论文:论人力资源管理与成本管理(医院信息系统)