2017-04-20 74 views
0

我使用神經節來監視hadoop。我選擇度量「dfs.datanode.HeartbeatsAvgTime」來判斷datanode(我的意思是datanode服務,而不是主機)是否關閉。神經節:我停止hadoop datanode後神經節remians圖不變

當datanode工作正常時,「dfs.datanode.HeartbeatsAvgTime」保持更改。也就是說,圖中的值是變化的。

它看起來像這樣: graph that is varing

但之後,我停止了數據節點的服務,在圖表中的值保持不變。

它看起來像這樣: enter image description here

在第二圖中的值保持unchanged.But的值不爲0或無窮大。所以,我不能判斷datanode服務已經啓動或關閉。

處理其他指標時也是如此。

我檢查了rrd,ganglia使用rrdtool fetch來存儲度量數據。關於度量的值存儲在一個* .rrd文件中。當我檢查文件時,我發現停止datanode之後,關於度量的值也被更新。但價值並沒有變化。

我在rrd的官方網站上閱讀了有關rrd的參考資料。他們說,如果rrd在之前設置的時間間隔之間沒有收到更新日期,則在* .rrdfile中將rrd寫入UNKNOWN。

我認爲可能有兩個原因引發問題。

  1. 當gmetad沒有收到指標。它用舊值更新rrd。所以圖保持與舊值相同。
  2. 當gmond無法收集指標時,它會將舊值報告給gmetad。

但我沒有真的在神經節的github源代碼中找到任何證據。

那麼你知道如何解決圖中的值保持不變的問題嗎?或者你知道關於如何監控hadoop cluster with ganglia的其他細節嗎?

@DaveStephens @Lorin霍克斯坦

+0

@Lorin Hochstein – Doone

回答

0

後,我的鬥爭來解決這個問題,我發現,如果我們設置在hadoop-metrics2.properties度量,Dmax的時候Hadoop的分解,神經節將不會收到任何數據,並返回UNKNOW。神經節網站中的圖形將消失。當ganglia + nagios時,nagios也會返回UNKNOW狀態。這足以判斷hadoop是上升還是下降。

dmax表示經過dmax時間後,hadoop會破壞度量。