[技术干货] 采集服务器与代理服务器配置NTP时间同步

[复制链接]
767290650 发表于 2019-9-10 20:01:00 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
在内网环境下,采集服务器与代理服务器之间的时间不同步,会导致以下两个问题:
(暂未发现因时间不同步导致的其他问题)
1)代理最近出现时间负数的情况,如下图:
1.png
一旦出现负数,即使后面的时间同步了,也依然会保持负数的状态,但不影响监控情况。
2)snmp监控网络设备时,snmp协议的按钮不亮,但是有最新数据,如下图:
2.png
解决办法:在采集服务器上配置NTP服务,让代理服务器作为NTP客户端,以采集服务器上的时间为标准。

环境:
CentOS Linux release 7.3.1611 (Core)
Zabbix和代理版本:3.4.13

配置过程:
1.zabbix服务器上安装ntp服务
1)挂载本地镜像文件
详细操作步骤省略。
2)配置本地镜像源
             详细操作步骤省略。
       3)使用yum命令安装ntp服务:
       yum  -y install  ntp
3.png
2.zabbix服务器上配置为ntp服务器
1)修改配置文件
vi /etc/ntp.conf
//将这行给注释
#restrictdefault nomodify notrap nopeer noquery     
//然后添加这两行,意思是 允许IPV4 IPV6 查询 拒绝修改
restrict -4default kod notrap nomodify   
restrict -6default kod notrap nomodify
//添加修改上层时间服务器,如果能联通外网,则不需要修改,
server0.rhel.pool.ntp.org iburst
server1.rhel.pool.ntp.org iburst
server2.rhel.pool.ntp.org iburst
server3.rhel.pool.ntp.org iburst
//如果联不通外网,则把上面几行注释,然后添加下面两行,意思是设置时间服务器为自己
server 127.127.1.0
fudge 127.127.1.0 stratum 8
       修改完成后如下图所示:
       (grep -Ev "^#|^$" /etc/ntp.conf 命令的用途是排除#开头的注释,显示文件的内容)
4.png
       2)开启服务
       systemctl  start ntpd
       3)查看ntpd服务的运行状态
       systemctl  status ntpd
5.png
       4)配置ntpd服务开机自启
       systemctl  enable ntpd
       或:
       chkconfig ntpd  on
       5)查看ntp服务器同步状态
[root@localhost ~]# ntpstat  # 确认本地NTP与上层NTP服务器是否联通
synchronised to local net at stratum 9
  time correct to within 12 ms  # 时间校正到相差12ms之内
  polling server every 64 s   # 每64秒会向上级NTP轮询更新一次时间
[root@localhost ~]# ntpq -p  # 查看本地NTP需进行同步的公网NTP服务器状态
    remote           refid      st t when poll reach   delay  offset  jitter
==============================================================================
*LOCAL(0)        .LOCL.           8 l  60   64  377   0.000    0.000   0.000
[root@localhost ~]#
6.png
参数详解:
remote :本地主机所连接的上层NTP服务器,最左边的符号如下:
    如果有 代表目前正在使用当中的上层NTP服务器。
    如果有[+] 代表也有连上上层NTP服务器,可以作为提高时间更新的候选NTP服务器
    如果有[-] 代表同步的该NTP服务器被认为是不合格的NTP Server
    如果有[x] 代表同步的外网NTP服务器不可用
refid :指的是给上层NTP服务器提供时间校对的服务器。
St:上层NTP服务器的级别。
When: 上一次与上层NTP服务器进行时间校对的时间(单位:s)
Poll :本地主机与上层NTP服务器进行时间校对的周期(单位:s)
reach:已经向上层 NTP 服务器要求更新的次数
delay:网络传输过程当中延迟的时间,单位为 10^(-6) 秒
offset:时间补偿的结果,单位为10^(-6)秒
jitter:Linux 系统时间与 BIOS 硬件时间的差异时间, 单位为 10^(-6) 秒。
       3.代理服务器上配置为ntp客户端
       1)安装ntp服务
       过程同1. zabbix服务器上安装ntp服务
       2)修改ntp配置文件
//将这行给注释
#restrictdefault nomodify notrap nopeer noquery     
//设置时间服务器为内网NTP服务器
server 10.160.255.142iburst
       修改完成后如下图所示:
       (grep -Ev "^#|^$" /etc/ntp.conf 命令的用途是排除#开头的注释,显示文件的内容)
7.png
       3)开启服务
       systemctl  start ntpd
       4)查看ntpd服务的运行状态
       systemctl  status ntpd
       或
chkconfig  ntpd  on
       5)使用ntpstat 和ntpq -p命令,查看ntp服务器同步状态
8.png

3.一段时间后再观察snmp监控网络设备的情况
一段时间后,snmp协议的按钮颜色恢复正常
9.png

过程中可能出现的问题:
1.按教程配置了ntp客户端口,ntpstat 和ntpq -p命令看到的状态异常。
分析:这可能是ntp客户端的本地时间与ntp服务器的时间相差太大导致的。
解决办法:
1)手动执行ntpdate  10.160.255.142 命令,进行时间同步。
2)时间同步后,使用systemctl  restart ntpd 命令重启ntp服务即可

2.ntp服务同步了系统时间后,也想把硬件时间同步了
操作方法:
1)修改/etc/sysconfig/ntpd文件,写入下面两行:
OPTIONS="-u ntp:ntp -p/var/run/ntpd.pid -g"
SYNC_HWCLOCK=yes
结果入下图:
10.png
2)修改完成后,重启ntpd服务即可。

参考链接:




上一篇:zabbix使用ipv6地址监控snmp客户端
下一篇:zabbix_agent信号量报错处理方法
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝0

帖子9

发布主题
最新发布

乐维社区

微信公众号

版权所有 © 2016-2019 九一乐维丨粤ICP备17007026号-2