写在前面: 博主是一名大数据的初学者,昵称来源于《爱丽丝梦游仙境》中的Alice和自己的昵称。作为一名互联网小白,
写博客一方面是为了记录自己的学习历程,一方面是希望能够帮助到很多和自己一样处于起步阶段的萌新
。由于水平有限,博客中难免会有一些错误,有纰漏之处恳请各位大佬不吝赐教!个人小站:http://alices.ibilibili.xyz/ , 博客 尽管当前水平可能不及各位大佬,但我还是希望自己能够做得更好,因为一天的生活就是一生的缩影
。我希望在最美的年华,做最好的自己
!
上一篇博客,小菌为大家介绍了在Flume中如何实现过滤器的效果????大数据小白必知必会之Flume实现过滤器效果。相信大家在看后一定还有很多的疑惑,我们该如何监控到Flume在运行过程中的变化呢?不用担心,本篇博客,我们就来学习一下,关于Flume的监控之Ganglia的安装与简单实践。
码字不易,先赞后看!
文章目录
- 1)、修改配置文件/etc/httpd/conf.d/ganglia.conf
- 2)、修改配置文件/etc/ganglia/gmetad.conf
- 3)、修改配置文件/etc/ganglia/gmond.conf
- 4)、修改配置文件/etc/selinux/config
- 小结
Flume 监控之 Ganglia
1、Ganglia的安装与部署
<1> 安装httpd服务与php
sudo yum -y install httpd php
[root@node01 ~]# sudo yum -y install httpd php
已加载插件:fastestmirror, security
设置安装进程
Determining fastest mirrors
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: mirrors.163.com
base | 3.7 kB 00:00
extras | 3.4 kB 00:00
extras/primary_db | 29 kB 00:00
updates | 3.4 kB 00:00
updates/primary_db | 11 MB 00:01
包 httpd-2.2.15-69.el6.centos.x86_64 已安装并且是最新版本
解决依赖关系
--> 执行事务检查
---> Package php.x86_64 0:5.3.3-50.el6_10 will be 安装
--> 处理依赖关系 php-common(x86-64) = 5.3.3-50.el6_10,它被软件包 php-5.3.3-50.e6_10.x86_64 需要
--> 处理依赖关系 php-cli(x86-64) = 5.3.3-50.el6_10,它被软件包 php-5.3.3-50.el6_0.x86_64 需要
--> 执行事务检查
---> Package php-cli.x86_64 0:5.3.3-50.el6_10 will be 安装
---> Package php-common.x86_64 0:5.3.3-50.el6_10 will be 安装
--> 完成依赖关系计算
依赖关系解决
================================================================================
软件包 架构 版本 仓库 大小
================================================================================
正在安装:
php x86_64 5.3.3-50.el6_10 updates 1.1 M
为依赖而安装:
php-cli x86_64 5.3.3-50.el6_10 updates 2.2 M
php-common x86_64 5.3.3-50.el6_10 updates 530 k
事务概要
================================================================================
Install 3 Package(s)
总下载量:3.8 M
Installed size: 13 M
下载软件包:
(1/3): php-5.3.3-50.el6_10.x86_64.rpm | 1.1 MB 00:00
(2/3): php-cli-5.3.3-50.el6_10.x86_64.rpm | 2.2 MB 00:00
(3/3): php-common-5.3.3-50.el6_10.x86_64.rpm | 530 kB 00:00
--------------------------------------------------------------------------------
总计 4.7 MB/s | 3.8 MB 00:00
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
正在安装 : php-common-5.3.3-50.el6_10.x86_64 1/3
正在安装 : php-cli-5.3.3-50.el6_10.x86_64 2/3
正在安装 : php-5.3.3-50.el6_10.x86_64 3/3
Verifying : php-5.3.3-50.el6_10.x86_64 1/3
Verifying : php-cli-5.3.3-50.el6_10.x86_64 2/3
Verifying : php-common-5.3.3-50.el6_10.x86_64 3/3
已安装:
php.x86_64 0:5.3.3-50.el6_10
作为依赖被安装:
php-cli.x86_64 0:5.3.3-50.el6_10 php-common.x86_64 0:5.3.3-50.el6_10
完毕!
<2> 安装其他依赖
sudo yum -y install rrdtool perl-rrdtool rrdtool-devel
[root@node01 ~]# sudo yum -y install rrdtool
已加载插件:fastestmirror, security
设置安装进程
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: mirrors.163.com
解决依赖关系
--> 执行事务检查
---> Package rrdtool.x86_64 0:1.3.8-10.el6 will be 安装
--> 处理依赖关系 dejavu-sans-mono-fonts,它被软件包 rrdtool-1.3.8-10.el6.x86_64
--> 处理依赖关系 dejavu-lgc-sans-mono-fonts,它被软件包 rrdtool-1.3.8-10.el6.x86
--> 执行事务检查
---> Package dejavu-lgc-sans-mono-fonts.noarch 0:2.33-1.el6 will be 安装
---> Package dejavu-sans-mono-fonts.noarch 0:2.33-1.el6 will be 安装
--> 完成依赖关系计算
依赖关系解决
================================================================================
软件包 架构 版本 仓
================================================================================
正在安装:
rrdtool x86_64 1.3.8-10.el6 b
为依赖而安装:
dejavu-lgc-sans-mono-fonts noarch 2.33-1.el6 b
dejavu-sans-mono-fonts noarch 2.33-1.el6 b
事务概要
================================================================================
Install 3 Package(s)
总下载量:1.1 M
Installed size: 2.7 M
下载软件包:
(1/3): dejavu-lgc-sans-mono-fonts-2.33-1.el6.noarch.rpm | 3
(2/3): dejavu-sans-mono-fonts-2.33-1.el6.noarch.rpm | 4
(3/3): rrdtool-1.3.8-10.el6.x86_64.rpm | 2
--------------------------------------------------------------------------------
总计 1.6 MB/s | 1
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
正在安装 : dejavu-lgc-sans-mono-fonts-2.33-1.el6.noarch
正在安装 : dejavu-sans-mono-fonts-2.33-1.el6.noarch
正在安装 : rrdtool-1.3.8-10.el6.x86_64
Verifying : dejavu-sans-mono-fonts-2.33-1.el6.noarch
Verifying : rrdtool-1.3.8-10.el6.x86_64
Verifying : dejavu-lgc-sans-mono-fonts-2.33-1.el6.noarch
已安装:
rrdtool.x86_64 0:1.3.8-10.el6
作为依赖被安装:
dejavu-lgc-sans-mono-fonts.noarch 0:2.33-1.el6 dejavu-sans-mono-fonts.noar
完毕!
sudo yum -y install apr-devel
[root@node01 ~]# sudo yum -y install apr-devel
已加载插件:fastestmirror, security
设置安装进程
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: mirrors.163.com
解决依赖关系
--> 执行事务检查
---> Package apr-devel.x86_64 0:1.3.9-5.el6_9.1 will be 安装
--> 完成依赖关系计算
依赖关系解决
================================================================================
软件包 架构 版本 仓库
================================================================================
正在安装:
apr-devel x86_64 1.3.9-5.el6_9.1 base
事务概要
================================================================================
Install 1 Package(s)
总下载量:176 k
Installed size: 717 k
下载软件包:
apr-devel-1.3.9-5.el6_9.1.x86_64.rpm | 1
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
正在安装 : apr-devel-1.3.9-5.el6_9.1.x86_64
Verifying : apr-devel-1.3.9-5.el6_9.1.x86_64
已安装:
apr-devel.x86_64 0:1.3.9-5.el6_9.1
完毕!
<3> 安装ganglia
sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[root@node01 ~]# sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epe.rpm
Retrieving http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch
warning: /var/tmp/rpm-tmp.jfeJoR: Header V3 RSA/SHA256 Signature, key ID 0608b89
Preparing... ########################################### [100%]
1:epel-release ########################################### [100%]
sudo yum -y install ganglia-gmetad
[root@node01 ~]# sudo yum -y install ganglia-gmetad
已加载插件:fastestmirror, security
设置安装进程
Loading mirror speeds from cached hostfile
epel/metalink | 7.9 kB 00:00
* base: mirrors.163.com
* epel: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.163.com
* updates: mirrors.163.com
epel | 4.7 kB 00:00
epel/primary_db | 6.1 MB 00:04
解决依赖关系
--> 执行事务检查
---> Package ganglia-gmetad.x86_64 0:3.7.2-2.el6 will be 安装
--> 处理依赖关系 ganglia = 3.7.2-2.el6,它被软件包 ganglia-gmetad-3.7.2-2.el6.x864 需要
--> 处理依赖关系 libconfuse.so.0()(64bit),它被软件包 ganglia-gmetad-3.7.2-2.el686_64 需要
--> 处理依赖关系 libganglia.so.0()(64bit),它被软件包 ganglia-gmetad-3.7.2-2.el686_64 需要
--> 执行事务检查
---> Package ganglia.x86_64 0:3.7.2-2.el6 will be 安装
---> Package libconfuse.x86_64 0:2.7-4.el6 will be 安装
--> 完成依赖关系计算
依赖关系解决
================================================================================
软件包 架构 版本 仓库 大小
================================================================================
正在安装:
ganglia-gmetad x86_64 3.7.2-2.el6 epel 52
为依赖而安装:
ganglia x86_64 3.7.2-2.el6 epel 88
libconfuse x86_64 2.7-4.el6 epel 79
事务概要
================================================================================
Install 3 Package(s)
总下载量:220 k
Installed size: 926 k
下载软件包:
(1/3): ganglia-3.7.2-2.el6.x86_64.rpm | 88 kB 00:00
(2/3): ganglia-gmetad-3.7.2-2.el6.x86_64.rpm | 52 kB 00:00
(3/3): libconfuse-2.7-4.el6.x86_64.rpm | 79 kB 00:00
--------------------------------------------------------------------------------
总计 905 kB/s | 220 kB 00:00
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOK
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
Importing GPG key 0x0608B895:
Userid : EPEL (6) <epel@fedoraproject.org>
Package: epel-release-6-8.noarch (installed)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
Warning: RPMDB altered outside of yum.
正在安装 : libconfuse-2.7-4.el6.x86_64 1/
正在安装 : ganglia-3.7.2-2.el6.x86_64 2/
正在安装 : ganglia-gmetad-3.7.2-2.el6.x86_64 3/
Verifying : ganglia-gmetad-3.7.2-2.el6.x86_64 1/
Verifying : ganglia-3.7.2-2.el6.x86_64 2/
Verifying : libconfuse-2.7-4.el6.x86_64 3/
已安装:
ganglia-gmetad.x86_64 0:3.7.2-2.el6
作为依赖被安装:
ganglia.x86_64 0:3.7.2-2.el6 libconfuse.x86_64 0:2.7-4.el6
完毕!
sudo yum -y install ganglia-web
[root@node01 ~]# sudo yum -y install ganglia-web
已加载插件:fastestmirror, security
设置安装进程
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* epel: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.163.com
* updates: mirrors.163.com
解决依赖关系
--> 执行事务检查
---> Package ganglia-web.x86_64 0:3.7.1-2.el6 will be 安装
--> 处理依赖关系 php-ZendFramework,它被软件包 ganglia-web-3.7.1-2.el6.x86_64 需
--> 处理依赖关系 php-gd,它被软件包 ganglia-web-3.7.1-2.el6.x86_64 需要
--> 执行事务检查
---> Package php-ZendFramework.noarch 0:1.12.20-1.el6 will be 安装
--> 处理依赖关系 php-bcmath,它被软件包 php-ZendFramework-1.12.20-1.el6.noarch 要
--> 处理依赖关系 php-process,它被软件包 php-ZendFramework-1.12.20-1.el6.noarch 要
--> 处理依赖关系 php-xml,它被软件包 php-ZendFramework-1.12.20-1.el6.noarch 需要
---> Package php-gd.x86_64 0:5.3.3-50.el6_10 will be 安装
--> 处理依赖关系 libXpm.so.4()(64bit),它被软件包 php-gd-5.3.3-50.el6_10.x86_64 要
--> 执行事务检查
---> Package libXpm.x86_64 0:3.5.10-2.el6 will be 安装
---> Package php-bcmath.x86_64 0:5.3.3-50.el6_10 will be 安装
---> Package php-process.x86_64 0:5.3.3-50.el6_10 will be 安装
---> Package php-xml.x86_64 0:5.3.3-50.el6_10 will be 安装
--> 完成依赖关系计算
依赖关系解决
================================================================================
软件包 架构 版本 仓库 大小
================================================================================
正在安装:
ganglia-web x86_64 3.7.1-2.el6 epel 782
为依赖而安装:
libXpm x86_64 3.5.10-2.el6 base 51
php-ZendFramework noarch 1.12.20-1.el6 epel 4.1
php-bcmath x86_64 5.3.3-50.el6_10 updates 40
php-gd x86_64 5.3.3-50.el6_10 updates 112
php-process x86_64 5.3.3-50.el6_10 updates 44
php-xml x86_64 5.3.3-50.el6_10 updates 108
事务概要
================================================================================
Install 7 Package(s)
总下载量:5.2 M
Installed size: 38 M
下载软件包:
(1/7): ganglia-web-3.7.1-2.el6.x86_64.rpm | 782 kB 00:00
(2/7): libXpm-3.5.10-2.el6.x86_64.rpm | 51 kB 00:00
(3/7): php-ZendFramework-1.12.20-1.el6.noarch.rpm | 4.1 MB 00:00
(4/7): php-bcmath-5.3.3-50.el6_10.x86_64.rpm | 40 kB 00:00
(5/7): php-gd-5.3.3-50.el6_10.x86_64.rpm | 112 kB 00:00
(6/7): php-process-5.3.3-50.el6_10.x86_64.rpm | 44 kB 00:00
(7/7): php-xml-5.3.3-50.el6_10.x86_64.rpm | 108 kB 00:00
--------------------------------------------------------------------------------
总计 2.6 MB/s | 5.2 MB 00:01
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
正在安装 : php-process-5.3.3-50.el6_10.x86_64 1/
正在安装 : libXpm-3.5.10-2.el6.x86_64 2/
正在安装 : php-gd-5.3.3-50.el6_10.x86_64 3/
正在安装 : php-bcmath-5.3.3-50.el6_10.x86_64 4/
正在安装 : php-xml-5.3.3-50.el6_10.x86_64 5/
正在安装 : php-ZendFramework-1.12.20-1.el6.noarch 6/
正在安装 : ganglia-web-3.7.1-2.el6.x86_64 7/
Verifying : php-xml-5.3.3-50.el6_10.x86_64 1/
Verifying : ganglia-web-3.7.1-2.el6.x86_64 2/
Verifying : php-bcmath-5.3.3-50.el6_10.x86_64 3/
Verifying : libXpm-3.5.10-2.el6.x86_64 4/
Verifying : php-process-5.3.3-50.el6_10.x86_64 5/
Verifying : php-gd-5.3.3-50.el6_10.x86_64 6/
Verifying : php-ZendFramework-1.12.20-1.el6.noarch 7/
已安装:
ganglia-web.x86_64 0:3.7.1-2.el6
作为依赖被安装:
libXpm.x86_64 0:3.5.10-2.el6 php-ZendFramework.noarch 0:1.12.20-1.el6
php-bcmath.x86_64 0:5.3.3-50.el6_10 php-gd.x86_64 0:5.3.3-50.el6_10
php-process.x86_64 0:5.3.3-50.el6_10 php-xml.x86_64 0:5.3.3-50.el6_10
完毕!
sudo yum install -y ganglia-gmond
[root@node01 ~]# sudo yum install -y ganglia-gmond
已加载插件:fastestmirror, security
设置安装进程
Loading mirror speeds from cached hostfile
* base: mirrors.163.com
* epel: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.163.com
* updates: mirrors.163.com
解决依赖关系
--> 执行事务检查
---> Package ganglia-gmond.x86_64 0:3.7.2-2.el6 will be 安装
--> 完成依赖关系计算
依赖关系解决
================================================================================
软件包 架构 版本 仓库 大小
================================================================================
正在安装:
ganglia-gmond x86_64 3.7.2-2.el6 epel 78
事务概要
================================================================================
Install 1 Package(s)
总下载量:78 k
Installed size: 178 k
下载软件包:
ganglia-gmond-3.7.2-2.el6.x86_64.rpm | 78 kB 00:00
运行 rpm_check_debug
执行事务测试
事务测试成功
执行事务
正在安装 : ganglia-gmond-3.7.2-2.el6.x86_64 1/
Verifying : ganglia-gmond-3.7.2-2.el6.x86_64 1/
已安装:
ganglia-gmond.x86_64 0:3.7.2-2.el6
完毕!
其中,Ganglia由gmond、gmetad 和 gweb三部分组成。
gmond(Ganglia Monitoring Daemon)是一种轻量级服务,安装在每台需要收集指标数据的节点主机上。使用gmond,你可以很容易收集很多系统指标数据,如CPU、内存、磁盘、网络和活跃进程的数据等。
gmetad(Ganglia Meta Daemon)整合所有信息,并将其以RRD格式存储至磁盘的服务。
gweb(Ganglia Web)Ganglia可视化工具,gweb是一种利用浏览器显示gmetad所存储数据的PHP前端。在Web界面中以图表方式展现集群的运行状态下收集的多种不同指标数据。
<4>修改配置文件
1)、修改配置文件/etc/httpd/conf.d/ganglia.conf
sudo vim /etc/httpd/conf.d/ganglia.conf
修改为红颜色的配置:
# Ganglia monitoring system php web frontend
Alias /ganglia /usr/share/ganglia
<Location /ganglia>
Order deny,allow
#Deny from all
Allow from all
#Allow from 127.0.0.1
#Allow from ::1
#Allow from .example.com
2)、修改配置文件/etc/ganglia/gmetad.conf
sudo vim /etc/ganglia/gmetad.conf
修改为:
data_source “node01” 192.168.100.100
3)、修改配置文件/etc/ganglia/gmond.conf
sudo vim /etc/ganglia/gmond.conf
修改为:
cluster {
name = “hadoop102”
owner = “unspecified”
latlong = “unspecified”
url = “unspecified”
}
udp_send_channel {
#bind_hostname = yes # Highly recommended, soon to be default.
# This option tells gmond to use a source address
# that resolves to the machine’s hostname. Without
# this, the metrics may appear to come from any
# interface and the DNS names associated with
# those IPs will be used to create the RRDs.
#mcast_join = 239.2.11.71
host = 192.168.100.100
port = 8649
ttl = 1
}
udp_recv_channel {
# mcast_join = 239.2.11.71
port = 8649
bind = 192.168.100.100
retry_bind = true
#Size of the UDP buffer. If you are handling lots of metrics you really
#should bump it up to e.g. 10MB or even higher.
#buffer = 10485760
}
4)、修改配置文件/etc/selinux/config
sudo vim /etc/selinux/config
修改为:
# This file controls the state of SELinux on the system.
#SELINUX= can take one of these three values:
#enforcing - SELinux security policy is enforced.
#permissive - SELinux prints warnings instead of enforcing.
#disabled - No SELinux policy is loaded.
SELINUX=disabled
#SELINUXTYPE= can take one of these two values:
#targeted - Targeted processes are protected,
#mls - Multi Level Security protection.
SELINUXTYPE=targeted
提示:
selinux本次生效关闭必须重启,如果此时不想重启,可以临时生效之:
sudo setenforce 0
<5>启动ganglia
sudo service httpd start
sudo service gmetad start
sudo service gmond start
<6>打开网页浏览ganglia页面
http://192.168.100.100/ganglia
一切都正常的情况下,可以看到类似的页面。
提示:如果完成以上操作依然出现权限不足错误,请修改/var/lib/ganglia目录的权限:
sudo chmod -R 777 /var/lib/ganglia
2、操作Flume测试监控
<1> 修改conf目录下的flume-env.sh配置:
JAVA_OPTS="-Dflume.monitoring.type=ganglia
-Dflume.monitoring.hosts=192.168.1.102:8649
-Xms100m
-Xmx200m"
<2>启动Flume任务
[root@node01 conf]# bin/flume-ng agent --conf conf/ --name a1 --conf-file conf/netcat-logger.conf -Dflume.root.logger==INFO,console -Dflume.monitoring.type=ganglia -Dflume.monitoring.hosts=192.168.100.100:8649
<3>发送数据观察ganglia监测图
[root@node01 ~]# nc node01 44444
在Web页面,我们选择监控的节点
往下翻,我们可以看见这样的一个监控画面
图例说明:
字段(图表名称) | 字段含义 |
EventPutAttemptCount | source尝试写入channel的事件总数量 |
EventPutSuccessCount | 成功写入channel且提交的事件总数量 |
EventTakeAttemptCount | sink尝试从channel拉取事件的总数量。这不意味着每次事件都被返回,因为sink拉取的时候channel可能没有任何数据 |
EventTakeSuccessCount | sink成功读取的事件的总数量 |
StartTime | channel启动的时间(毫秒) |
StopTime | channel停止的时间(毫秒) |
ChannelSize | 目前channel中事件的总数量 |
ChannelFillPercentage | channel占用百分比 |
ChannelCapacity | channel的容量 |
小结
关于Ganglia更多的演示说明就不过多叙述了,感兴趣的朋友们可以去http://ganglia.info/了解更多~
受益的朋友或对大数据技术感兴趣的伙伴记得点赞关注支持一波????
希望我们都能在学习的道路上越走越远????