【NTP】手工同步NTP保證RAC 節點主機之間秒級一致

kunlunzhiying發表於2017-05-22
有關《【RAC】部署安裝RAC時確保主節點的時間小於其他節點時間》(http://space.itpub.net/519536/viewspace-674458)文中提到的問題,一般情況下,我們可以使用文中介紹的手工調整方法解決問題。不過仍然存在使用這種手工調整的方法解決不了的問題。例如,在虛擬機器環境中,經常出現短時間內系統時鐘出現較大偏差的情況,在手工調整後很快便會出現時鐘不穩定的情況。應對這種問題的最好方法便是使用網路時間服務(NTP)。

有關網路時間服務的細節請參考文章《【NTP】Redhat5.1環境下網路時間服務NTP的安裝部署》(http://space.itpub.net/?uid-519536-action-viewspace-itemid-608186)。

本文透過實踐,給出一種保證秒級時鐘一致的方法。主要目的是解決VMware虛擬機器上RAC主機之間的時間總是沒有辦法達到秒級別的同步問題(使用crontab可以滿足每分鐘同步一次的目的,無法達到秒級的時間同步)。

1.作業系統資訊
[root@rac1 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.1 (Tikanga)
[root@rac1 ~]# uname -a
Linux rac1 2.6.18-53.el5 #1 SMP Wed Oct 10 16:34:02 EDT 2007 i686 i686 i386 GNU/Linux

2.確保NTP已安裝
[root@rac1 ~]# rpm -qa | grep ntp
chkfontpath-1.10.1-1.1
ntp-4.2.2p1-7.el5

3.若未安裝,在安裝光碟中找到安裝介質完成安裝
rpm -ivh ntp*.rpm

4.配置NTP
[root@rac1 ~]# vi /etc/ntp.conf
在檔案尾部新增如下內容,表示任何192.168.247網段的主機都可以與這臺主機進行時間同步
restrict 192.168.247.0 mask 255.255.255.0 nomodify notrap

5.啟動NTP服務
[root@rac1 ~]# service ntpd start
Starting ntpd:                                             [  OK  ]

6.設定開機啟動服務
[root@rac1 ~]# chkconfig ntpd on

需要稍等幾分鐘(3分鐘左右)該服務才能夠生效,否則在主機rac2與主機rac1進行同步的時候會收到如下的報錯資訊。
[root@rac2 ~]# ntpdate rac1
18 Oct 21:25:20 ntpdate[3545]: no server suitable for synchronization found

7.部署自定義時間同步指令碼
此時,可以在rac2主機上部署如下指令碼完成每秒的時間同步
[root@rac2 ~]# cat ntpdate_to_rac1.sh
while :; do ntpdate rac1; sleep 1; done

如若仍不滿足需求,可以在後臺同時啟動多個同步指令碼。

8.小結
本文給出的是透過手工同步NTP的方法來達到主機間的秒級一致,解決虛擬機器環境下RAC主機間時鐘極端不穩定的問題。僅建議在試驗壞境下使用這種方法,真實的伺服器不會出現時鐘過分不一致問題,使用crontab每隔一段時間同步一次即可。

Good luck.

secooler
10.10.18

-- The End --

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28211342/viewspace-2139687/,如需轉載,請註明出處,否則將追究法律責任。

相關文章