Ganglia 不更新圖表
我開始注意到我的網路界面在幾個小時內沒有更新圖表。每次我
gmond
在客戶端上重新啟動該過程時,我都會看到圖表確實有效。大約一個小時後我回來,我的圖表是空白的,只是一個白色的圖表,沒有任何更新。如果我再次啟動它,它工作得很好。我不確定它是什麼。我的設置如下。
客戶端 -> gmond 收集器 -> gmeta/web 主機
gmetad.conf
data_source "ENG1" 10.199.1.110 data_source "ENG2" 10.199.19.100 data_source "QA" 10.199.10.200
來自 10.199.10.200 的 gmond.conf
globals { daemonize = yes setuid = yes user = nobody debug_level = 0 max_udp_msg_len = 1472 mute = no deaf = no allow_extra_data = yes host_dmax = 0 /*secs */ cleanup_threshold = 300 /*secs */ gexec = no send_metadata_interval = 0 /*secs */ } cluster { name = "QA" } udp_send_channel { host = 10.199.10.200 port = 8649 ttl = 1 } udp_recv_channel { port = 8649 }
**gmond.conf 沒有我的客戶端文件與上面相同,只是它沒有
udp_recv_channel
定義塊。我將狀態從客戶端轉發到收集器(例如 10.199.10.200),然後由 gmeta 伺服器(10.199.1.110)拉取。該伺服器還從定義為“ENG1”的一組伺服器收集數據。
在 Ubuntu 上安裝 Ganglia 時,我一直面臨這個問題。根據文件,聽起來 gmond 失去了元數據,不知道如何處理度量數據。由於您將 Ganglia 設置為單播模式,因此您需要指示 gmond 通過更改
send_metadata_interval
為非零值來定期發送元數據:globals { daemonize = yes setuid = yes user = ganglia debug_level = 0 max_udp_msg_len = 1472 mute = no deaf = no allow_extra_data = yes host_dmax = 0 /*secs */ cleanup_threshold = 300 /*secs */ gexec = no send_metadata_interval = 30 /*secs */ }
試試看!
閱讀更多:
http://sourceforge.net/apps/trac/ganglia/wiki/ganglia_release_notes
3.1 如果需要,收集器將請求 gmond 重新發送其指標描述資訊,如果使用多播,如果您正在使用單播,則無法執行此操作,因此如果您重新啟動收集器,將只留下來自集群的部分數據或沒有數據正在通過它收集,直到該集群中的所有 gmond 都重新啟動。如果將單播設置設置為合理的值,則要解決此問題,
send_metadata_interval
以便所有 gmond 定期將其元數據重新發送給收集器,以防失去。http://sourceforge.net/apps/trac/ganglia/wiki/FAQ
在最近的 gmond (3.1.x) 版本中,在
gmond.conf
called中添加了一個新的全域變數send_metadata_interval
,預設設置為 0。目的是減少網路流量。在 3.1 中,度量數據與元數據分開發送,例如元數據包含詳細描述、分組、其他可能的設置。值為零表示 gmond 將在啟動時發送元數據,而不是其他時間(這與舊版本的 ganglia 一致)。如果您計劃使用單播模式,請設置
send_metadata_interval
為 0 以外的值。已發現 30-60 秒在大多數情況下可以可靠地工作。將此變數設置為非零值將使 gmond 程序定期公佈其指標,並且圖表將重新出現在主機視圖頁面上。