在時間強相關的服務中,時間不同步導致監控失效
在測試中,我遇到了強時間相關的測試統計。需要同步不同伺服器之間的時間。
之前看ntp時,發現ntp有如果時間差太大,則不同步的問題。並且,在實際使用中,也遇到使用了ntp時間同步差異大的問題。
再之後,我發現aws官方推薦使用chrony來進行資料同步。之後,採用chrony進行時間同步後,各伺服器之間時間穩定,未再出現時間差不穩定的情況。
在查閱相關文件後,我們發現chrony在時間同步精確度上,優於ntp。 且chrony不存在時間差大時,不同步的問題。
sudo apt install chrony以下是aws上的時間同步伺服器
使用任何文字編輯器(如 vim 或 nano)開啟 /etc/chrony/chrony.conf 檔案。在該檔案中已包含的任何其他 server 或 pool 語句前面新增以下行,然後儲存您的更改:
這裡的優先也很重要,讓大家都同步同一臺機器。
server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4
sudo /etc/init.d/chrony restart在返回的輸出中,^* 指示首選的時間源。
chronyc sources -v
chronyc tracking參考:
加上allow後,這個chrony就可以作為ntp伺服器節點了。其他伺服器可以來這裡同步時間。
以下配置在/etc/chrony/chrony.conf 檔案中即可。
all預設是讓所伺服器都可以來同步。 也可以加上一些子網限制
allow [all] [subnet]
allow 1.2.3.4然後在客戶端的伺服器中/etc/chrony/chrony.conf中配置:即可。allow 1.2
allow 3.4.5
allow 6.7.8/22
allow 6.7.8.9/22
allow 2001:db8::/32
allow 0/0 allow ::/0
allow
其中的prefer很重要,不然在多個同步服務時,可能自己本地的ntp服務不被選中,會使用其他的源作為同步的時間選項。
server ip prefer iburst minpoll 4 maxpoll 4建議使用chrony
aws上使用chrony:
使用chrony配置是幾台伺服器的時間同步。可以輕鬆的配置乙個server, 其他的作為client到這個服務上同步時間。
Linux伺服器時間同步
linux伺服器執行久時,系統時間就會存在一定的誤差,一般情況下可以使用date命令進行時間設定,但在做資料庫集群分片等操作時對多台機器的時間差是有要求的,此時就需要使用ntpdate進行時間同步。date命令 date 檢視當前時間,結果如下 tue mar 4 01 36 45 cst 2014...
Linux 伺服器時間同步
linux伺服器執行時間過長導致系統時間存在一定的誤差,一般情況下可以使用date命令進行時間設定,但在做資料庫集群分片等操作時對多台機器的時間差是有要求的,此時就需要使用ntpdate進行時間同步。date命令 date 檢視當前時間,結果如下 tue mar 4 01 36 45 cst 201...
Linux伺服器時間同步
linux伺服器執行久時,系統時間就會存在一定的誤差,一般情況下可以使用date命令進行時間設定,但在做資料庫集群分片等操作時對多台機器的時間差是有要求的,此時就需要使用ntpdate進行時間同步。date命令 date 檢視當前時間,結果如下 tue mar 4 01 36 45 cst 2014...