admin 管理员组

文章数量: 1184232


2024年12月25日发(作者:sap二次开发)

局域网内

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

2009.12.31

目录

1. NTP跟踪层级安排

2. NTP配置数据对单点故障应对能力的评估

3. NTP服务器-redhat服务器的配置数据及说明

4. NTP客户机一redhat服务器的配置数据及说明

NTP跟踪层级安排

设备

192.168.80.31

192.168.80.34

其他redhat机器

第1跟踪时钟源

192.168.80.4prefer

192.168.80.4prefer

192.168.80.31或192.168.80.34

第2跟踪时钟源

注1

注1

192.168.80.34或

192.168.80.31

第3跟踪时钟源

127.127.1.0

127.127.1.0

127.127.1.0

网内NTP

S/C

server

server

client

注1:如有其他与192.168.80.4同级的时钟源可用,则NTP的可靠性更佳。

网内所有NTP客户机由自已的NTP算法根据当时NTP服务器及网络状态自行

选择NTP服务器:不是192.168.80.3僦是192.168.80.34一旦网内NTP客户机失去了

与网内NTP服务器的连接,将会按照自已的时钟频率将系统时间继续走下去,除了可能

会造成日志时间和告警时间与标准时间有非常小的偏差外,不会对服务器应用或自身造成

任何影响。

二.NTP配置数据对单点故障应对能力的评估

下面就局域网内系统中相关设备发生单点故障时,各设备的NTP时钟跟踪情

况做一分析:

1. .上级NTP服务器单机失效但vrrp有效:

设备

192.168.80.31

192.168.80.34

其他redhat机器

所跟踪的上级NTP服务器

192.168.80.4

192.168.80.4

192.168.80.31或192.168.80.34

能否跟踪上级时钟

台匕目匕

台匕目匕

2. 上级NTP服务器vrrp失效):

设备

192.168.80.31

192.168.80.34

所跟踪的上级NTP服务器

127.127.1.0(自身硬件时钟)

127.127.1.0(自身硬件时钟)

192.168.80.31或192.168.80.34

能否跟踪上级时钟

不能

不能

其他redhat机器

3. 局域网内的NTPserver_1(31)失效:

设备

所跟踪的上级NTP服务器

能否跟踪上级时钟

192.168.80.31

192.168.80.34

其他redhat机器

192.168.80.4

192.168.80.34

台匕目匕

台匕目匕

4. 局域网内的NTPserver_2(34)失效:

设备

192.168.80.31

所跟踪的上级NTP服务器

192.168.80.4

能否跟踪上级时钟

台匕目匕

192.168.80.34

其他redhat机器

192.168.80.32

台匕目匕

三.NTP服务器—redhat服务器(31,34)的配置数据及说明

(注:对NTP服务器的唯一要求是机器上不要跑双机系统。

1. NTP的配置文件(/etc/)的内容:

#ntprestrictpart

restrictdefaultkodnomodifynotrapnopeernoquery

restrict127.0.0.1

restrict192.168.80.0mask255.255.255.0nomodifynotrap

restrict192.168.81.0mask255.255.255.0nomodifynotrap

#ntpserverpart

server192.168.80.4version3

server127.127.1.0

#fudge127.127.1.0stratum10

#ntpotherpart

driftfile/var/lib/ntp/drift

2. 硬件时间每日有条件地被系统时间更新的配置

(1)创建硬件时间更新脚本:

/root/day_update_的内容:

)

/usr/sbin/ntpq-p>/root/tmp_2>&1

ifgrep"*†192.168.80.4"/root/tmp_n

/bin/date>>/root/tmp_2>&1

/usr/sbin/hwclock--show>>/root/tmp_2>&1

/usr/sbin/hwclock-w>>/root/tmp_2>&1

[$?-eq0]&&echo"hwclock-wsuccess">>/root/tmp_2>&1

/bin/date>>/root/tmp_2>&1

/usr/sbin/hwclock--show>>/root/tmp_2>&1else

