當(dāng)你啟動(dòng)你的NTP,你通常想知道他如何工作的。這篇文章描述xntp的配置、監(jiān)控、故障診斷和調(diào)試問(wèn)題如何確認(rèn)NTP服務(wù)器工作正常一個(gè)最快的命令來(lái)驗(yàn)證ntpd仍是啟動(dòng)的所需ntpq - p。這個(gè)命令將顯示所有對(duì)等體使用性能數(shù)據(jù)和連同他們的配置。因?yàn)閚tpq命令需要定期調(diào)用監(jiān)控性能,還建議使ntpd統(tǒng)計(jì)數(shù)據(jù)文件。如何利用對(duì)等體狀態(tài)和層次狀態(tài)(peerstatsand loopstats)
我使用下面的配置在/etc/ntp.conf中啟用loopfilter統(tǒng)計(jì)。每天新創(chuàng)建的文件和當(dāng)前文件在/var/log/ntp/peers和/var/log/ntp/loops.舊文件歸檔到/var/log/ntp/peers.YYYYMMDD 和/var/log/ntp/loops.YYYYMMDD
statistics sysstatsloopstats peerstats clockstats rawstats
statsdir /var/log/ntp/
filegen sysstatsfile sysstats type day enablefilegen loopstats file loopstats type dayenablefilegen peerstats file peerstats type day enablefilegen clockstats fileclockstats type day enablefilegen rawstats file rawstats type day enable
filegen peerstatsfile peers type day link enable
filegen loopstatsfile loops type day link enable
通常我只監(jiān)控loop文件。下圖展示各個(gè)領(lǐng)域的每個(gè)文件,我將通過(guò)例子展示peerstats和loopstats在以下版本3和版本4。
ntpv4的顯示數(shù)據(jù)
基于fedroa開(kāi)發(fā)的HJ210-BDRBP數(shù)據(jù)ntpv4的顯示數(shù)據(jù)
[NTP-Fedora20log]#cat loopstats |head -n 3
57967 39669.588 -0.006423931-20.590 0.004704549 0.000000 4
57967 39685.588-0.004043112 -20.590 0.004480482 0.000000 4
57967 39701.588-0.002367271 -20.590 0.004232781 0.000000 4
[NTP-Fedora20log]#cat peerstats |head -n 3
57967 39070.966127.127.1.0 9024 0.000000000 0.000000000 7.937500477 0.000000954
57967 39086.966127.127.1.0 9024 0.000000000 0.000000000 3.937560715 0.000000954
57967 39102.966127.127.1.0 9024 0.000000000 0.000000000 1.937620834 0.000000954
對(duì)于NTP4.2.0此功能默認(rèn)為關(guān)閉,需要enable states。而NTP4.2.8版本此功能默認(rèn)是開(kāi)放的可以查看ntp-4.2.8p7/html/miscopt.html。此關(guān)鍵字的說(shuō)明可以查看即可生成監(jiān)控所需要的文件,filegen只是對(duì)生產(chǎn)的文件進(jìn)行改名處理。
如何查看客戶端和時(shí)鐘服務(wù)器的時(shí)間差異
通常ntpd維護(hù)時(shí)間偏移量的估計(jì)。您可以使用以下命令檢查這些偏移量:
ntpq - p將顯示每個(gè)訪問(wèn)服務(wù)器以毫秒為單位的補(bǔ)償(ntpdc- p使用秒替代)。
ntpdc - c loopinfo打印選定的回路濾波器變量的值。ntpdc -c kerninfo將顯示當(dāng)前剩余校正變量,正如ntptime顯示的那樣。
ntpd首先可以用來(lái)檢查時(shí)間源當(dāng)前偏移和抖動(dòng),再次檢查相對(duì)一級(jí)時(shí)間源的偏差,一種如何自動(dòng)收集這些數(shù)據(jù)的方法。
如果秒脈沖源生效下(see and ),每秒鐘頻率選擇偏差將被跟新。故障的時(shí)候,將直接比較時(shí)間偏差。一個(gè)最簡(jiǎn)單的方法是利用ntpdate -d server 直接比較客戶端和時(shí)鐘服務(wù)的偏差值。
reach值257代表什么含義
這個(gè)值是八進(jìn)制值,它代表了上級(jí)源是否可達(dá)性登記。它由三位范圍從0到7中的數(shù)字組成。登記的初始值是0,每次到達(dá)后左移一位。
NTP正常啟動(dòng)這些寄存器值如下:0, 1, 3,7, 17, 37, 77, 177, 377257 在八進(jìn)制系統(tǒng) 10101111,表明兩個(gè)有效回復(fù)沒(méi)有被接受在過(guò)去的八個(gè)回復(fù)中,但最后的四個(gè)回復(fù)是正常的。
如何使用這些統(tǒng)計(jì)數(shù)據(jù)文件
你可以做很多有用的事在你刪除統(tǒng)計(jì)文件之前。例如有一個(gè)由Perl編寫名為summary.pl 用來(lái)計(jì)算平均值和標(biāo)準(zhǔn)偏差(RMS)loopfilter和peer的統(tǒng)計(jì)數(shù)據(jù)。它也將顯示這些文件中找到的異常情況。這里是一個(gè)簡(jiǎn)短的示例輸出(你可以使用summary.pl --dir=/var/log/ntp --start=19990518--end=19990604):loops.19990518loop 110,-30+/-36.5, rms 6.7, freq 14.95+/-1.149, var 0.612loops.19990519loop 113,-26+/-40.3, rms 6.9, freq 12.95+/-3.240, var 1.378
loops.19990520loop 107,-7+/-32.0, rms 5.7, freq 13.04+/-3.253, var 1.579loops.19990522loop 190, 3+/-18.5,rms 2.9, freq 15.48+/-3.715, var 0.604
另外一種替代方案,使用有用的plot_summary.pl程序可以直接使用"/var/log/ntp/loops"的數(shù)據(jù)來(lái)畫圖,下圖是通過(guò)有點(diǎn)復(fù)雜的命令生產(chǎn)的,分別由誤差估計(jì)與頻率偏移。
偏移和頻率估計(jì)誤差
現(xiàn)在我們正在看數(shù)字和圖表,讓我們比較一個(gè)GPS時(shí)鐘的數(shù)據(jù)(使用PPS)與一個(gè)典型的低成本的時(shí)鐘(不使用PPS)。 顯示了GPS時(shí)鐘一個(gè)很小的偏移。頻率不斷調(diào)整。相比之下,DCF77時(shí)鐘顯示較大的偏移,但頻率調(diào)整幅度較小。
咨詢電話:
掃一掃咨詢微信客服