時間同步問題

載較大的應用系統中,都會有多臺服務器在同時工作。由於應用的需要,所有服務器要求有一致的時間,如何統一它們?在本文中將介紹兩種方法,使多個服務器有一致的時間。 運行環境:AIX 4.3, AIX 5.1, AIX 5.2 在AIX中可以用兩種方法來實現應用環境中多臺機器的系統時間的統一。一個是啓動xntpd 守護進程, 另一個是啓動timed進程. 爲了保證時間的一致性,在同一臺機器上只啓動xntpd 或 timed. (在AIX中這兩個進程,缺省是不啓動。每個AIX系統使用自己的系統時間。) xntpd 是一個關於網絡時間協議的守護進程,它遵循了因特網時間服務器的通用標準。在啓動 xntpd 時, xntpd 會讀取 /etc/ntp.conf 配置文件來確定網絡中系統時鐘服務器,以 ntp 服務器的系統時間爲標準,來調整本機的系統時間。 可以用 ntpq 命令來顯示 xntpd 進程的內部變量。使用 ntp 時應注意,xntpd 服務器和 xntpd 客戶端的時鐘不能相差超過1000秒。若有大於1000秒的偏移,在客戶端啓動 xntpd 守護進程前,用 data 命令或 ntpdate 命令調整本機的系統時間,使偏移量在1000秒之內。 然後啓動 xntpd. timed 是一個時鐘服務進程。 在一個局域網內可有多個 timed 服務器,但只有一個 timed 主服務器,其餘的是 timed 副服務器。當 timed 主服務器功能失效時,其中一個 timed 副服務器可自動變爲主服務器。 網絡時間可以以 timed 主服務器的系統時間爲標準,也可以以所有運行 timed 的主、輔服務器的系統時鐘的平均值爲準,來調整所有運行 timed 進程的機器的系統時鐘。timed 客戶機的系統時間與局域網上運行着的 timed 主服務器的系統時間同步,使整個網絡運行環境有一個統一的時鐘。 1. 構造一個NTP環境的基本步驟(假設NTP不是運行在SP上): 1.1 設置NTP 服務器 (MASTER) , 其它NTP客戶服務器以此服務器的時間爲準,與其進行時間同步. 1.1.1 編輯 /etc/ntp.conf 文件, 內容如下: ---------------------------- #broadcastclient server 127.127.1.0 driftfile /etc/ntp.drift tracefile /etc/ntp.trace ---------------------------- 請注意文件中的 server 127.127.1.0 這一行, 此處的127.127.1.0 是一特殊的地址,表示NTP主服務器是與自身的系統時鐘同步. 1.1.2 編輯好 /etc/ntp.conf後, 啓動xntpd守護進程 # startsrc -s xntpd 也可通過調用smitty , 使 xntpd 在以後重啓服務器時能自動啓動. # smitty xntpd 1.1.3 xntpd 狀態查詢 , 使用 #lssrc -ls xntpd 剛啓動xntpd時, sys peer 爲 'insane', 表明xntpd還沒有完成同步, . #lssrc -ls xntpd Program name: --/usr/sbin/xntpd Version: -------3 Leap indicator: 11 (Leap indicator is insane.) Sys peer: ------no peer, system is insane ... 等待 6 - 10 分鐘後, sys peer 就不再是 'insane' 了. #lssrc -ls xntpd Program name: --/usr/sbin/xntpd Version: -------3 Leap indicator: 00 (No leap second today.) Sys peer: ------127.127.1.0 ... 1.2. NTP客戶端的設置 1.2.1 編輯 NTP 客戶端上的 /etc/ntp.conf文件, 內容如下: ---------------------------- #broadcastclient server 9.185.43.189 driftfile /etc/ntp.drift tracefile /etc/ntp.trace ---------------------------- 其中的 server 9.185.43.189 表明, 此客戶端與IP地址爲 9.185.43.189 的NTP服務器進行時間同步. 1.2.2 在NTP客戶端啓動xntpd守護進程 # startsrc -s xntpd 也可通過調用smitty , 使 xntpd 在以後重啓服務器時能自動啓動. # smitty xntpd 1.2.3 查詢xntpd的狀態 當 system peer 不爲 'insane' 時, 表明客戶端已與服務器端成功地進行了同步. # lssrc -ls xntpd Program name: --/usr/sbin/xntpd Version: -------3 Leap indicator: 00 (No leap second today.) Sys peer: ------9.185.43.189 ... 1.3. NTP客戶端查詢NTP服務器 ntp客戶端使用 ntpdate 命令來確認是否可用指定的 ntp 服務器進行時間同步。 命令的結果會顯示客戶端與服務器的時間偏移。 #ntpdate -d 9.185.43.189 ... 18 Mar 10:52:54 ntpdate[23578]: step time server 9.185.43.189 offset 86323.06827 2 sec 若時間間隔大於1000秒,使用ntpdate 進行調整, 如: #date Tue Mar 18 11:06:29 BEIST 2003 #ntpdate 9.185.43.189 19 Mar 11:06:51 ntpdate[23832]: step time server 9.185.43.189 offset 86403.40260 7 sec #date Wed Mar 19 11:06:54 BEIST 2003 完成上述操作後 ntp 客戶端與 ntp 服務器系統時鐘完成同步,ntp 客戶端得到了新的系統時間。 2. 使用timed的基本設置步驟如下 2.1. 啓動timed服務器 a. 在局域網內,以timed 主服務器的系統時鐘爲標準,來完成時鐘的同步。 # startsrc -s timed -a " -M -c " b. 在局域網內,以所有運行 timed 的主、輔服務器的系統時間平均值爲標準,來完成時鐘的同步。 # startsrc -s timed -a " -M “ 2.2. 啓動timed 客戶端, 使其按照標準網絡時間來調整自己的系統時鐘。 # startsrc -s timed 2.3. 將timed的啓動語句加到 /etc/rc.tcpip 中,以便重新啓動機器後,timed可自動啓動。 參考資料: timed , xntpd command
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章