当前位置:文档之家› linux(Red Hat)NTP时间同步的配置方法

linux(Red Hat)NTP时间同步的配置方法

局域网内linux(Red Hat)NTP时间同步的配置方法2009.12.31目录1.NTP跟踪层级安排2.NTP配置数据对单点故障应对能力的评估3.NTP服务器- redhat服务器的配置数据及说明4.NTP客户机-redhat服务器的配置数据及说明一.NTP跟踪层级安排注1:如有其他与192.168.80.4同级的时钟源可用,则NTP的可靠性更佳。

网内所有NTP客户机由自已的NTP算法根据当时NTP服务器及网络状态自行选择NTP服务器:不是192.168.80.31就是192.168.80.34。

一旦网内NTP客户机失去了与网内NTP服务器的连接,将会按照自已的时钟频率将系统时间继续走下去,除了可能会造成日志时间和告警时间与标准时间有非常小的偏差外,不会对服务器应用或自身造成任何影响。

二.NTP配置数据对单点故障应对能力的评估下面就局域网内系统中相关设备发生单点故障时,各设备的NTP时钟跟踪情况做一分析:1.上级NTP服务器单机失效但vrrp有效:2.上级NTP服务器vrrp失效):3.局域网内的NTP server_1 (31)失效:4.局域网内的NTP server_2 (34)失效:三.NTP服务器-redhat服务器(31, 34)的配置数据及说明(注:对NTP服务器的唯一要求是机器上不要跑双机系统。

)1.NTP的配置文件(/etc/ntp.conf)的内容:===============================#ntp restrict partrestrict default kod nomodify notrap nopeer noqueryrestrict 127.0.0.1restrict 192.168.80.0 mask 255.255.255.0 nomodify notraprestrict 192.168.81.0 mask 255.255.255.0 nomodify notrap#ntp server partserver 192.168.80.4 version 3server 127.127.1.0#fudge 127.127.1.0 stratum 10#ntp other partdriftfile /var/lib/ntp/drift==============================2.硬件时间每日有条件地被系统时间更新的配置(1)创建硬件时间更新脚本:/root/day_update_hwclock.sh的内容:===========================/usr/sbin/ntpq -p > /root/tmp_ntpq.txt 2>&1if grep "*192.168.80.4" /root/tmp_ntpq.txtthen/bin/date >> /root/tmp_ntpq.txt 2>&1/usr/sbin/hwclock --show >> /root/tmp_ntpq.txt 2>&1/usr/sbin/hwclock -w >> /root/tmp_ntpq.txt 2>&1[ $? -eq 0 ] && echo "hwclock -w success" >> /root/tmp_ntpq.txt 2>&1/bin/date >> /root/tmp_ntpq.txt 2>&1/usr/sbin/hwclock --show >> /root/tmp_ntpq.txt 2>&1elselogger -p alert "[HC]:NTP server lost or NTP service stop"fi正常输出结果:# cat tmp_ntpq.txtremote refid st t when poll reach delay offset jitter=========================================================== *192.168.80.4 127.0.0.1 4 u 763 1024 377 7.651 0.373 2.499 LOCAL(0) .LOCL. 5 l 21 64 377 0.000 0.000 0.001 [root@PC2 sbin]#cat tmp_ntpq.txtMon Jan 4 14:19:18 CST 2010Mon 04 Jan 2010 02:19:18 PM CST -0.015936 secondshwclock -w successMon Jan 4 14:19:20 CST 2010Mon 04 Jan 2010 02:19:20 PM CST -0.015907 seconds[root@ftpnode2 ~]#=============================该脚本用于将系统时间去同步硬件时间,以消除硬件时间的累积误差。

作为网内NTP服务器,这样做是必须的。

因为一旦与上级NTP服务器失去连接后,该网内NTP服务器将使用自身的硬件时钟作为自已的时间跟踪源向网内NTP客户机提供服务,所以NTP服务器的硬件时间必须尽可能接近标准时间。

但同步也是有条件的:当本机与上级NTP服务器处在有效跟踪状态时,用本机当前系统时间去更新硬件时间;反之,当本机与上级NTP服务器的同步状态失去时,本机硬件时钟必须保持独立,因为此时系统时间将把本机的硬件时钟作为自已的上级NTP服务器而跟踪,故此时不能再用系统时间去同步硬件时间了。

在本机与上级NTP服务器的同步状态失去的同时,脚本将向局域网内网管告警:本机与上级NTP服务器的连接丢失或本机NTP服务已退出。

(2)在系统cron中增加一条命令,用于每日一次系统自动去做系统时间同步硬件时间的动作:在/etc/crontab中增加的内容:=============================00 12 * * * root /root/ day_update_hwclock.sh=============================每日12时0分时自动有条件地做一次硬件时钟的校准。

3.NTP服务开机自动启动的配置及相关处理配置NTP服务在开机时自动启动:#chkconfig --level 35 ntpd on配置了NTP服务开机时自动启动后,Linux机器在开机或重启时,系统会首先读取硬件时间作为本机的系统时间,然后启动NTP服务。

但作为NTP 服务器,这样的启动过程无法保证其以标准时间向NTP客户机提供服务(硬件时间不准确的因素有很多)。

所以,必须在系统启动NTP服务之前,把它的系统时间直接校准到上级NTP服务器的时间。

