开发者社区> 李振良> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Ganglia监控Hadoop与HBase集群

简介:
+关注继续查看
福利推荐:阿里云、腾讯云、华为云等大品牌云产品全线2折优惠活动来袭,4核8G云服务器899元/3年,新老用户共享优惠,点击这里立即抢购>>>

以下基于上篇Hadoop2.6与HBase1.0集群架构:

http://lizhenliang.blog.51cto.com/7876557/1665130

http://lizhenliang.blog.51cto.com/7876557/1661354

?Hadoop集群基本部署完成,接下来就需要有一个监控系统,能及时发现性能瓶颈,给故障排除提供有力依据。监控hadoop集群系统好用的比较少,自身感觉ambari比较好用,但不能监控已有的集群环境,挺悲催的。ganglia在网上看到原生支持Hadoop、Hbase性能监控,试用一段时间感觉还不错,监控项比较全面,配置简单,软件包在epel网络源中,使用yum安装方便快捷。

?Ganglia是一个开源集群监控系统,主要用来监控系统性能,如:cpu、mem、硬盘利用率、I/O负载、网络流量等。

Ganglia涉及到三个组件:

gmetad:定期从gmond获取数据,并将数据存储到RRD存储引擎中。

gmond:被监控端代理程序,用于收集监控信息,并发送给gmetad。

ganglia-web:WEB前端,RRD绘图后通过PHP展示。

四、Ganglia集群监控系统部署

1.??CentOS7 YUM自带epel网络源,直接安装(部署到HMaster0上,尽量单独放一台机器上)

1
2
#?yum?install?epel-release???
#?yum?install?ganglia-web?ganglia-gmetad?ganglia-gmond

此时会安装出来我们要安装的ganglia之外,还要安装httpd、php、rrdtool、gd、png、jpeg等相关软件包

2.??配置监控端(在HMaster0上配置)

?2.1 配置监控程序

1
2
3
?#?vi?/etc/ganglia/gmetad.conf???#修改以下两项
?data_source?"Hadoop"?192.168.18.215?192.168.18.216?192.168.18.217?192.168.18.218192.168.18.219
?case_sensitive_hostnames?1

?参数说明:

?第一个是数据源,Hadoop是集群名字,后跟IP是集群中被监控节点地址。

?第二个意思是是否区分主机名大小写,默认是0,修改为1,否则节点中主机名有大写的将保存为小写,写到/var/lib/ganglia/rrds/Hadoop中,导致图形无数据。

?2.2 关联Apache,因为Ganglia自创建的配置ganglia.conf有问题,所以先删除,再创建个软连接到Apache根目录下。

1
2
?#?rm?/etc/httpd/conf.d/ganglia.conf??
?#?ln?-s?/usr/share/ganglia?/var/www/html/ganglia

?2.3启动Apache和Ganglia,并设置开机启动

1
2
3
4
?#?systemctl?start?httpd
?#?systemctl?start?gmetad
?#?systemctl?enable?httpd
?#?systemctl?enable?gmetad

3.??安装与配置被监控端(每台同样配置)

?3.1 安装与配置代理程序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
?#?yum?install?ganglia-gmond
?#?vi?/etc/ganglia/gmond.conf
?……
?cluster{
???name?=?"Hadoop"??????????????#集群名,和上面那个一样
???owner?=?"unspecified"
???latlong?=?"unspecified"
???url?=?"unspecified"
?}
???
?/*?Thehost?section?describes?attributes?of?the?host,?like?the?location?*/
?host?{
???location?=?"unspecified"
?}
???
?/*Feel?free?to?specify?as?many?udp_send_channels?as?you?like.??Gmond
????used?to?only?support?having?a?single?channel*/
?udp_send_channel{
???#bind_hostname?=?yes?#?Highly?recommended,soon?to?be?default.
???????????????????????#?This?option?tells?gmond?to?use?asource??address
????????????????????????#?that?resolves?to?themachine's?hostname.??Without
????????????????????????#?this,?the?metrics?mayappear?to?come?from?any
????????????????????????#?interface?and?the?DNSnames?associated?with
????????????????????????#?those?IPs?will?be?usedto?create?the?RRDs.
???#mcast_join?=?239.2.11.71???#关闭多播
???host?=?192.168.18.215?????#添加发送IP/主机名
???port?=?8649??????????#默认端口
???ttl?=?1
?}
??
?/*?Youcan?specify?as?many?udp_recv_channels?as?you?like?as?well.?*/
?udp_recv_channel{
???#mcast_join?=?239.2.11.71??
???port?=?8649
???bind?=?192.168.18.215??????#接收地址
???retry_bind?=?true
???#?Size?of?the?UDP?buffer.?If?you?are?handlinglots?of?metrics?you?really
???#?should?bump?it?up?to?e.g.?10MB?or?evenhigher.
???#?buffer?=?10485760
?}
?……

