Hadoop

如何知道哪個腳本或執行檔與神經節中的指標相關聯?

  • October 21, 2014

我剛剛開始探索神經節,我的問題是“如何知道哪個腳本或執行檔與神經節中的指標相關聯?”

事實上,我對神經節知之甚少。我在 zabbix 方面有很好的經驗,我想在 zabbix 中連結一個已經在 ganglia 工作的圖表。

我在網際網路上瀏覽了很多,但沒有一個答案是相關的。

假設,指標是:

“hbase.RegionServerDynamicStatistics.tbl.SUBSCRIBER.cf.M_T_V”

在此之下,2 個圖表顯示為“hbase.RegionServerDynamicStatistics.tbl.SUBSCRIBER.cf.M_T_V.get__avg_time”和“hbase.RegionServerDynamicStatistics.tbl.SUBSCRIBER.cf.M_T_V.get__num_ops”

據我了解,這個指標不是內置的。如果我錯了,請糾正我。

必須有一些腳本或執行檔收集這些值。所以,請幫我找到劇本?

我還嘗試在配置文件中找到此類指標,例如 /etc/ganglia/gmond.conf 和 /etc/ganglia/gmetad.conf 文件,但沒有任何此類條目。

我在某處讀到可以基於 gmetric 形成一些自定義指標命令行。這可以附加在 cron 作業中,它會定期將數據發送到 ganglia 伺服器。如果這是它發生的方式,那麼有什麼方法可以找到為此形成的基於 gmetric 的命令行?

好的,我得到了這個問題的答案。這對其他人也可能有所幫助。

實際上,hadoop 有一個名為GangliaContext31.java的類,它根據 ganglia 伺服器的 IP 或 FQDN 將所有與 hadoop 相關的指標發送到 ganglia 伺服器,在 hadoop 的配置文件hadoop-metrics2.properties中提供。

此配置文件的簡短摘錄如下所示:

namenode.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
namenode.sink.ganglia.period=10
namenode.sink.ganglia.servers=ganglia-server:8649 

ganglia-server是所說的FQDN。

安裝在 ganglia-server 上的 gmond 守護程序收集這些指標並將它們轉發給安裝在 ganlia-server 上的 gmetad 守護程序。gmetad 守護程序將這些指標儲存在rrdtool 中。通過這種方式,可以根據儲存在 rrdtool 中的這些值建構圖形。

引用自:https://serverfault.com/questions/624676