使用Ganglia监控hadoop、hbase
2016-07-14 17:48
423 查看
Ganglia是一个监控服务器,集群的开源软件,能够用曲线图表现最近一个小时,最近一天,最近一周,最近一月,最近一年的服务器或者集群的cpu负载,内存,网络,硬盘等指标。
Ganglia的强大在于:ganglia服务端能够通过一台客户端收集到同一个网段的所有客户端的数据,ganglia集群服务端能够通过一台服务端收集到它下属的所有客户端数据。这个体系设计表示一台服务器能够通过不同的分层能够管理上万台机器。这个功能是其他mrtg,nagios,cacti所不能比拟的。
Ganglia是UC Berkeley发起的一个开源实时监视项目,用于测量数以千计的节点,为云计算系统提供系统静态数据以及重要的性能度量数据。
Ganglia系统基本包含以下三大部分。
Gmond:Gmond运行在每台计算机上,它主要监控每台机器上收集和发送度量数据(如处理器速度、内存使用量等)。
Gmetad:Gmetad运行在Cluster的一台主机上,作为Web Server,或者用于与Web Server进行沟通。
Ganglia Web前端:Web前端用于显示Ganglia的Metrics图表。
Hadoop和HBase本身对于Ganglia的支持非常好。通过简单的配置,我们可以将Hadoop和HBase的一些关键参数以图表的形式展现在Ganglia的Web Console上。这些对于我们
洞悉Hadoop和HBase的内部系统状态有很大的帮助。
Ganglia工作原理和结构:
View Code
2、重启hadoop,在主NameNode节点上执行:
# /usr/local/hadoop/sbin/stop-all.sh
# /usr/local/hadoop/sbin/start-all.sh
3、重启所有Gmod端:
# service gmond restart
详细gmond.conf各参数参考资料:http://book.2cto.com/201309/32329.html
四、监控spark
支持Ganglia的Sink类别: GangliaSink
由于Licene的限制,默认没有放到默认的build里面,如果需要使用,需要自己编译
参考资料:http://huaxin.blog.51cto.com/903026/1841208
Ganglia的强大在于:ganglia服务端能够通过一台客户端收集到同一个网段的所有客户端的数据,ganglia集群服务端能够通过一台服务端收集到它下属的所有客户端数据。这个体系设计表示一台服务器能够通过不同的分层能够管理上万台机器。这个功能是其他mrtg,nagios,cacti所不能比拟的。
Ganglia是UC Berkeley发起的一个开源实时监视项目,用于测量数以千计的节点,为云计算系统提供系统静态数据以及重要的性能度量数据。
Ganglia系统基本包含以下三大部分。
Gmond:Gmond运行在每台计算机上,它主要监控每台机器上收集和发送度量数据(如处理器速度、内存使用量等)。
Gmetad:Gmetad运行在Cluster的一台主机上,作为Web Server,或者用于与Web Server进行沟通。
Ganglia Web前端:Web前端用于显示Ganglia的Metrics图表。
Hadoop和HBase本身对于Ganglia的支持非常好。通过简单的配置,我们可以将Hadoop和HBase的一些关键参数以图表的形式展现在Ganglia的Web Console上。这些对于我们
洞悉Hadoop和HBase的内部系统状态有很大的帮助。
Ganglia工作原理和结构:
# syntax: [prefix].[source|sink].[instance].[options] # See javadoc of package-info.java for org.apache.hadoop.metrics2 for details *.sink.file.class=org.apache.hadoop.metrics2.sink.FileSink # default sampling period, in seconds *.period=10 # The namenode-metrics.out will contain metrics from all context #namenode.sink.file.filename=namenode-metrics.out # Specifying a special sampling period for namenode: #namenode.sink.*.period=8 #datanode.sink.file.filename=datanode-metrics.out #resourcemanager.sink.file.filename=resourcemanager-metrics.out #nodemanager.sink.file.filename=nodemanager-metrics.out #mrappmaster.sink.file.filename=mrappmaster-metrics.out #jobhistoryserver.sink.file.filename=jobhistoryserver-metrics.out # the following example split metrics of different # context to different sinks (in this case files) #nodemanager.sink.file_jvm.class=org.apache.hadoop.metrics2.sink.FileSink #nodemanager.sink.file_jvm.context=jvm #nodemanager.sink.file_jvm.filename=nodemanager-jvm-metrics.out #nodemanager.sink.file_mapred.class=org.apache.hadoop.metrics2.sink.FileSink #nodemanager.sink.file_mapred.context=mapred #nodemanager.sink.file_mapred.filename=nodemanager-mapred-metrics.out # # Below are for sending metrics to Ganglia # # for Ganglia 3.0 support # *.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink30 # # for Ganglia 3.1 support *.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31 *.sink.ganglia.period=10 # default for supportsparse is false # *.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 # Tag values to use for the ganglia prefix. If not defined no tags are used. # If '*' all tags are used. If specifiying multiple tags separate them with # commas. Note that the last segment of the property name is the context name. # #*.sink.ganglia.tagsForPrefix.jvm=ProcesName #*.sink.ganglia.tagsForPrefix.dfs= #*.sink.ganglia.tagsForPrefix.rpc= #*.sink.ganglia.tagsForPrefix.mapred= namenode.sink.ganglia.servers=master60:8649 datanode.sink.ganglia.servers=slave1:8649,slave62:8649 #resourcemanager.sink.ganglia.servers=yourgangliahost_1:8649,yourgangliahost_2:8649 #nodemanager.sink.ganglia.servers=yourgangliahost_1:8649,yourgangliahost_2:8649 #mrappmaster.sink.ganglia.servers=yourgangliahost_1:8649,yourgangliahost_2:8649 #jobhistoryserver.sink.ganglia.servers=yourgangliahost_1:8649,yourgangliahost_2:8649
View Code
2、重启hadoop,在主NameNode节点上执行:
# /usr/local/hadoop/sbin/stop-all.sh
# /usr/local/hadoop/sbin/start-all.sh
3、重启所有Gmod端:
# service gmond restart
详细gmond.conf各参数参考资料:http://book.2cto.com/201309/32329.html
四、监控spark
支持Ganglia的Sink类别: GangliaSink
由于Licene的限制,默认没有放到默认的build里面,如果需要使用,需要自己编译
名称 | 默认值 | 描述 |
---|---|---|
class | org.apache.spark.metrics.sink.GangliaSink | Sink类 |
host | NONE | Ganglia 服务器的主机名或multicast group |
port | NONE | Ganglia服务器的端口 |
period | 10 | 轮询间隔 |
unit | seconds | 轮询间隔的单位 |
ttl | 1 | TTL of messages sent by Ganglia |
mode | multicast | Ganglia网络模式('unicast' or 'multicast') |
相关文章推荐
- Tomcat 7.0 安装 虚拟目录 虚拟主机讲解
- gazebo环境变量问题设置问题
- reversi-cli - 跟风做的一个黑白棋小游戏
- linux的early printk的探讨
- 服务器运维与网站架构|Linux运维|X研究 |ajax 跨域 4种方法
- ssh访问本机报错
- 删除apache
- 《Hadoop权威指南》读书笔记1
- 从mms源码看IM应用的架构<二>
- Linux kernel Low Level debug (DEBUG_LL)
- linux的<pthread.h>
- zabbix客户端安装及基本监控
- Linux Shell脚本编程之if用法示例
- 分布式项目架构DEMO图
- shell 中变量的截取
- [从头读历史] 第303节 星球战争 起始:冷兵器战争的宏观架构
- 几个简单的shell脚本
- property详解(二)
- OpenCV训练自己的人脸检测级连分类器并测试
- linux中fork()函数详解