logger-palert"[HC]:NTPserverlostorNTPservicestop"fi

hwclock-wsuccess

MonJan414:19:20CST2010

Mon04Jan201002:19:20PMCST-0.015907seconds

[root@ftpnode2~]#

该脚本用于将系统时间去同步硬件时间,以消除硬件时间的累积误差。

作为网内NTP服务器,这样做是必须的。因为一旦与上级NTP服务器失去

连接后,该网内NTP服务器将使用自身的硬件时钟作为自已的时间跟踪源向

#cattmp_

remoterefidsttwhenpollreachdelayoffsetjitter

†192.168.80.4127.0.0.14u76310243777.6510.3732.499

LOCAL(0).LOCL.5l21643770.0000.0000.001

[root@PC2sbin]#cattmp_

MonJan414:19:18CST2010

Mon04Jan201002:19:18PMCST-0.015936seconds

网内NTP客户机提供服务,所以NTP服务器的硬件时间必须尽可能接近标

准时间。但同步也是有条件的:当本机与上级NTP服务器处在有效跟踪状态

时,用本机当前系统时间去更新硬件时间;反之,当本机与上级NTP服务器

的同步状态失去时,本机硬件时钟必须保持独立,因为此时系统时间将把本

机的硬件时钟作为自已的上级NTP服务器而跟踪,故此时不能再用系统时间

去同步硬件时间了。

在本机与上级NTP服务器的同步状态失去的同时,脚本将向局域网内

网管告警:本机与上级NTP服务器的连接丢失或本机NTP服务已退出。

(2)在系统cron中增加一条命令用于每日一次系统自动去做系统时间同步硬件时间

的动作:

在/etc/crontab中增加的内容:

0012***root/root/day_update_

每日12时0分时自动有条件地做一次硬件时钟的校准。

3. NTP服务开机自动启动的配置及相关处理

配置NTP服务在开机时自动启动:

#chkconfig--level35ntpdon

配置了NTP服务开机时自动启动后,Linux机器在开机或重启时,系统

会首先读取硬件时间作为本机的系统时间,然后启动NTP服务。但作为NTP

服务器,这样的启动过程无法保证其以标准时间向NTP客户机提供服务(硬

件时间不准确的因素有很多)。所以,必须在系统启动NTP服务之前,把它

的系统时间直接校准到上级NTP服务器的时间。其处理方法是:在NTP服务

启动脚本/etc/rc.d/init.d/ntpd中”#Startdaemons.行

113行)后增加下列命令:

#beforeNTPservicestart,systemtimeisresetbyitsNTPserver'stime.

NTP_MAX_WAIT_SECOND=120

NTP_SERVER_IP=192.168.80.4

NTP_WAIT_COUNT=0

date>/root/tmp_2>&1

while[$NTP_WAIT_COUNT-ne$NTP_MAX_WAIT_SECOND]

do

NTP_PING_STATE='ping-c1$NTP_SERVER_IP|grep'1received'|wc-l'

[$NTP_PING_STATE-ne0]&&break

NTP_WAIT_COUNT='expr$NTP_WAIT_COUNT+1'

echo$NTP_WAIT_COUNT>>/root/tmp_2>&1

done

/usr/sbin/ntpdate$NTP_SERVER_IP>>/root/tmp_2>&1date>>/root/tm

p_2>&1

===============================

这样配置以后,NTP服务器在启动后将无需人工介入,直接提供NTP

校时服务。

上述1,2,3步的配置和措施能够保证局域网内网内NTP服务器以稳定的时间

基准和状态向网内所有NTP客户机提供校时服务,以满足网内RAC架构或其他双

机数据库服务器对时间同步的严格要求。

4. NTP相关操作命令

(1)系统时间设置及显示命令:

日期设置

#date$yyyy-mm-dd

时间设置:#date$hh:mm:ss

显示:#date

(2)硬件时间设置及显示命令:

hwclock--set--date="12/15/200915:59:59”

hwclock-rorhwclock--show

(3)系统时间与硬件时间的同步命令:

