使用ganglia 实现监控 hadoop 和 hbase(详细过程总结)
2017-12-27 15:54
357 查看
一,环境准备
hadoop 2.8.2 分布式环境(三个节点 安装请参考
hadoop分布式环境安装)
hbase 1.2.6 分布式环境(三个节点 ,安装参考hbase分布式环境安装 )
主节点采用 ubuntu 16.04 桌面版 ,从节点为服务器版的ubuntu 16.04
主机:
172.16.12.1 zhoujun (主机点)
172.16.12.129 hadoop3
172.16.12.131 hadoop2
二,Ganglia的简介
关于 Ganglia 软件,Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统,如集群和网格。它是基于分层设计,它使用广泛的技术,如XML数据代表,便携数据传输,RRDtool用于数据存储和可视化。它利用精心设计的数据结构和算法实现每节点间并发非常低的。它已移植到广泛的操作系统和处理器架构上,目前在世界各地成千上万的集群正在使用。它已 被用来连结大学校园和世界各地,可以处理2000节点的规模。gmond 带来的系统负载非常少,这使得它成为在集群中各台计算机上运行的一段代码,而不会影响用户性能。
Ganglia 由两个所谓主要守护进程 gmond(Ganglia 监测守护进程)和 gmetad(Ganglia 元守护进程),一个基于 PHP 的 Web 前端和其他一些小的实用程序
三,安装Ganglia
1, 在主节点上安装相关软件
sudo apt-get install ganglia-monitor rrdtool gmetad ganglia-webfrontend在安装过程中,你应该会看到类似下面的安装后与apache2服务器重启选择,直接 Yes,然后按Enter键。
将ganglia的文件链接到apache的默认目录下
sudo ln -s /usr/share/ganglia-webfrontend /var/www/ganglia 2, 在从节点上安装 ganglia-monitor
c799
在其他监视节点上,只需要安装ganglia-monitor即可
3,Ganglia 主节点配置
复制 Ganglia webfrontend Apache 配置,使用下面的命令来正确的位置:
sudo cp /etc/ganglia-webfrontend/apache.conf /etc/apache2/sites-enabled/ganglia.conf #(很关键的一步) 现在,您需要使用以下命令来编辑 Ganglia 元守护程序的配置文件:
sudo vim /etc/ganglia/gmetad.conf 其中修改如下几个属性
sudo vim /etc/ganglia/gmond.conf修改的内容如下:
cluster {
name = "hadoop-hbase" # 和上面的配置文件data_source 一致
owner = "zhoujun" # 这里的用户名和上面的一致
latlong = "unspecified"
url = "unspecified"
}
/* The host 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 {
# mcast_join = 239.2.11.71 # 注释掉
host=172.16.12.1 # 添加 gmetad的节点ip
port = 8649
ttl = 1
}
/* You can specify as many udp_recv_channels as you like as well. */
udp_recv_channel {
#mcast_join = 239.2.11.71 # 注释掉
#host=zhoujun
port = 8649
#bind = zhoujun # 注释掉
} 其他上面没有提到的配置项,不建议修改!
三,配置hadoop, 所有节点都要配置
vim /opt/hadoop/etc/hadoop/hadoop-metrics2.properties 注意:一定先将配置文件中没有是 # 开头的配置文件全部加上 # 将其注释掉,这点很重要!然后再在文件最后添加如下内容
*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
*.sink.ganglia.period=10
*.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=172.16.12.1:8649 # namenode 所在的节点 多个用英文下的逗号隔开
resourcemanager.sink.ganglia.servers=172.16.12.1:8649 # resourcemanager 所在的节点
datanode.sink.ganglia.servers=172.16.12.1:8649,172.16.12.129:8649,172.16.12.131:8649 # datanode 所在的节点 多个用英文下的逗号隔开
nodemanager.sink.ganglia.servers=172.16.12.1:8649,172.16.12.129:8649,172.16.12.131:8649
四,在所有的hbase节点中均配置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=172.16.12.1:8649 # hbase 主节点信息
五, 启动服务
1, 启动hadoop和hbase
start-all.sh # 启动 hadoop
start-hbase.sh # 启动 hbase 2, 启动ganglia和apache 服务
先需要重启hadoop和hbase 。在各个节点上启动gmond服务,主节点还需要启动gmetad服务,同时重启apache2。
使用apt-get方式安装的Ganglia,可以直接用service方式启动。
sudo service ganglia-monitor start #(每台机器都需要启动)
sudo service gmetad start #(在安装了ganglia-webfrontend的机器上启动
sudo /etc/init.d/apache2 restart #(在主机上重启apache2)或者: 建议用下面的方式启动
sudo /etc/init.d/ganglia-monitor start
sudo /etc/init.d/gmetad start
sudo /etc/init.d/apache2 restart启动后相关信息:
访问 http://172.16.12.1/ganglia 查看状态信息:
若安装不成功,有几个很有用的调试命令:
以调试模式启动gmetad:gmetad -d 9
查看gmetad收集到的XML文件:telnet zhoujun 8649
gmetad收集到的信息被放到/var/lib/ganglia/rrds/
可以通过以下命令检查是否有数据在传输 tcpdump port 8649
参考博客: 点击打开链接
hadoop 2.8.2 分布式环境(三个节点 安装请参考
hadoop分布式环境安装)
hbase 1.2.6 分布式环境(三个节点 ,安装参考hbase分布式环境安装 )
主节点采用 ubuntu 16.04 桌面版 ,从节点为服务器版的ubuntu 16.04
主机:
172.16.12.1 zhoujun (主机点)
172.16.12.129 hadoop3
172.16.12.131 hadoop2
二,Ganglia的简介
关于 Ganglia 软件,Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统,如集群和网格。它是基于分层设计,它使用广泛的技术,如XML数据代表,便携数据传输,RRDtool用于数据存储和可视化。它利用精心设计的数据结构和算法实现每节点间并发非常低的。它已移植到广泛的操作系统和处理器架构上,目前在世界各地成千上万的集群正在使用。它已 被用来连结大学校园和世界各地,可以处理2000节点的规模。gmond 带来的系统负载非常少,这使得它成为在集群中各台计算机上运行的一段代码,而不会影响用户性能。
Ganglia 由两个所谓主要守护进程 gmond(Ganglia 监测守护进程)和 gmetad(Ganglia 元守护进程),一个基于 PHP 的 Web 前端和其他一些小的实用程序
三,安装Ganglia
1, 在主节点上安装相关软件
sudo apt-get install ganglia-monitor rrdtool gmetad ganglia-webfrontend在安装过程中,你应该会看到类似下面的安装后与apache2服务器重启选择,直接 Yes,然后按Enter键。
将ganglia的文件链接到apache的默认目录下
sudo ln -s /usr/share/ganglia-webfrontend /var/www/ganglia 2, 在从节点上安装 ganglia-monitor
sudo apt-get install ganglia-monitor在主节点上安装ganglia-webfrontend和ganglia-monitor。
c799
在其他监视节点上,只需要安装ganglia-monitor即可
3,Ganglia 主节点配置
复制 Ganglia webfrontend Apache 配置,使用下面的命令来正确的位置:
sudo cp /etc/ganglia-webfrontend/apache.conf /etc/apache2/sites-enabled/ganglia.conf #(很关键的一步) 现在,您需要使用以下命令来编辑 Ganglia 元守护程序的配置文件:
sudo vim /etc/ganglia/gmetad.conf 其中修改如下几个属性
data_source "hadoop-hbase" 3 172.16.12.1:8649 172.16.12.129:8649 172.16.12.131:8649 # 三个节点信息 setuid_username "zhoujun" # 用户名 gmetad的用户名 rrd_rootdir "/var/lib/ganglia/rrds" # 注意这个文件夹的权限,一定保证其他用能够访问,一面出错 case_sensitive_hostnames 14, 修改 ganglia-monitor 的配置文件,每台机器上都进行如下配置
sudo vim /etc/ganglia/gmond.conf修改的内容如下:
cluster {
name = "hadoop-hbase" # 和上面的配置文件data_source 一致
owner = "zhoujun" # 这里的用户名和上面的一致
latlong = "unspecified"
url = "unspecified"
}
/* The host 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 {
# mcast_join = 239.2.11.71 # 注释掉
host=172.16.12.1 # 添加 gmetad的节点ip
port = 8649
ttl = 1
}
/* You can specify as many udp_recv_channels as you like as well. */
udp_recv_channel {
#mcast_join = 239.2.11.71 # 注释掉
#host=zhoujun
port = 8649
#bind = zhoujun # 注释掉
} 其他上面没有提到的配置项,不建议修改!
三,配置hadoop, 所有节点都要配置
vim /opt/hadoop/etc/hadoop/hadoop-metrics2.properties 注意:一定先将配置文件中没有是 # 开头的配置文件全部加上 # 将其注释掉,这点很重要!然后再在文件最后添加如下内容
*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
*.sink.ganglia.period=10
*.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=172.16.12.1:8649 # namenode 所在的节点 多个用英文下的逗号隔开
resourcemanager.sink.ganglia.servers=172.16.12.1:8649 # resourcemanager 所在的节点
datanode.sink.ganglia.servers=172.16.12.1:8649,172.16.12.129:8649,172.16.12.131:8649 # datanode 所在的节点 多个用英文下的逗号隔开
nodemanager.sink.ganglia.servers=172.16.12.1:8649,172.16.12.129:8649,172.16.12.131:8649
# nodemanager 所在的节点 多个用英文下的逗号隔开maptask.sink.ganglia.servers=172.16.12.1:8649 # map reducetask.sink.ganglia.servers=172.16.12.1:8649 # rdeuce
四,在所有的hbase节点中均配置hadoop-metrics2-hbase.properties
vim /opt/hbase/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=172.16.12.1:8649 # hbase 主节点信息
五, 启动服务
1, 启动hadoop和hbase
start-all.sh # 启动 hadoop
start-hbase.sh # 启动 hbase 2, 启动ganglia和apache 服务
先需要重启hadoop和hbase 。在各个节点上启动gmond服务,主节点还需要启动gmetad服务,同时重启apache2。
使用apt-get方式安装的Ganglia,可以直接用service方式启动。
sudo service ganglia-monitor start #(每台机器都需要启动)
sudo service gmetad start #(在安装了ganglia-webfrontend的机器上启动
sudo /etc/init.d/apache2 restart #(在主机上重启apache2)或者: 建议用下面的方式启动
sudo /etc/init.d/ganglia-monitor start
sudo /etc/init.d/gmetad start
sudo /etc/init.d/apache2 restart启动后相关信息:
访问 http://172.16.12.1/ganglia 查看状态信息:
若安装不成功,有几个很有用的调试命令:
以调试模式启动gmetad:gmetad -d 9
查看gmetad收集到的XML文件:telnet zhoujun 8649
gmetad收集到的信息被放到/var/lib/ganglia/rrds/
可以通过以下命令检查是否有数据在传输 tcpdump port 8649
参考博客: 点击打开链接
相关文章推荐
- 使用Ganglia监控hadoop、hbase
- 使用ganglia监控hadoop及hbase集群 分类: B3_LINUX 2015-03-06 20:53 646人阅读 评论(0) 收藏
- HBase总结(十七)Ganglia监控hadoop、hbase集群
- 使用ganglia监控hadoop及hbase集群
- 使用ganglia监控hadoop及hbase集群
- 使用ganglia监控hadoop,hbase
- zabbix3.0.4使用percona-monitoring-plugins插件来监控mysql5.6的详细实现过程
- zabbix3.0.2 使用percona mysql插件来监控mysql5.7的详细实现过程
- 使用Ganglia监控Hadoop,hbase
- 使用ganglia监控hadoop及hbase集群
- nagios整合ganglia实现hadoop、Hbase监控及手机短信报警
- 使用ganglia监控hadoop及hbase集群
- zabbix3.0.2 使用percona mysql插件来监控mysql5.7的详细实现过程
- 使用ganglia监控hadoop及hbase集群
- zabbix3.0.4使用percona-monitoring-plugins插件来监控mysql5.6的详细实现过程
- 为学习Hadoop使用VMware准备3台一模一样的Linux虚拟机的详细搭建过程
- ganglia和nagios配置实现hadoop集群监控
- CentOS下安装与配置Ganglia监控Hadoop集群及HBase
- Hadoop 调试第一个mapreduce程序过程详细记录总结
- Hbase+Zookeeper+hadoop使用过程遇到的问题