设为首页 收藏本站
查看: 1105|回复: 0

[经验分享] Ganglia监控Hadoop与HBase集群

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-7-1 09:25:57 | 显示全部楼层 |阅读模式
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.jpg wKiom1WSBTvg-RTGAASEQJhXUhs814.jpg
wKioL1WSCozAQB_1AAPqsebXF10742.jpg


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-82149-1-1.html 上篇帖子: HBase1.0分布式NoSQL数据库部署及使用 下篇帖子: Hadoop集群(第2期)_机器信息分布表 监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表