Ganglia監控Hadoop叢集的安裝部署
Ganglia監控Hadoop叢集的安裝部署
一、 安裝環境
- Ubuntu server 12.04
- 安裝gmetad的機器:192.168.52.105
- 安裝gmond的機器:192.168.52.31,192.168.52.32,192.168.52.33,192.168.52.34,192.168.52.35,192.168.52.36,192.168.52.37,192.168.52.38,192.168.52.105
- 瀏覽監控web頁面的機器:192.168.52.105
二、 介紹
Ganglia 監控套件包括三個主要部分:gmond,gmetad,和網頁介面,通常被稱為ganglia- web。
- gmond 是一個守護程式,他執行在每一個需要監測的節點上,收集監測統計,傳送和接受在同一個組播或單播通道上的統計資訊。
- gme tad 也是一個守護程式,他定期檢查gmonds ,從那裡拉取資料,並將他們的指標儲存在RRD儲存引擎中。它可以查詢多個叢集並聚合指標。RRD也被用於生成使用者介面的web前端。
- ganglia- web 顧名思義,他應該安裝在有gmetad執行的機器上,以便讀取RRD檔案。
三、 安裝
1.apt-get方式安裝
首先找一個結點當作web顯示的結點,使用以下命令一鍵安裝:
apt-get -y install ganglia-monitor ganglia-webfrontend
安裝了ganglia-webfrontend就相當於同時安裝了gmetad、ganglia-web和rrdtool等。
以上安裝的版本都是3.1.7,因為ubuntu官方源裡面只支援到ganglia-webfrontend-3.1.7,起中使用的Ganglia Web Frontend版本也是3.1.7,版本太低,顯示的介面很不友好,因此後面的文章我會介紹如何手動安裝Ganglia Web Frontend version 3.5.7(目前最高版本已經到3.6)。如果為了方便,對於監控的介面要求不高的話,又圖省事,可以用上述命令一鍵安裝。
除了安裝ganglia-webfrontend的主機,其他主機只需要安裝ganglia-monitor即可。
apt-get -y install ganglia-monitor ganglia-webfrontend
安裝了ganglia-webfrontend就相當於同時安裝了gmetad、ganglia-web和rrdtool等。
以上安裝的版本都是3.1.7,因為ubuntu官方源裡面只支援到ganglia-webfrontend-3.1.7,起中使用的Ganglia Web Frontend版本也是3.1.7,版本太低,顯示的介面很不友好,因此後面的文章我會介紹如何手動安裝Ganglia Web Frontend version 3.5.7(目前最高版本已經到3.6)。如果為了方便,對於監控的介面要求不高的話,又圖省事,可以用上述命令一鍵安裝。
除了安裝ganglia-webfrontend的主機,其他主機只需要安裝ganglia-monitor即可。
2.連結到web伺服器
安裝ganglia-webfrontend的時候就已經安裝了Apache Web Server,Ganglia-webfrontend預設安裝的位置是/usr/share/ganglia-webfront,現在還不能通過瀏覽器訪問Ganglia監控介面,需要執行以下命令將將ganglia的檔案連結到apache的預設目錄下。
ln -s /usr/share/ganglia-webfront /var/www/ganglia
四、 配置
1.單播與組播
在進行Ganglia叢集配置之前,首先要搞清楚單播和組播。
- 單播:可以跨網段傳播,只將資訊傳送給指定的機器。要配置成為單播你應該指定一個(或者多個)接受的主機。
- 組播:在機器所處的網段中傳送廣播,傳送給位於同一網段的所有機器。如果你正在使用組播傳輸,那麼你沒必要改變任何東西,因為這是Ganglia包安裝預設的。唯一要做的就是把gmetad指向一個或幾個執行著gmo nd的主機。沒有必要列出每一個單個主機,因為gmo nd被設定為接受模式時會包含所有主機的列表以及整個叢集的統計資訊。
2.叢集配置
我的Ganglia監控叢集使用了單播模式。所有的配置都在/etc/ganglia目錄下,在每個節點上都要配置/etc/ganglia/gmond.conf.
紅色字型為修改項。
globals {
daemonize = yes
setuid = yes
user = root /*執行Ganglia的使用者*/
debug_level = 0
max_udp_msg_len = 1472
mute = no
deaf = no
host_dmax = 120 /*secs */
cleanup_threshold = 300 /*secs */
gexec = no
send_metadata_interval = 15 /*傳送資料的時間間隔*/
}
cluster {
name = "hadoop_hf" /*叢集名稱*/
owner = "root" /*執行Ganglia的使用者*/
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
# mcast_join = 192.168.52.105 /*註釋掉組播*/
host = 192.168.52.105 /*傳送給安裝gmetad的機器*/
port = 8649
ttl = 1
}
daemonize = yes
setuid = yes
user = root /*執行Ganglia的使用者*/
debug_level = 0
max_udp_msg_len = 1472
mute = no
deaf = no
host_dmax = 120 /*secs */
cleanup_threshold = 300 /*secs */
gexec = no
send_metadata_interval = 15 /*傳送資料的時間間隔*/
}
cluster {
name = "hadoop_hf" /*叢集名稱*/
owner = "root" /*執行Ganglia的使用者*/
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
# mcast_join = 192.168.52.105 /*註釋掉組播*/
host = 192.168.52.105 /*傳送給安裝gmetad的機器*/
port = 8649
ttl = 1
}
五、 啟動Ganglia
使用apt-get方式安裝的Ganglia,可以直接用service方式啟動。
- service ganglia-monitor start (每臺機器都需要啟動)
- service gmetad start (在安裝了ganglia-webfrontend的機器上啟動)
六、 檢驗
登入瀏覽器檢視:http://192.168.52.105/ganglia,如果Hosts up為9即表示安裝成功。
若安裝不成功,有幾個很有用的除錯命令:
- 以除錯模式啟動gmetad:gmetad -d 9
- 檢視gmetad收集到的XML檔案:telnet 192.168.52.105 8649
七、 Ganglia-web的安裝
因為3.1.7版本的Ganglia-web實在太醜,因此我解除安裝了ganglia-webfrontend,然後單獨安裝了gmetad後又安裝了新版的Ganglia-web-3.5.10.
按照官方的說明,首先將tar.gz檔案解壓,然後進入解壓後的目錄,修改Makefile檔案中的如下四個配置:
# Location where gweb should be installed to (excluding conf, dwoo dirs). GDESTDIR = /var/www/ganglia # Gweb statedir (where conf dir and Dwoo templates dir are stored) GWEB_STATEDIR = /var/lib/ganglia # Gmetad rootdir (parent location of rrd folder) GMETAD_ROOTDIR = /var/lib/ganglia APACHE_USER = root(切忌後面不要有空格)
監控介面截圖:
八、 監控Hadoop叢集
修改Hadoop的配置檔案/etc/hadoop/hadoop-metrics.properties,根據檔案中的說明,修改三處:
dfs.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
dfs.period=30
dfs.servers=192.168.52.105:8649
dfs.period=30
dfs.servers=192.168.52.105:8649
mapred.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
mapred.period=30
mapred.servers=192.168.52.105:8649
mapred.period=30
mapred.servers=192.168.52.105:8649
jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext
jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
jvm.period=30
jvm.servers=192.168.52.105:8649
jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
jvm.period=30
jvm.servers=192.168.52.105:8649
所有的servers都修改為安裝為gmetad的機器IP。
重啟Hadoop datanode:service hadoop-datanode restart
重啟gmond:/usr/sbin/gmond restart
原文地址: http://www.dataguru.cn/article-3816-1.html
原文地址: http://www.dataguru.cn/article-3816-1.html
相關文章
- 叢集監控工具ganglia
- ganglia 監控hadoop 叢集的配置檔案問題的一個說明.Hadoop
- ganglia監控的搭建部署
- Redis安裝+叢集+效能監控Redis
- 高可用Hadoop平臺-Ganglia安裝部署Hadoop
- Ganglia+Hadoop+Hbase監控搭建流程Hadoop
- 使用Ganglia對hadoop進行監控Hadoop
- 完全分散式Hadoop叢集的安裝部署步驟分散式Hadoop
- 開源監控軟體ganglia安裝手冊
- Hadoop叢集部署安裝Hadoop
- Ganglia監控工具
- Elasticsearch叢集監控工具bigdesk外掛安裝Elasticsearch
- Zabbix監控安裝部署
- 如何部署hadoop叢集Hadoop
- 使用Ganglia監控SparkSpark
- Hadoop2.7.2叢集的部署Hadoop
- 使用docker部署hadoop叢集DockerHadoop
- hadoop叢集內lzo的安裝與配置Hadoop
- 分散式Hadoop1.2.1叢集的安裝分散式Hadoop
- Zookeeper叢集 + Kafka叢集 + KafkaOffsetMonitor 監控薦Kafka
- Hadoop的叢集環境部署說明Hadoop
- 安裝 Hadoop:設定單節點 Hadoop 叢集Hadoop
- Hadoop安裝後的叢集基準測試Hadoop
- 虛擬機器Hadoop叢集搭建5安裝Hadoop虛擬機Hadoop
- 在Ubuntu 18.04.1上安裝Hadoop叢集UbuntuHadoop
- hadoop叢集多節點安裝詳解Hadoop
- FreeBSD下安裝配置Hadoop叢集(三)Hadoop
- redis sentinel 叢集監控 配置Redis
- hadoop的安裝部署Hadoop
- Linux部署hadoop2.7.7叢集LinuxHadoop
- 以 DevOps 方式部署 Hadoop 叢集devHadoop
- 小丸子學Hadoop系列之——部署Hadoop叢集Hadoop
- Jstorm叢集搭建過程/Jstorm叢集一鍵安裝部署JSORM
- Hadoop 安裝部署Hadoop
- Hadoop安裝部署Hadoop
- hadoop偽分散式叢集的安裝(不是單機版)Hadoop分散式
- Hadoop HA叢集 與 開發環境部署Hadoop開發環境
- Hadoop叢集完全分散式模式環境部署Hadoop分散式模式