前言:
网络时间协议NTP(NetworkTime Protocol)是用于互联网中时间同步的标准互联网协议。NTP的用途是把计算机的时间同步到某些时间标准。目前采用的时间标准是世界协调时 UTC(Universal Time Coordinated)。NTP的主要开发者是美国特拉华大学的David L. Mills教授。
NTP对于我们个人来说有什么用呢,简单的讲,当你的计算机时间不准确了,你可以接入到互联网,从网上同步一下时间,看多方便。
ntpd在实际同步时间时是一点点的校准过来时间的,最终把时间慢慢的校正对。而ntpdate不会考虑其他程序是否会阵痛,直接调整时间(会有想不到的后果)
一个是校准时间,一个是调整时间。
对于企业来说,当你有成百上千的计算机,都不能直接连接互联网,时间不统一影响业务,如果一台一台的修改,那不得累死人啊。这时搭建一个自己的NTP服务器就显出它的优势了。
由于线上的环境,有些服务器不需要上外网,只需做内网之间的通信即可,所以这些服务器的时间就无法保证同步,可能会对业务造成一些影响,为此,我们需要在内网架设一台NTP时间同步服务器。
首先在服务端安装ntpd服务,一般情况下安装系统的时候已经安装好,如果没有安装,我们可以使用如下命令安装
一、服务器端配置
下载ntp软件(yum源下载)
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
yum install ntp -y
2. 修改配置文件
默认在/etc/ntpd.conf文件中:
首先,修改配置文件前备份,cp /etc/ntpd.conf /etc/ntpd.conf.org
[root@console ~]# grep -Ev "#|^$" /etc/ntp.conf.org
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
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
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
修改后的配置文件:
[root@console ~]# cat /etc/ntp.conf
driftfile /var/lib/ntp/drift
restrict default nomodify
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1
server time.nist.gov
#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
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
3.重启动ntpd服务:
/etc/init.d/ntpd restart
4.查看本地NTP与上级服务器的通讯情况
[root@console ~]# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
utcnist2.colora .ACTS. 1 u 66 64 76 313.246 5980216 2441326
解释:
remote :响应这个请求的NTP服务器的名称。
refid :NTP服务器使用的上一级ntp服务器。
st :remote远程服务器的级别. 由于NTP是层型结构,有顶端的服务器,多层的Relay Server再到客户端. 所以服务器从高到低级别可以设定为1-16. 为了减缓负荷和网络堵塞,原则上应该避免直接连接到级别为1的服务器的.
when: 上一次成功请求之后到现在的秒数。
poll : 本地机和远程服务器多少时间进行一次同步(单位为秒). 在一开始运行NTP的时候这个poll值会比较小,那样和服务器同步的频率也就增加了,可以尽快调整到正确的时间范围,之后poll值会逐渐增大,同步的频率也就会相应减小
reach: 这是一个八进制值,用来测试能否和服务器连接.每成功连接一次它的值就会增加
delay: 从本地机发送同步要求到ntp服务器的round trip time
offset :主机通过NTP时钟同步与所同步时间源的时间偏移量,单位为毫秒(ms)。offset越接近于0,主机和ntp服务器的时间越接近
jitter: 这是一个用来做统计的值. 它统计了在特定个连续的连接数里offset的分布情况. 简单地说这个数值的绝对值越小,主机的时间就越精确
二、NTP的配置文件:
/etc/ntp.conf NTP服务的配置文件。
1)、权限的设定主要以 restrict 这个参数来设定,主要的语法为:
restrict IP地址 mask 子网掩码参数
其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP
参数有以下几个:
ignore :关闭所有的 NTP 联机服务
nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时。
notrust :客户端除非通过认证,否则该客户端来源将被视为不信任子网
noquery :不提供客户端的时间查询
2)、用server这个参数设定上级时间服务器,语法为:
server IP地址或域名 [prefer]
IP地址或域名就是我们指定的上级时间服务器,如果 Server 参数最后加上 prefer,表示我们的 NTP 服务器主要以该部主机时间进行校准。
3)、解决NTP服务器校准时间时的传送延迟
使用driftfile参数设置:
driftfile 文件名
在与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内。
注意: driftfile 后面接的文件需要使用完整的路径文件名,不能是链接文件,并且文件的权限需要设定成 ntpd守护进程可以写入。
三、客户端
集群内部无外网局域网的服务器全部同步服务端服务器,各自设置定时任务同步这台ntp服务器时间即可
注意,这些服务器的ntpd服务必须关闭。
ntpdate ntp服务器ip地址
[root@web02 scripts]# ntpdate 172.16.1.61(测试成功)
3 Dec 20:17:35 ntpdate[16063]: adjust time server 172.16.1.61 offset -0.000570 sec
此次期中集群搭建中拓展ntpd服务搭建自学,本菜鸟通过查找资料以及与同学交流得出搭建流程,可能有缺陷,还请欢迎广大博友批评改正!
老男孩大神温馨提示:
imageco配置ntp服务器 注意事项
1 修改vi /etc/ntp.conf
添加上一级 ntp 服务器
server clock.redhat.com
最好多加几个一级,或者二级 ntp服务器
2 添加NTP服务器允许更新的客户机
restrict 192.168.0.0 mask 255.255.255.0 nomodify
允许192.168.0.0 网段的机器到这台机器上更新
3 ntp服务初始化同步
配置/etc/ntp/step-tickers 添加 clock.redhat.com 或者其他ntp服务器地址。
在ntp服务启动的时候会强制到这个ntp服务器上去更新
4 添加硬件时钟同步:
配置/etc/sysconfig/ntpd文件添加:
SYNC_HWCLOCK=yes
本文出自 “追梦男孩” 博客,请务必保留此出处http://runningyongboy.blog.51cto.com/8234857/1719377
原文地址:http://runningyongboy.blog.51cto.com/8234857/1719377