3.2 将修改好的gmond.conf配置scp到其他节点

1
#?scp?/etc/ganglia/gmond.conf?root@HMaster1:/etc/ganglia/gmond.conf???#分别拷贝HSlave0、1、2

3.3 启动代理程序,并设置开机启动

1
2
#?systemctl?start?gmond
#?systemctl?enable?gmond

4.??添加Hadoop被Ganglia监控,去掉文件中以***释并修改(每台同样配置)

1
2
3
4
5
6
7
8
9
10
#?vi?/opt/hadoop-2.6.0/etc/hadoop/hadoop-metrics2.properties
*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
*.sink.ganglia.period=10
*.sink.ganglia.supportsparse=true
*.sink.ganglia.slope=jvm.metrics.gcCount=zero,jvm.metrics.memHeapUsedM=both
*.sink.ganglia.dmax=jvm.metrics.threadsBlocked=70,jvm.metrics.memHeapUsedM=40
namenode.sink.ganglia.servers=192.168.18.215:8649????#当有多个ganglia监控系统时,以逗号分隔
datanode.sink.ganglia.servers=192.168.18.215:8649?????#都指定ganglia服务器
resourcemanager.sink.ganglia.servers=192.168.18.215:8649
nodemanager.sink.ganglia.servers=192.168.18.215:8649

5.??添加HBase被Ganglia监控,添加如下(每台同样配置)

1
2
3
4
5
#?vi?/opt/hbase-1.0.1.1/conf/hadoop-metrics2-hbase.properties
*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31??
*.sink.ganglia.period=10??
hbase.sink.ganglia.period=10??
hbase.sink.ganglia.servers=192.168.18.215:8649

6.??重启Hadoop和HBase

1
2
3
4
5
6
#?stop-dfs.sh
#?stop-yarn.sh
#?stop-hbase.sh
#?start-dfs.sh
#?start-yarn.sh
#?start-hbase.sh???#HRegionServer节点需要手动启动(hbase-daemon.sh?start?regionserver)

7.??通过WEB查看性能监控数据

访问地址:http://192.168.18.215/ganglia

wKiom1WSBTDC1VBOAAaOmA7E-wk380.jpgwKiom1WSBTvg-RTGAASEQJhXUhs814.jpg

wKioL1WSCozAQB_1AAPqsebXF10742.jpg


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Hadoop原理与技术——Hbase实操
Hadoop原理与技术——Hbase实操
0 0
Hadoop原理与技术——Hbase的基本操作
Hadoop原理与技术——Hbase的基本操作
0 0
SLF4J: Hbase和Flume的slf4j-log4j12-x.x.xx.jar与hadoop的slf4j-log4j12-x.x.xx.jar冲突
SLF4J: Hbase和Flume的slf4j-log4j12-x.x.xx.jar与hadoop的slf4j-log4j12-x.x.xx.jar冲突
0 0
Hadoop安装Hbase启动失败报错解决方法
Hadoop安装Hbase启动失败报错解决方法
0 0
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
0 0
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别(三)
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别(三)
0 0
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别(二)
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别(二)
0 0
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别(一)
Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别(一)
0 0
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
0 0
+关注
李振良
6年互联网运维经验,擅长Linux,Python,Docker,MySQL,运维自动化等技术领域。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
玩转HBase和Lindorm 大数据入门和实战
立即下载
《玩转HBase和Lindorm大数据入门和实战》
立即下载
云数据库HBase企业级安全解析
立即下载


http://www.vxiaotou.com