ganglia监控部署
1.ganglia组件
ganglia 相比于falcon和zabbix主要在于集群的状态集中显示,可以很便捷的对比各主机的性能状态。
- gmond:相当于是agent端,主要用于收集各node的性能状态
- gmetad:相当于是server端,从gmond以poll的方式收集和存储原数据
- ganglia-web:相当于一个web页面,读取
gmetad存储于rrd中的数据进行web展示
2.ganglia工作模式
- 多播模式:适用于同一网段,各
gmond节点相互发送数据,然后gmetad从自身配置文件中的data_source设置值中依次读取,如果第一个数据源读取失败,则会读取下一处数据源数据。 - 单播模式:能跨网段工作,各
gmond节点将数据统一发送于同一节点,然后gmetad再从中读取数据。
多播模式配置比较简单,gmond节点无需配置直接启动即可运行。
本文采用单播模式安装

3.ganglia部署
[root@jump-halo hosts]# ansible kylin --list-host
hosts (32):
10.239.1.35
10.239.1.36
10.110.80.21
10.110.80.23
10.110.80.36
以下略
| 进程 | ip |
|---|---|
| gmetad | 10.239.1.35 |
| ganglia-web | 10.239.1.35 |
| gmond | 以上所有主机 |
3.1 gmetad端安装
epel源中均存在rpm包,可以直接yum安装
[root@10-239-1-35 ganglia]# yum install -y ganglia-web.x86_64
[root@10-239-1-35 ganglia]# yum install -y ganglia-gmetad.x86_64
[root@10-239-1-35 ganglia]# yum install -y nginx php-fpm
[root@10-239-1-35 ganglia]# pwd
/etc/ganglia
[root@10-239-1-35 ganglia]# vim gmetad.conf
[root@10-239-1-35 nginx]# vim nginx.conf
[root@10-239-1-35 nginx]# vim conf.d/default.conf
[root@10-239-1-35 nginx]# service php-fpm start
Starting php-fpm: [ OK ]
[root@10-239-1-35 nginx]# service nginx start
Starting nginx: [ OK ]
[root@10-239-1-35 nginx]# service gmetad start
Starting GANGLIA gmetad: [ OK ]
[root@10-239-1-35 nginx]# service gmond start
Starting GANGLIA gmond: [ OK ]
[root@10-239-1-35 nginx]# chkconfig --add nginx
[root@10-239-1-35 nginx]# chkconfig --add php-fpm
[root@10-239-1-35 nginx]# chkconfig nginx on
[root@10-239-1-35 nginx]# chkconfig php-fpm on
[root@10-239-1-35 nginx]# chkconfig --add gmetad
[root@10-239-1-35 nginx]# chkconfig --add gmond
[root@10-239-1-35 nginx]# chkconfig gmetad on
[root@10-239-1-35 nginx]# chkconfig gmond on
[root@10-239-1-35 nginx]# chkconfig --list | egrep "nginx|php-fpm|gmond|gmetad"
gmetad 0:off 1:off 2:on 3:on 4:on 5:on 6:off
gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
nginx 0:off 1:off 2:on 3:on 4:on 5:on 6:off
php-fpm 0:off 1:off 2:on 3:on 4:on 5:on 6:off
3.2 gmetad的配置文件更改
[root@10-239-1-35 ganglia]# grep ^[^#] /etc/ganglia/gmetad.conf
data_source "bigdata-kylin" localhost
gridname "kylin"
setuid_username ganglia
case_sensitive_hostnames 0
data_source "bigdata-kylin" localhost此处设置cluster名称,gmond端务必一致,特别是在多播模式中,依此进行识别,最后的localhost是gmond传输的节点,因为设置gmond端将所有数据传输于gmetad处的的gmond节点,所以可以设置为localhostgridname "kylin"此处为web端cluster处显示名称,无太多作用,就是为了去掉web中最上端显示的unspecial
3.3 gmetad端web配置文件设置
ganglia-web并不需要设置,此处主要为nginx与php-fpm的配置文件更改,php-fpm配置无需更改
[root@10-239-1-35 ganglia]# cat /etc/nginx/conf.d/default.conf
server {
listen 80 default_server;
server_name _;
root /usr/share/ganglia;
index index.php;
include /etc/nginx/default.d/*.conf;
location / {
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
3.4 gmond端安装
[root@jump-halo hosts]# ansible kylin -f 10 -m shell -a "yum install ganglia-gmond.x86_64 -y"
[root@jump-halo hosts]# ansible kylin -f 10 -m copy -a "dest=/etc/ganglia src=/tmp/gmond.conf"
[root@jump-halo hosts]# ansible kylin -f 10 -m shell -a "service gmond start"
需要注意的是,gmetad端的gmond需要优先于其它节点的gmond启动
3.5 gmond配置文件
主要更改之处
[root@10-239-1-35 ganglia]# grep ^[^#] /etc/ganglia/gmond.conf
以上略
cluster {
name = "bigdata-kylin" ##需要与gmetad中定义的datasource名称一致
owner = "unspecified"
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.27.1.1 ## 此处为多播设置,单播模式要去掉
host = 10.239.1.35 ##向gmond传送数据的ip,设置
port = 8649 ## 接收gmond节点的端口
ttl = 1
}
/* You can specify as many udp_recv_channels as you like as well. */
udp_recv_channel {
port = 8649 ##gmond自身节点的端口
bind = 0.0.0.0 ##gmond监听地址,去掉也可以
retry_bind = true
}
以下略
4.ganglia web页面显示


可以看出,所有节点的状态图均在同一web页面进行展示,在Metric 处可以进行监控项的选择对比
5.ganglia节点删除
[root@10-239-1-35 bigdata-kylin]# ll
total 224
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:25 10-110-101-105
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:25 10-110-101-106
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-168
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-169
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-170
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-171
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-172
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-173
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-174
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-144-175
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:25 10-110-150-199
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:25 10-110-150-234
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:31 10-110-152-21
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:25 10-110-152-25
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-156-191
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-80-21
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-80-23
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-80-36
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-110-80-56
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:49 10-239-1-104
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:37 10-239-1-105
drwxr-xr-x 2 ganglia ganglia 20480 Aug 8 16:24 10-239-1-35
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:23 10-239-1-50
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:23 10-239-1-51
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:22 10-239-1-64
drwxr-xr-x 2 ganglia ganglia 4096 Aug 8 16:25 10-239-1-75
drwxr-xr-x 2 ganglia ganglia 12288 Aug 8 16:25 10-239-1-76
drwxr-xr-x 2 ganglia ganglia 20480 Aug 8 16:23 __SummaryInfo__
[root@10-239-1-35 bigdata-kylin]# pwd
/var/lib/ganglia/rrds/bigdata-kylin
down掉对应节点的gmond服务,同时需要删除gmetad节点中/var/lib/ganglia/rrds/bigdata-kylin中对应主机的数据目录即可
6.其它
在ganglia-web中的grid之后,有source的选择,即可以选择分组,此处的分组,可以在gmetad中进行设置
在/etc/ganglia/gmetad.conf中,可以进行如下设置
data_source "bigdata-kylin" localhost
data_souce "hadoop-kylin" 10.239.1.76
data_souce "letv-kylin" localhost:7387
gridname "kylin"
相关说明如下:
data_source "bigdata-kylin" localhost可看gmeta配置说明,此处不再作说明data_souce "hadoop-kylin" 10.239.1.76此处gmetad不再在本机的gmond中取得数据,会从10.239.1.76主机中取数据,如果有host仅需要加入到hadoop-kylin组,则需要将该hosts中的cluster和host指向10.239.1.76data_souce "letv-kylin" localhost:7387与第一项不同的就是端口号,同理第二项,需要更改gmond中指定的udp_send_channel端口号
ganglia监控部署的更多相关文章
- CentOS下ganglia监控部署
第一步:CentOS环境准备 1.yum -y install apr-devel apr-util check-devel cairo-devel pango-devel libxml2-devel ...
- Ganglia监控Hadoop集群的安装部署[转]
Ganglia监控Hadoop集群的安装部署 一. 安装环境 Ubuntu server 12.04 安装gmetad的机器:192.168.52.105 安装gmond的机 器:192.168.52 ...
- Ganglia监控Hadoop集群的安装部署
一. 安装环境 Ubuntu server 12.04 安装gmetad的机器:192.168.52.105 安装gmond的机器:192.168.52.31,192.168.52.32,192.16 ...
- Ganglia 监控Hadoop
Ganglia监控Hadoop集群的安装部署 一. 安装环境 Ubuntu server 12.04 安装gmetad的机器:192.168.52.105 安装gmond的机 器:192.168.52 ...
- 高可用Hadoop平台-Ganglia安装部署
1.概述 最近,有朋友私密我,Hadoop有什么好的监控工具,其实,Hadoop的监控工具还是蛮多的.今天给大家分享一个老牌监控工具Ganglia,这个在企业用的也算是比较多的,Hadoop对它的兼容 ...
- Hadoop生态圈-使用Ganglia监控flume中间件
Hadoop生态圈-使用Ganglia监控flume中间件 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Ganglia监控简介 加州伯克利大学千禧计划的其中一个开源项目.是一 ...
- 第十二章 Ganglia监控Hadoop及Hbase集群性能(安装配置)
1 Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点.每台计算机都运行一个收集和发送度量数据(如处理器速度.内存使用量等)的名为 gm ...
- ganglia监控自己定义metric实践
Ganglia监控系统是UC Berkeley开源的一个项目,设计初衷就是要做好分布式集群的监控.监控层面包含资源层面和业务层面,资源层面包含cpu.memory.disk.IO.网络负载等,至于业务 ...
- ganglia 一站式部署
1 ganglia集群监测系统简介 1.1 ganglia简介 ganglia是一款为HPC(高性能计算) 集群设计的可扩展性 的分布式监控系统,它可以监视和显示集群中节点的各种状 ...
随机推荐
- webRTC脱坑笔记(一)— 初识webRTC
webRTC概述 WebRTC--- `Web browsers with Real-Time Communications (RTC)` WebRTC是一个开源项目,可以在`Web`和本机应用程序中 ...
- python 文件单行循环读取的坑(一个程序中,文件默认只能按行循环读取一次,即使写到另一个循环里,它也只读取一次)
本来写了一个程序,想获取a文件中有,但是b文件中没有的行: 想到的方法是:1.一行一行提取a文件中数据,然后用a文件中的每一行与b文件中的每一行比较, 2.如果找到相同行就继续查找a中的下一行,如果找 ...
- yml文件 参数中的逗号 ','
今天在学习springcloud的geteway的时候,使用yml配置route spring: profiles: betweenroute cloud: gateway: routes: - id ...
- python-字符、字符串、函数处理
1.列表元祖字典集合 列表 list = ["a", "b", "c", "d"] 元祖 tup = (1, 2, 3, ...
- QUartus 使用之001_空格_箭头切换----FPGA--001
Quartus里的Tab键,按下后,显示的为什么是箭头,以前显示的是空白,图片如下: 解决方式如下: 修改后效果图如下:
- url 上回调函数(JSONP原理)
1.JSONP原理:就是跨域的 js程序(get请求对应url,获取到文本数据,在script标签中,就是按照 js 程序执行,)执行时 调用 当前程序中写好的函数,并且把跨域的数据(即参数),传 ...
- Flask学习之旅--分页功能:分别使用 flask--pagination 和分页插件 layPage
一.前言 现在开发一个网站,分页是一个很常见的功能了,尤其是当数据达到一定量的时候,如果都显示在页面上,会造成页面过长而影响用户体验,除此之外,还可能出现加载过慢等问题.因此,分页就很有必要了. 分页 ...
- nginx的配置系统
nginx的配置系统由一个主配置文件和其他一些辅助的配置文件构成.这些配置文件均是纯文本文件,全部位于nginx安装目录下的conf目录下. 配置文件中以#开始的行,或者是前面有若干空格或者TAB,然 ...
- springboot 尚桂谷学习总结02
------向导快速创建Springboot 项目------ 1.使用spring initializer 快速创建一个springboot 项目 选择后 最后点击finsh 向导会联网创建 spr ...
- 嵌入式C语言3.2 关键字---自定义数据类型
1. struct 结构体 基本语法 struct myabc{ unsigned int a; unsigned int b; unsigned int c; unsigned int d; } 调 ...