一、需求

为了满足业务软件正常运行,需要配置时间同步

一般的场景分为以下几种

1、无时同设备需要对Linux系统之间进行软同步

2、有时同设备需要对Linux系统之间进行硬同步

3、无时同设备需要对Windows和Linux系统之间进行软同步

4、有时同设备需要对Windows和Linux系统之间进行硬同步

5、无时同设备需要对Windows和Windows之间进行软同步

6、有时同设备需要对Windows和Windows之间进行硬同步

二、操作说明

环境介绍

示例中所使用的Linux操作系统为Centos7

场景1:硬同步(PTP)

有时同设备需要使用PTP进行Linux间硬同步配置(3台下位机)

东土科技公司:

1、首先把时同设备(时间同步服务器和时间同步交换机)连通,然后连好天线,最好找个窗户能扔到室外。

2、通过时同服务器自带的管理网口访问Web页面,然后进行如下配置

同步源状态应正常

同步源参数

时钟参数

网络参数

PTP参数(重点)

改完重启一下

配置好时同设备之后,接下来需要在Linux下位机使用ptp软件通过IPV4 的方式获取设备时间

将ptpd-2.3.1 .tar.gz文件放到Linux下位机上,解压缩(tar -xzvf ptpd-2.3.1.tar.gz)。这个包我放到页眉了

进入ptpd-2.3.1文件夹,执行./configure

执行make指令,编译完毕后时同程序会在src目录中

运行./ptpd2  -i  时同网口名称 -E              即可启动服务,加入参数-C –V可使服务在前台运行用于观看同步状态。示例如下

./ptpd2 -i ens1f0 -E -C -V

如果有持续条文的输出,则表示收到ptpd的信号了。如过一直没有则说明没找到主时钟源,配置下/etc/ptpd2.conf 文件再试

做下验证,改下Linux的时间为2020年,然后输出当前时间

date -s '2020-01-01 00:00:00'
date +'%Y_%m_%d_%T'

进入src执行ptpd的同步命令,收到条文后ctrl+c 退出,然后再看时间

./ptpd2 -i ens1f0 -E -C -V
date +'%Y_%m_%d_%T'

最后确保一切OK,就加到/etc/rc.d/rc.local的的开机脚本中去就可以了

Windows 如果也想直接同步设备,使用自带的工具即可

场景2:上位机使用NTP同步下位机

常规

1、Linux下位机配置NTP主时钟源

检测服务是否存在

systemctl status chronyd 

如果not found 则需要安装服务

yum install -y chrony

安装后修改配置文件

vim /etc/chrony.conf

然后将配置文件改为这样表示设置当前机器为主时钟源,改完后保存退出

重启服务并加入开机自启动

systemctl enable --now chronyd
systemctl restart chronyd 

在Windows上下载Domaintime 的软件,然后进行安装

安装完成

在右下角

或者去控制面板的时间设置中找

双击打开,然后配置要同步的主时钟源地址

进行测试,successful就OK如果部署请检查chronyd

下一步可以改这个参数,如果设置为15 则表示时间误差不超过15ms,而软件会根据系统时间自动决定下次同步的时间如(1-60 minutes)

上位机配置完成,修改上位机时间进行验证

用不了多久就同步了,比我截图速度还快,至此完成上下位机之间的NTP时同

其他

有一个现象是此时无论我如何去改windows的时间都会很快同步,但当我修改Linux即NTP服务器的时间后,windows同步就很慢,这个时候要想快速同步需要手动点击一下sync

如果时间改的过早如2000年,sync会失效

报错2000年太早了

大家在使用的过程中注意一下就行。

考虑到日发仅两篇,先简单写写之后再更新和补充

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