其处理方法是:在NTP服务启动脚本/etc/rc.d/init.d/ntpd中"# Start daemons."行(113行)后增加下列命令:================================#before NTP service start,system time is reset by its NTP server's time.NTP_MAX_WAIT_SECOND=120NTP_SERVER_IP=192.168.80.4NTP_WAIT_COUNT=0date > /root/tmp_ntpdate.txt 2>&1while [ $NTP_WAIT_COUNT -ne $NTP_MAX_WAIT_SECOND ]doNTP_PING_STA TE=`ping -c1 $NTP_SERVER_IP|grep '1 received'|wc -l`[ $NTP_PING_STA TE -ne 0 ] && breakNTP_WAIT_COUNT=`expr $NTP_WAIT_COUNT + 1`echo $NTP_WAIT_COUNT >> /root/tmp_ntpdate.txt 2>&1done/usr/sbin/ntpdate $NTP_SERVER_IP >> /root/tmp_ntpdate.txt 2>&1date >> /root/tmp_ntpdate.txt 2>&1===============================这样配置以后,NTP服务器在启动后将无需人工介入,直接提供NTP 校时服务。

上述1,2,3步的配置和措施能够保证局域网内网内NTP服务器以稳定的时间基准和状态向网内所有NTP客户机提供校时服务,以满足网内RAC 架构或其他双机数据库服务器对时间同步的严格要求。

4.NTP相关操作命令(1)系统时间设置及显示命令:日期设置:#date –s yyyy-mm-dd时间设置:#date –s hh:mm:ss显示:#date(2)硬件时间设置及显示命令:hwclock --set --date="12/15/2009 15:59:59"hwclock -r or hwclock --show(3)系统时间与硬件时间的同步命令:把硬件时间设置为系统时间:hwclock -w or hwclock --systohc把系统时间设置为硬件时间:hwclock -s or hwclock --hctosys (4)将本机系统时间直接设置为对方机器系统时间的命令(注:本机NTP服务必须是关闭的):#ntpdate 对方机器的IP地址(5)NTP服务状态查询命令:# ntpstatsynchronised to NTP server (192.168.80.4 at stratum 6time correct to within 30 mspolling server every 64 s(6)NTP同步过程的单步和连续跟踪命令(注:本机NTP服务必须在运行状态):单步跟踪命令:#ntpq –premote refid st t when poll reach delay offset jitter===================================================================*192.168.80.4 127.0.0.1 4 u 1023 1024 377 9.260 -0.291 1.480LOCAL(0) .LOCL. 5 l 29 64 377 0.000 0.000 0.001(7)NTP时钟源的跟踪命令(注:本机NTP服务必须在运行状态):[root@shouli1 ~]# ntptraceshouli1: stratum 5, offset -0.000024, synch distance 0.066127PC1: stratum 4, offset 0.000404, synch distance 0.029184192.168.80.4: timed out, nothing received***Request timed out(8)设备之间的连接状态及两者之间的传输延迟,时间差值(-XX.局域网内表示本机系统时间比对方设备的系统时间快XX.局域网内秒)的查询命令:(注:本机NTP服务在运行状态或关闭状态均可,但对方设备的NTP服务必须在运行状态)#ntpdate -d 对方设备的IP地址[root@PC1 etc]# ntpdate -d 192.168.80.44 Dec 16:39:11 ntpdate[27230]: ntpdate 4.2.2p1@1.1570-o Mon Jun 4 15:13:13 UTC 2007 (1)Looking for host 192.168.80.4 and service ntphost found : 192.168.80.4transmit(192.168.80.4)receive(192.168.80.4)transmit(192.168.80.4)receive(192.168.80.4)transmit(192.168.80.4)receive(192.168.80.4)transmit(192.168.80.4)receive(192.168.80.4)transmit(192.168.80.4)server 192.168.80.4, port 123stratum 3, precision -18, leap 00, trust 000refid [192.168.80.4], delay 0.02632, dispersion 0.00000transmitted 4, in filter 4reference time: cec34851.72072e27 Fri, Dec 4 2009 16:35:29.445 originate timestamp: cec3492d.a883ecc1 Fri, Dec 4 2009 16:39:09.658 transmit timestamp: cec3492f.701a79fe Fri, Dec 4 2009 16:39:11.437 filter delay: 0.02641 0.02632 0.02637 0.026340.00000 0.00000 0.00000 0.00000filter offset: -1.77999 -1.78002 -1.78002 -1.780010.000000 0.000000 0.000000 0.000000delay 0.02632, dispersion 0.00000offset -1.7800274 Dec 16:39:11 ntpdate[27230]: step time server 192.168.80.4 offset -1.780027sec(9)NTP服务开机自动启动的配置及检查命令:配置:#chkconfig --level 35 ntpd on(打开自动启动用“on”;去掉自动启动用“off”)检查:# chkconfig --list(10)启动/停止/重启动NTP服务的命令:service ntpd start|stop|restart四.NTP客户机-redhat服务器的配置及说明1.NTP配置文件(/etc/ntp.conf)#ntp restrict partrestrict default nomodify notrap nopeer noqueryrestrict 127.0.0.1restrict 192.168.80.0 mask 255.255.255.0 nomodify notraprestrict 192.168.81.0 mask 255.255.255.0 nomodify notrap#ntp server partserver 192.168.80.31server 192.168.80.34server 127.127.1.0fudge 127.127.1.0 stratum 10#ntp other partdriftfile /var/lib/ntp/drift2.NTP服务开机自动启动的配置均配置为NTP服务自动启动。

相关主题