把硬件时间设置为系统时间:hwclock-worhwclock--systohc

把系统时间设置为硬件时间:hwclock-sorhwclock--hctosys

(

4)将本机系统时间直接设置为对方机器系统时间的命令(注:本机NTP服

务必须是关闭的):

#ntpdate对方机器的IP地址

(5) NTP服务状态查询命令:

#ntpstat

synchronisedtoNTPserver(192,168.80.4atstratum6

timecorrecttowithin30ms

pollingserverevery64s

(6) NTP同步过程的单步和连续跟踪命令(注:本机NTP服务必须在运行状

态):

单步跟踪命令:

#ntpq-p

remoterefidsttwhenpollreachdelayoffsetjitter

===================================================================

*192.168.80.4127.0.0.14u1.260-0.2911.480

LOCAL(0).LOCL.5l29643770.0000.0000.001

(7) NTP时钟源的跟踪命令(注:本机NTP服务必须在运行状态):

[root@shouli1〜]#ntptrace

shoulil:stratum5,offset-0.000024,synchdistance0.066127

PC1:stratum4,offset0.000404,synchdistance0.029184

192.168.80.4:timedout,nothingreceived

***Requesttimedout

(8)设备之间的连接状态及两者之间的传输延迟,时间差值(—XX.局域网内

表示本机系统时间比对方设备的系统时间快XX.局域网内秒)的查询命令:

(注:本机NTP服务在运行状态或关闭状态均可,但对方设备的NTP服

务必须在运行状态)

#ntpdate-d对方设备的IP地址

[root@PC1etc]#ntpdate-d192.168.80.4

4Dec16:39:11ntpdate[27230]:ntpdate4.2,2p1@1.1570-oMonJun4

15:13:13UTC2007(1)

Lookingforhost192.168.80.4andservicentp

hostfound: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)

receive(192.168.80.4)

transmit(192.168.80.4)

server192.168.80.4,port123

stratum3,precision-18,leap00,trust000

refid[192.168.80.4],delay0.02632,dispersion0.00000

transmitted4,infilter4

referencetime:cec34851.72072e27Fri,Dec

originatetimestamp:cec3492d.a883ecc1Fri,Dec

transmittimestamp:cec3492f.701a79feFri,Dec

filterdelay:0.026410.026320.026370.02634

0.000000.000000.000000.00000

filteroffset:-1.77999-1.78002-1.78002-1.78001

4200916:35:29.445

4200916:39:09.658

4200916:39:11.437

0.0000000.0000000.0000000.000000

delay0.02632,dispersion0.00000

offset-1.780027

4Dec16:39:11ntpdate[27230]:steptimeserver192.168.80.4offset-1.780027sec

(9) NTP服务开机自动启动的配置及检查命令:

酉已置:#chkconfig--level35ntpdon

(打开自动启动用“on”

去掉自动启动用“off”

)

检查:#chkconfig--list

(10)启动/停止/重启动NTP服务的命令:

servicentpdstart|stop|restart

四.NTP客户机一redhat服务器的配置及说明

1. NTP配置文件(/etc/)

#ntprestrictpart

restrictdefaultnomodifynotrapnopeernoquery

restrict127.0.0.1

restrict192.168.80.0mask255.255.255.0nomodifynotrap

restrict192.168.81.0mask255.255.255.0nomodifynotrap

#ntpserverpart

server192.168.80.31server192.168.80.34

server127.127.1.0

fudge127.127.1.0stratum10

#ntpotherpart

driftfile/var/lib/ntp/drift

2. NTP服务开机自动启动的配置

均配置为NTP服务自动启动。但不做重启特殊处理,即在系统重启时不做系统

时间直接校准(需评估)。

3. 定时(每日一次)将系统时间无条件写入硬件时钟

在系统cron(/etc/crontab)中增加一条命令

010***root/sbin/hwclock-w

4. NTP相关操作命令

同NTP服务器的相关操作命令

2009.12.31


本文标签: 时间 系统 服务器 硬件 服务