linux如何开启时间同步服务器(超详细的Linux时间同步配置方法)
linux如何开启时间同步服务器(超详细的Linux时间同步配置方法)restrict 192.168.1.0 mask 255.255.255.0 notrap nomodifyrestrict default ignore # 关闭所有的 NTP 要求封包vi /etc/ntp.conf2.1以互联网的时间服务器为时间服务器的时钟设置要求:以time.nist.gov 为时间服务器,在ntp.conf中增加或修改以下内容:
概述写这篇文章主要是工作中总会碰到服务器时间不同步的情况,导致日志、或者集群记录的时间不一致。所以写一下这方面内容。
1.查询是否安装ntp,若没有安装的话使用yum进行安装
rpm -q ntp
yum –y install ntp
2.服务器端配置服务器端需要修改配置文件/etc/ntp.conf
vi /etc/ntp.conf
2.1以互联网的时间服务器为时间服务器的时钟
设置要求:以time.nist.gov 为时间服务器,在ntp.conf中增加或修改以下内容:
restrict default ignore # 关闭所有的 NTP 要求封包
restrict 192.168.1.0 mask 255.255.255.0 notrap nomodify
server time.nist.gov #设置时间服务器
server 127.127.1.1 #开启内部递归网络接口
fudge 127.127.1.1 stratum 10 refid NIST # LCL 不同步
driftfile /etc/ntp.drift
logfile /var/log/ntp.log
Broadcastdelay 0.008 #广播延迟时间#
2.2以内部ntp服务器为数据服务器时钟
设置要求:不对 Internet 提供服务,仅对内部子网提供服务,内部子网的客户端不能修改NTP服务器的时间参数。
在ntp.conf中增加或修改以下内容:
restrict default ignore # 关闭所有的 NTP 要求封包
restrict 127.0.0.1 # 开启内部递归网络接口 lo
restrict 192.168.0.0 mask 255.255.255.0 nomodify #在内部子网里面的客户端可以 进行网络校时,但不能修改NTP服务器的时间参数。
server 198.168.77.170 #198.123.30.132作为上级时间服务器参考
driftfile /var/lib/ntp/drift
broadcastdelay 0.008 #广播延迟时间#
3.启动服务启动NTP服务
service ntpd start
如果想每次系统启动,NTP服务自动启动 请输入下面命令:
/sbin/chkconfig --add ntpd
/sbin/chkconfig --level 234 ntpd on //配置在开机时运行
打开iptables防火墙123端口
NTP服务的端口是123 使用的是udp协议,所以NTP服务器的防火墙必须对外开放udp 123这个端口。方法如下,使用以下规则:
/sbin/iptables -A INPUT -p UDP -i eth0 -s 192.168.0.0/24 \
> --dport 123 -j ACCEPT
查看ntp服务器工作情况
通常我们使用命令查看123端口和ntp系统进程判断ntp服务器是否工作正常。命令如下:
netstat -unl | grep 123 #查看123端口
ps -ef|grep ntp #查看ntp进程是否启动
4.监控ntp服务器ntpq用来监视ntpd操作,使用标准的NTP模式6控制消息模式,并与NTP服务器通信。
ntpq -p查询网络中的NTP服务器,同时显示客户端和每个服务器的关系。
"* ":响应的NTP服务器和最精确的服务器。
" ":响应这个查询请求的NTP服务器。
"blank(空格)":没有响应的NTP服务器。
"remote" :响应这个请求的NTP服务器的名称。
"refid ":NTP服务器使用的更高一级服务器的名称。
"st":正在响应请求的NTP服务器的级别。
"when":上一次成功请求之后到现在的秒数。
"poll":当前的请求的时钟间隔的秒数。
"offset":主机通过NTP时钟同步与所同步时间源的时间偏移量,单位为毫秒(ms)。
5.客户端的配置在Linux 上面进行网络校时非常简单,执行 ntpdate 即可:
ntpdate 192.168.77.170 #192.168.77.170是NTP服务器的IP
注意:Ntpd启动的时候通常需要一段时间大概5分钟进行时间同步,所以在ntpd刚刚启动的时候还不能正常提供时钟服务,报错"no server suitable for synchronization found"。启动时候需要等待5分钟。
如果想定时进行时间校准,可以使用crond服务来定时执行。
编辑 /etc/crontab 文件
vi /etc/crontab
加入下面一行:
00 7 * * * root /usr/sbin/ntpdate 192.168.77.170
>> /root/ntpdate.log 2>&1 #192.168.77.170是NTP服务器的IP地址
然后重启crond服务
service crond restart
这样,每天 7:00 Linux 系统就会自动的进行网络时间校准。
如果大家也经常碰到服务器时间不同步的情况,这篇文章刚好可以解决你的问题,就帮忙转发点个赞哦!
后面会分享更多关于devops和DBA方面的内容,感兴趣的朋友可以关注下~