您的位置:首页 > 编程语言 > PHP开发

ntp时钟同步服务

2019-04-08 18:37 204 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/Sky_fantasy_/article/details/89095635

因为公司内部服务器不能上外网,内部没有同一时间标准,因此时间的同步有了需求。目前所使用的就是 Network Time Protocol 协议。即网络时间协议。

NTP 工作请求
(1)客户端将采用随机端口向 NTP 服务器 (UDP:123) 发出时间同步请求
(2)NTP 服务器收到请求后会将发出调校时间
(3)NTP 客户端接收到 NTP 服务器的消息后,以进行调整,从而完成时间同步

查看 NTP 配置文件是否存在
ls -l /etc/ntp.conf

 

 

同步服务器时间方式有2个:一次性同步(手动同步)、通过服务自动同步。
1、一次性同步时间:
ntpdate  时间服务器的域名或ip地址
Ip地址查看可以访问:http://www.ntp.org.cn/pool.php
ntpdate 120.25.108.11(阿里云)

2、NTP 服务器实现
准备条件:每个节点下载配置源脚本、并执行:
wget http://download2.yunwei.edu/shell/yum-repo.sh    (需要能进入内部网站)
sh yum-repo.sh

(1)NTP
服务器安装
yum -y install ntp 

 

(2)让本地的ntpd与本地硬件时间同步

vim /etc/ntp.conf

服务端:

vim /etc/ntp.conf (注释上面四行,添加下面两行)

sever端:

将restrict 段网段设置为0.0.0.0     所有ip地址段都可与我同一时间

server 127.127.1.0                 # local clock,本地时间

fudge 127.127.1.0 stratum 10        #与自己同步

 

systemctl enable ntpd

systemctl start ntpd

client端:

vim /etc/ntp.conf

注释四行,添加下面一行

server 192.168.58.25 iburst

 

systemctl enable ntpd

systemctl start ntpd

 

(3)Linux 客户端同步

1) 手动同步

ntpdate 192.168.1.100

2) 自动同步,配置文件

vim /etc/ntp.conf

server 192.168.58.25              #添加连接的服务端ip

systemctl restart ntpd

(4)查看上层 NTP 服务状态

ntpq –p

 

 

注意:ntp服务开启时,不能手动同步,需要先将ntp服务关闭才行。

NTP 服务属于 C/S 架构模式 , 在建立本地服务时最好与上层服务器进行时间同步来给本地提供时间同步服务

 

否则会报错, the NTP socket is in use, exiting。如下:

 

这个提示表明NTP的端口已经被占用了,该端口默认为123,并且是UPD模式。可以使用pe -ef 或lsof命令查看那个服务占用了此端口,例如:

ps -ef | grep ntpd

lsof –i:123

一般情况下,别的服务是不会占用这个端口的,所以可能的结果是ntpd服务在占用

解决方法一:

lsof –i:123

 

kill -9 42163

清除该进程,完毕

 

解决方法二:

可以使用ntpdate命令的-u参数解决此问题

ntpdate -u pool.ntp.org

#这行命令的意思是它不再使用默认的端口,而是使用了一个别的端口,所以避免了端口冲突。

 

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: