Linux下使用ntp进行时间同步

网络时间协议 - NTP - 是运行在传输层 123 号端口的 UDP 协议,它允许计算机通过网络同步准确时间。随着时间的流逝,计算机内部时间会出现漂移,这会导致时间不一致问题,尤其是对于服务器和客户端日志文件,或者你想要复制服务器的资源或数据库。

下面的实验均在centOS7下进行:

安装ntp服务

yum install ntp -y

配置ntp服务器

到官网ntp公共服务器池,寻找你所在洲的ntp服务器列表。而后在ntp守护进程的主配置文件/etc/ntp.conf中,注释掉来自pool.ntp.org项目的公共服务器默认列表,并用所在洲的真实服务器来替代。

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 0.hk.pool.ntp.org
server 1.hk.pool.ntp.org
server 2.hk.pool.ntp.org
server 3.hk.pool.ntp.org

允许本网络的客户端与这台服务器同步时间。同样修改配置文件。其中restrict语句控制允许哪些网络查询和同步时间,请根据需要替换网络IP。
nomodify notrap意味着不允许你的客户端配置服务器活着作为同步时间的节点。

# Hosts on local network are less restricted.
restrict 192.168.10.0 mask 255.255.255.0 nomodify notrap

如果你需要用于错误处理的额外信息,以防你的ntp守护进程出现问题,可添加一个logfile语句,将所有ntp服务器问题定向到一个指定的日志文件中去。

logfile /var/log/ntp.log

添加防火墙规则并启用ntp服务

NTP 服务使用 OSI 传输层(第四层)的 123 号 UDP 端口。它是为了避免可变延迟的影响所特别设计的。要在 RHEL/CentOS 7 中开放这个端口,可以对 Firewalld 服务使用下面的命令。

firewall-cmd --add-service=ntp --permanent
firewall-cmd --reload

你在防火墙中开放了 123 号端口之后,启动 NTP 服务器并确保系统范围内可用。用下面的命令管理服务。

systemctl start ntpd
systemctl enable ntpd
systemctl status ntpd

重启ntp服务,使配置生效。

systemctl restart ntpd

查看ntp同步状态

使用如下命令查看节点同步状态

[root@controller ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 218.189.210.3   118.143.17.82    2 u    7   64    1  101.974  -33.967   0.000
 209.58.185.100  .INIT.          16 u    -   64    0    0.000    0.000   0.000
 103-226-213-30- .INIT.          16 u    -   64    0    0.000    0.000   0.000

以下是几个字段的含义:

remote:即NTP主机的IP或主机名称。
注意最左边的符号,如果由“+”则代表目前正在作用钟的上层NTP,
如果是“*”则表示也有连上线,不过是作为次要联机的NTP主机。

refid:参考的上一层NTP主机的地址

st:即stratum阶层

when:几秒前曾做过时间同步更新的操作

poll:下次更新在几秒之后

reach:已经向上层NTP服务器要求更新的次数

delay:网络传输过程钟延迟的时间

offset:时间补偿的结果

jitter:Linux系统时间与BIOS硬件时间的差异时间

查询你的ntp服务器同步信息

[root@controller ~]# ntpdate -q  0.hk.pool.ntp.org
server 203.95.213.129, stratum 2, offset -0.020632, delay 0.06477
server 209.58.185.100, stratum 2, offset -0.011884, delay 0.06216
server 218.189.210.4, stratum 0, offset 0.000000, delay 0.00000
server 218.189.210.3, stratum 2, offset -0.036728, delay 0.11096
 6 Apr 12:51:43 ntpdate[10190]: adjust time server 209.58.185.100 offset -0.011884 sec
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,067评论 19 139
  • 内外网集群的时间同步① server端:可以访问外网的机器client端:在内网里的机器一、server端安装nt...
    米开朗基乐阅读 6,959评论 0 3
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,219评论 6 13
  • 昨天和小昕下馆子,刚坐下,就来了两个女生坐在我们旁边,坐下后彼此的第一句是: “你看《锦绣未央》最新一集了么?” ...
    盈袖格阅读 206评论 0 0
  • 遇见一個三觀一致的人是可樂的 深夜,发了一篇文章到朋友圈,陆续有人留言。一个不太熟悉的朋友留下了...
    路道文阅读 201评论 1 0