NTP服务器搭建
1. 目标
主要描述现场部署中ntp服务器的所在位置及安装指导。
2. 简介
由于linux系统时钟偏差的存在,所以为了避免主机时间因为长期运作下所导致的时间偏差,就需要进行时间同步的工作。我们主要以ntpd来进行搭建ntp服务器。
3. ntp服务器部署
在现场部署时,所有服务器向ntp server进行时间同步,ntp server再向上级ntp server同步。
可选用nms或未用的服务器搭建ntp server。
4. ntp搭建
4.1 安装
下载地址:
系统已默认安装ntp。
4.2 服务器设置
a) 关闭防火墙或防火墙放开udp port 123(123为ntpd服务端口)。
b) 编辑/etc/ntp.conf文件,加入上级ntp server的地址。
[root@ser ~]# vim /etc/ntp.conf
server 220.130.158.71 prefer <==以这部主机为最优先
server 59.124.196.83
server 59.124.196.84
fudge 127.127.1.0 stratum 10
c) 修改文件/etc/sysconfig/ntpd
把options="-u ntp:ntp -p /var/run/ntpd.pid -g"
改为options="-x -u ntp:ntp -p /var/run/ntpd.pid -g"
d) 保存退出后,重启ntpd
[root@ser ~]# service ntpd restart
shutting down ntpd: [ ok ]
starting ntpd: [ ok ]
4.3 客户端设置
a) 编辑/etc/ntp.conf文件,加入ntp server的地址。
[root@cli ~]# vim /etc/ntp.conf
server 192.168.3.3 prefer
b) 修改文件/etc/sysconfig/ntpd
把options="-u ntp:ntp -p /var/run/ntpd.pid -g"
改为options="-x -u ntp:ntp -p /var/run/ntpd.pid -g"
c) 保存退出后,重启ntpd
[root@cli ~]# service ntpd restart
shutting down ntpd: [ ok ]
starting ntpd: [ ok ]
4.4 状态检查
[root@cli ~]# ntpq -p
remote refid st t when poll reach delay offset jitter
222.197.165.167 .init. 16 u - 1024 0 0.000 0.000 0.000 (上级server无响应, 将一直处于init状态)
*clock.via.net 128.138.141.172 2 u 103 128 367 167.407 15.872 11.712 (正在使用的server)
+ntp-nasa.arc.na 192.58.23.162 2 u 114 128 377 253.601 -45.719 34.248 (有响应的候选server)
+133.100.11.8 133.100.53.51 2 u 239 128 376 307.891 14.952 19.504 (有响应的候选server)
ntpq –p可以列出目前我们的ntp与相关的上层ntp的状态,字段解释:
l remote: ntp主机ip或主机名称
- * 响应的ntp服务器和最精确的服务器,代表目前正在使用的地址。
- + 响应这个查询请求的ntp服务器,代表作为下一个提供时间更新的候选者。
l refid: remote参考的上一层ntp主机的地址
l st: remote远程服务器的级别.由于ntp是层型结构,有顶端的服务器,多层的relay server再到客户端.所以服务器从高到低级别可以设定为1-16.为了减缓负荷和网络堵塞,原则上应该避免直接连接到级别为1的服务器的
l when: 上次同步后经历的时间
l poll: 下次同步时间的间隔
l reach: 已经向上层ntp服务器同步的次数
l delay: 网络传输过程中的延时,往返时间,单位毫秒
l offset:主机通过ntp时钟同步与所同步时间源的时间偏移量,单位为毫秒(ms)。offset越接近于0,主机和ntp服务器的时间越接近
l jitter: 这是一个用来做统计的值.它统计了在特定个连续的连接数里offset的分布情况.简单地说这个数值的绝对值越小,主机的时间就越精确
5. 多个上级选择顺序
当配置多个ntp server时,同步顺序如下:
- 标有prefer的server地址优先级最高。当地址不可用时将进行下面的顺序同步。
- 远程服务器的级别st越小,优先级越高。
- 同级别st的多个server,延时delay越小优先级越高。
6. 其他说明
ntpd服务的方式有两种策略,一种是平滑、缓慢的渐进式调整(adjusts the clock in small steps所谓的微调);一种是步进式调整(跳跃式调整)。两种策略的区别就在于,微调方式在启动ntp服务时加了个“-x”的参数,而默认的是不加“-x”参数。
假如使用了-x选项,那么ntpd只做微调,不跳跃调整时间,但是要注意,-x参数的负作用:当时钟差大的时候,同步时间将花费很长的时间。-x也有一个阈值,就是600s,当系统时钟与标准时间差距大于600s时,ntpd会使用较大“步进值”的方式来调整时间,将时钟“步进”调整到正确时间。
假如不使用-x选项,那么ntpd在时钟差距小于128ms时,使用微调方式调整时间,当时差大于128ms时,使用“跳跃”式调整。
这两种方式都会在本地时钟与远端的ntp服务器时钟相差大于1000s时,ntpd会停止工作。在启动ntp时加了参数“-g”就可以忽略1000s的问题。
7. 常见问题排查
常见问题是和上级ntp同步失败,排查方法如下:
1) 停掉ntpd
service ntpd stop
2) 使用调试模式检查到上级ntp服务器的情况。
执行命令ntpdate –d 221.130.175.25
3) 若调试模式到上级ntp同步正常,那说明ntpd等的时间不够长(第一次同步需要10-30分钟左右去同步)
4) 若调试模式下到上级异常,更换ntp协议版本查看是否正常,目前版本有1-4(默认为版本4)。
ntpdate -o 3 221.130.175.253
若更换协议正常,需要修改配置文件后重启,在/etc/ntp.conf中改为
server 221.130.175.253 prefer version 3
server 221.130.175.254 version 3
5) 若依旧异常,使用ping检查到上级的带宽是否通,若不通需弄通网络。
6) 更换为局域网内ntp服务器同步是否成功,检查是否软件版本所致。
8. 公网ntp服务地址
国内高校ntp服务器:
ntp.sjtu.edu.cn 上海交通大学网络中心ntp服务器
s2d.time.edu.cn 西南地区网络中心 ntp服务器
s2e.time.edu.cn 西北地区网络中心 ntp服务器
s2f.time.edu.cn 东北地区网络中心 ntp服务器
s2g.time.edu.cn 华东南地区网络中心 ntp服务器
国外ntp服务器
ntp.nasa.gov 美国
133.100.11.8 日本 福冈大学
time-a.nist.gov 129.6.15.28 nist,马里兰州盖瑟斯堡
time-b.nist.gov 129.6.15.29 nist, 马里兰州盖瑟斯堡
time-a.timefreq.bldrdoc.gov 132.163.4.101 nist, 科罗拉多州博尔德
time-b.timefreq.bldrdoc.gov 132.163.4.102 nist, 科罗拉多州博尔德
time-c.timefreq.bldrdoc.gov 132.163.4.103 nist, 科罗拉多州博尔德
utcnist.colorado.edu 128.138.140.44 科罗拉多大学,博尔德
time.nist.gov 192.43.244.18 ncar, 科罗拉多州博尔德
nist1-sj.glassey.com 207.126.98.204 abovenet, 加利福尼亚州圣何塞
clock.via.net
130.149.17.21
time.asia.apple.com