使用Ganglia對hadoop進行監控
原文連結:http://www.cnblogs.com/lijun4017/archive/2011/08/11/2135031.html
Ganglia是一個監控伺服器,叢集的開源軟體,能夠用曲線圖表現最近一個小時,最近一天,最近一週,最近一月,最近一年的伺服器或者叢集的cpu負載,記憶體,網路,硬碟等指標。
Ganglia的強大在於:ganglia服務端能夠透過一臺客戶端收集到同一個網段的所有客戶端的資料,ganglia叢集服務端能夠透過一臺服務端收集到它下屬的所有客戶端資料。這個體系設計表示一臺伺服器能夠透過不同的分層能夠管理上萬臺機器。這個功能是其他mrtg,nagios,cacti所不能比擬。
因為hadoop的支援問題,我們推薦安裝ganglia3.0.3。
作業系統環境:CentOS5.2
叢集環境:
namenode 192.168.75.144
datanode1 192.168.75.145
datanode2 192.168.75.146
ganglia的服務端安裝在namenode上
下載安裝包,清單如下:
rrdtool-1.0.50-3.el5.rf.x86_64.rpm
ganglia-web-3.0.3-1.noarch.rpm
ganglia-gmetad-3.0.3-1.rhel4.x86_64.rpm
ganglia-gmond-3.0.3-1.rhel4.x86_64.rpm
一、安裝客戶端
#rpm -Uvh ganglia-gmond-3.0.3-1.rhel4.x86_64.rpm
安裝完畢以後gmond預設就啟動了,稍後可以使用service gmond start|stop|restart等控制啟動,停止,重啟等功能;
在/etc/下會產生一個gmond.conf的配置檔案。
在這個配置檔案中先找到setuid = yes,改成setuid =no;然後找到在cluster中的name,改成name ="hadoop-test";
其他都不用改了,儲存以後重啟gmond服務;
二、安裝伺服器端
1.首先安裝rrdtool
#rpm -Uvh rrdtool-1.0.50-3.el5.rf.x86_64.rpm
安裝以後執行rrdtool,能夠顯示版本號等資訊說明rrdtool安裝完畢
建立rrd資料儲存的資料夾, 修改屬性擁有者為: "nobody":
#mkdir /var/lib/ganglia/rrds
#chown nobody:nobody /var/lib/ganglia/rrds
2.安裝gmetad
#rpm -Uvh ganglia-gmetad-3.0.3-1.rhel4.x86_64.rpm
安裝過程中可能會提示依賴ruby 等包,一路使用yum install ruby安裝其他需要的包
安裝完成後gmetad服務預設就啟動了,稍後可以使用service gmetad start|stop|restart等控制啟動,停止,重啟等功能;
在/etc/下會產生一個gmetad.conf的配置檔案。
在這個配置檔案中主要是增加一些datasource,即被監控的機器的列表。
在我的例子中是
data_source "hadoop-test" hadoop-namenode:8649 hadoop-datanode1:8649 hadoop-datanode2:8649
其中"hadoop-test"是叢集名稱,呆會要和客戶端的gmond中配置的name要一致,後面多個機器名的話用空格隔開就可以了
配置過配置檔案以後,需要重啟gmetad來應用配置。
3.安裝web
#rpm -Uvh ganglia-web-3.0.3-1.noarch.rpm
安裝以後會在/var/www/html下面生成一個ganglia 的資料夾。
現在啟動apache
#service httpd start
啟動成功後,透過訪問就可以看到ganglia的首頁了。
另外要透過yum install php-gd安裝一個外掛,如果沒有這個外掛,首頁左下角會有一個餅圖無法顯示,也並不太影響使用。
三、配置hadoop檔案
找到hadoop根目錄下的conf資料夾下的hadoop-metrics.properties檔案
改成如下內容
# Configuration of the "dfs" context for ganglia
dfs.class=org.apache.hadoop.metrics.ganglia.GangliaContext
dfs.period=10
dfs.servers=239.2.11.71:8649
# Configuration of the "mapred" context for ganglia
mapred.class=org.apache.hadoop.metrics.ganglia.GangliaContext
mapred.period=10
mapred.servers=239.2.11.71:8649
# Configuration of the "jvm" context for ganglia
jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext
jvm.period=10
jvm.servers=239.2.11.71:8649
注:239.2.11.71這個是ganglia用的多播的地址,不需要改成gmetad的伺服器地址
如果需要監控hbase的話,也一樣找到hbase目錄下的這個檔案,改法一樣就不重複了。
改完以後重啟hadoop服務
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26613085/viewspace-1131753/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Flume監控之Ganglia
- 使用Powershell對目標進行螢幕監控
- 使用 Sentry 對應用進行監控,少 bug 少加班
- 分散式監控系統ganglia的詳細配置分散式
- springboot中加入druid對sql進行監控Spring BootUISQL
- 一種對雲主機進行效能監控的監控系統及其監控方法
- 【Zabbix】如何使用Zabbix進行IPMI監控?
- 使用 Skywalking 對 Kubernetes(K8s)中的微服務進行監控K8S微服務
- Zabbix監控使用進階
- Python對系統資料進行採集監控——psutilPython
- 如何進行監控設計?
- 如何進行網站的真實使用者監控(RUM)?怎麼進入監控網站網站
- 使用aop來監控方法進行增強處理
- centos7使用ntopng進行流量監控和分析CentOS
- 使用 iotop 監控哪些程式在進行I/O操作
- 使用Zabbix + Python對Mysql監控PythonMySql
- spring-boot-admin對spring-boot專案進行監控Springboot
- SpringBoot整合Actuator進行健康監控Spring Boot
- 如何使用表格儲存控制檯進行資料監控
- 在Linux中,如何進行使用者行為監控?Linux
- Python對Hadoop資料進行讀寫PythonHadoop
- 如何對伺服器進行24小時不間斷監控?伺服器
- 使用Prometheus和Grafana進行系統監控和預測 - flightawarePrometheusGrafana
- HDFS監控背後那些事兒,構建Hadoop監控共同體Hadoop
- 使用Flink SQL進行實時效能監控:AdTech廣告用例SQL
- 在Linux中,如何進行磁碟效能監控?Linux
- 進行Linux效能監控的命令介紹Linux
- Node效能如何進行監控以及優化?優化
- 【Zabbix配置】透過iLO進行Zabbix監控——針對HP伺服器整合伺服器
- 在Linux中,如何進行系統效能監控?Linux
- 在Linux中,如何進行硬體效能監控?Linux
- Node效能如何進行監控以及最佳化?
- 使用 ABAP 事物碼 SAT 對從瀏覽器開啟的 SAP應用進行效能監控和測量瀏覽器
- 使用Admin監控
- idou老師教你學Istio 26:如何使用Grafana進行視覺化監控Grafana視覺化
- 【譯】Google - 使用 webpack 進行 web 效能優化(三):監控和分析應用GoWeb優化
- 想在 KubeSphere 中進行自定義監控?來瞧瞧這
- 聊聊如何利用p6spy進行sql監控SQL
- 詳細教程丨使用Prometheus和Thanos進行高可用K8S監控PrometheusK8S