ganglia分布式监控软件集群部署
来源:互联网 发布:linux访问数据页面 编辑:程序博客网 时间:2024/06/06 03:04
Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。
Ganglia是一种分布式监控系统。ganglia的设计便是基于大型集群进行设计的。主要体现在数据的获取方式以及分层设计。主要有以下三个优点:
部署的方便性:ganglia类似与nagios的部署方式会更简单,更方便。有利于后期的大规模扩张;
数据获取方式:Ganglia本身就是为集群监控进行设计的,这体现在其数据的获取方式(客户端主动推送)以及分层设计(node cluster grid);
通信方式以及冗余:Ganglia通过组播进行数据交互,配置得当,可以实现冗余避免单点故障。另外,同样由于组播,数据可以在客户机本地进行存放的(安装rrdtool)。
Ganglia体系结构
Ganglia底层使用RRDTool获得数据,Ganglia主要分为两个进程组件:
gmond(ganglia monitor deamon):组播包的发送和接受。发送本地信息,接受其他节点信息
gmetad(ganglia metadata deamon):从监听节点轮询出数据,并对数据进行聚合、存储
除这两个Daemon进程外,Ganglia还依赖其他三个组件提供可视化和数据持久化的服务:
Ganglia网页:提供ganglia的访问页面
rrdtool: 数据存储以及提供画图功能
Apache与php:网站功能,对ganglia提供的网页进行解析
其中,gmond运行在集群每个节点上,收集RRDTool产生的数据;gmetad运行在监控服务器上,收集每个gmond的数据。Ganglia还提供了一个PHP实现的web front end,一般使用Apache2作为其运行环境,通过Web Front可以看到直观的各种集群数据图表。
Ganglia的层次化结构做的非常好,由小到大可以分为node -> cluster -> grid,这三个层次:
一个node就是一个需要监控的节点,一般是个主机,用IP表示。每个node上运行一个gmond进程用来采集数据,并提交给gmetad;
一个cluster由多个node组成,就是一个集群,我们可以给集群定义名字。一个集群可以选一个node运行gmetad进程,汇总/拉取gmond提交的数据,并部署web front,将gmetad采集的数据用图表展示出来;
一个grid由多个cluster组成,是一个更高层面的概念,我们可以给grid定义名字。grid中可以定义一个顶级的gmetad进程,汇总/拉取多个gmond、子gmetad提交的数据,部署web front,将顶级gmetad采集的数据用图表展示出来。
显然,这种方式非常灵活,可以实现多种结构的数据监控。
集群环境
gmond:3台(192.168.1.101、192.168.1.102、192.168.1.103)
gmetad + ganglia web:1台(192.168.1.103)
操作系统:centos6.5(阿里云)
首先安装客户端,客户端起到收集发送数据。centos上安装命令 yum install gmond,安装号后进行配置
vim /etc/ganglia/gmond.conf
cluster {
name = "cluster name" //集群名称
owner = "root" //所属用户名称
latlong = "unspecified"
url = "unspecified"
}
host {
location = "192.168.0.101" //必须填写集群节点位置
}
//数据发送
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 = 192.168.0.101 //组播发送,
host= 192.168.0.101 //单播发送
port = 8649
ttl = 1
//数据接受一般为本机IP地址
//组播需要bind信息
udp_recv_channel {
#mcast_join = 192.168.0.101
#host= 192.168.0.101
port = 8649
#bind = 192.168.0.101
#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
}
port = 8649
//收集数据节点要访问的端口号
tcp_accept_channel {
port = 8649
# If you want to gzip XML output
gzip_output = no
}
安装中心节点服务端
yum install ganglia-gmetad ganglia-devel //数据收集
yum install rrdtool
yum install -y httpd
yum install -y ganglia-web php //提供web服务
编辑vim /etc/ganglia/gmetad.conf
服务端收集数据下载地址
data_source "cluster name" 192.168.0.101 192.168.0.102 192.168.0.103
配置网站权限和设置配置信息
将ganglia-web安装目录链接到httpd主站点目录
# 将ganglia-站点目录连接到httpd主站点目录
$ ln -s /usr/share/ganglia /var/www/html
修改httpd主站点目录下ganglia站点目录的访问权限
#将ganglia站点目录访问权限改为
apache:apache,否则会报错
$chown -R apache:apache /var/www/html/ganglia $ chmod -R 777 /var/www/html/ganglia
修改rrd数据库存放目录访问权限
#将rrd数据库存放目录访问权限改为nobody:nobody,否则会报错
$chown -R nobody:nobody /var/lib/ganglia/rrds
编辑vim /etc/httpd/conf.d/ganglia.conf进行权限设置
<Location /ganglia>
Allow from all //允许所有
#Order deny,allow
#Deny from all
#Allow from 127.0.0.1 //允许某些IP地址
#Allow from ::1
# Allow from .example.com
</Location>
客户端安装后重启服务 service gmond restart;
服务端重启服务 service gmetad restart service httpd restart
Ganglia是一种分布式监控系统。ganglia的设计便是基于大型集群进行设计的。主要体现在数据的获取方式以及分层设计。主要有以下三个优点:
部署的方便性:ganglia类似与nagios的部署方式会更简单,更方便。有利于后期的大规模扩张;
数据获取方式:Ganglia本身就是为集群监控进行设计的,这体现在其数据的获取方式(客户端主动推送)以及分层设计(node cluster grid);
通信方式以及冗余:Ganglia通过组播进行数据交互,配置得当,可以实现冗余避免单点故障。另外,同样由于组播,数据可以在客户机本地进行存放的(安装rrdtool)。
Ganglia体系结构
Ganglia底层使用RRDTool获得数据,Ganglia主要分为两个进程组件:
gmond(ganglia monitor deamon):组播包的发送和接受。发送本地信息,接受其他节点信息
gmetad(ganglia metadata deamon):从监听节点轮询出数据,并对数据进行聚合、存储
除这两个Daemon进程外,Ganglia还依赖其他三个组件提供可视化和数据持久化的服务:
Ganglia网页:提供ganglia的访问页面
rrdtool: 数据存储以及提供画图功能
Apache与php:网站功能,对ganglia提供的网页进行解析
其中,gmond运行在集群每个节点上,收集RRDTool产生的数据;gmetad运行在监控服务器上,收集每个gmond的数据。Ganglia还提供了一个PHP实现的web front end,一般使用Apache2作为其运行环境,通过Web Front可以看到直观的各种集群数据图表。
Ganglia的层次化结构做的非常好,由小到大可以分为node -> cluster -> grid,这三个层次:
一个node就是一个需要监控的节点,一般是个主机,用IP表示。每个node上运行一个gmond进程用来采集数据,并提交给gmetad;
一个cluster由多个node组成,就是一个集群,我们可以给集群定义名字。一个集群可以选一个node运行gmetad进程,汇总/拉取gmond提交的数据,并部署web front,将gmetad采集的数据用图表展示出来;
一个grid由多个cluster组成,是一个更高层面的概念,我们可以给grid定义名字。grid中可以定义一个顶级的gmetad进程,汇总/拉取多个gmond、子gmetad提交的数据,部署web front,将顶级gmetad采集的数据用图表展示出来。
显然,这种方式非常灵活,可以实现多种结构的数据监控。
集群环境
gmond:3台(192.168.1.101、192.168.1.102、192.168.1.103)
gmetad + ganglia web:1台(192.168.1.103)
操作系统:centos6.5(阿里云)
首先安装客户端,客户端起到收集发送数据。centos上安装命令 yum install gmond,安装号后进行配置
vim /etc/ganglia/gmond.conf
cluster {
name = "cluster name" //集群名称
owner = "root" //所属用户名称
latlong = "unspecified"
url = "unspecified"
}
host {
location = "192.168.0.101" //必须填写集群节点位置
}
//数据发送
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 = 192.168.0.101 //组播发送,
host= 192.168.0.101 //单播发送
port = 8649
ttl = 1
//数据接受一般为本机IP地址
//组播需要bind信息
udp_recv_channel {
#mcast_join = 192.168.0.101
#host= 192.168.0.101
port = 8649
#bind = 192.168.0.101
#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
}
port = 8649
//收集数据节点要访问的端口号
tcp_accept_channel {
port = 8649
# If you want to gzip XML output
gzip_output = no
}
安装中心节点服务端
yum install ganglia-gmetad ganglia-devel //数据收集
yum install rrdtool
yum install -y httpd
yum install -y ganglia-web php //提供web服务
编辑vim /etc/ganglia/gmetad.conf
服务端收集数据下载地址
data_source "cluster name" 192.168.0.101 192.168.0.102 192.168.0.103
配置网站权限和设置配置信息
将ganglia-web安装目录链接到httpd主站点目录
# 将ganglia-站点目录连接到httpd主站点目录
$ ln -s /usr/share/ganglia /var/www/html
修改httpd主站点目录下ganglia站点目录的访问权限
#将ganglia站点目录访问权限改为
apache:apache,否则会报错
$chown -R apache:apache /var/www/html/ganglia $ chmod -R 777 /var/www/html/ganglia
修改rrd数据库存放目录访问权限
#将rrd数据库存放目录访问权限改为nobody:nobody,否则会报错
$chown -R nobody:nobody /var/lib/ganglia/rrds
编辑vim /etc/httpd/conf.d/ganglia.conf进行权限设置
<Location /ganglia>
Allow from all //允许所有
#Order deny,allow
#Deny from all
#Allow from 127.0.0.1 //允许某些IP地址
#Allow from ::1
# Allow from .example.com
</Location>
客户端安装后重启服务 service gmond restart;
服务端重启服务 service gmetad restart service httpd restart
0 0
- ganglia分布式监控软件集群部署
- Ganglia分布式监控部署
- Hadoop集群中部署Ganglia分布式监控系统
- 分布式监控工具Ganglia 介绍 与 集群部署.
- 集群监控软件Ganglia在Ubuntu Server上的部署
- Ganglia分布式集群监控系统安装手册
- Ganglia分布式集群监控系统安装手册
- Ganglia分布式集群监控系统安装手册
- Ganglia监控Hadoop集群的安装部署
- Ganglia监控Hadoop集群的安装部署
- Ganglia监控Hadoop集群的安装部署
- Ganglia监控Hadoop集群的安装部署
- Ganglia监控Hadoop集群的安装部署
- Ganglia监控Hadoop集群的安装部署
- flume之集群监控 Ganglia 部署配置
- 集群分组部署ganglia监控服务
- Ganglia:分布式集群系统监控开源工具
- Ganglia环境搭建并监控Hadoop分布式集群
- 年轻的90后就应该马上创业不要等
- UGUI 虚拟摇杆的实现
- 60条有名的原则与定理
- jqgrid表格常用属性
- CSS基本思想--盒模型
- ganglia分布式监控软件集群部署
- Linux内核情景分析之消息队列
- python的赋值和赋址
- java的boolean与string类型转换
- 无法打开物理文件mdf,操作系统错误5:"5(拒绝访问。
- excel表格怎么输入以0为开头的数字
- 前端构建:Less入了个门
- 方法内变量
- 解决npm install安装了太多架包的问题