开源监控软件ganglia
Ganglia是一个监控服务器,集群的开源软件,能够用曲线图表现最近一个小时,最近一天,最近一周,最近一月,最近一年的服务器或者集群的cpu负载,内存,网络,硬盘等指标。
Ganglia的强大在于:ganglia服务端能够通过一台客户端收集到同一个网段的所有客户端的数据,ganglia集群服务端能够通过一台服务端收集到它下属的所有客户端数据。这个体系设计表示一台服务器能够通过不同的分层能够管理上万台机器。这个功能是其他mrtg,nagios,cacti所不能比拟。
Ganglia的扩展插件非常好写,无论用何种语言(shell,php,pyton)都可以写,只要把最终结果传给gmetric就可以,这样在web上就可以看到对应的数据。
0. 准备
最新的ganglia版本为3.2.0,但是我推荐安装ganglia3.0.3,因为这个版本安装比较简单,依赖包只有rrdtool。而新版本依赖包太多。
官方网站:http://ganglia.info
ganglia的下载地址 http://sourceforge.net/projects/ganglia
windows版windows客户端版和ganglia 源包:
:http://www.sajinet.com.pe/ganglia/
http://sourceforge.net/project/showfiles.php?group_id=43021&package_id=35280
ganglia的安装分为服务端和客户端和web端安装
文档帮助: http://ganglia.sourceforge.net/docs/
1) 服务端依赖包
Ganglia里的gmetad
Rrdtool(这个依赖很多包,ganglia对于rrdtool的版本不敏感,最好选择比较好安装的版本安装)
2) 客户端
ganglia里的gmond
3) Web端:
Apache,php,rrdtool,php-gd(可不用装,不装的话只是看不到一张饼图,不影响使用)
1.服务端安装 (gmetad)
服务端的服务为gmetad,安装前需要先安装RRDTool(数据库和绘图工具,服务端收集的客户端信息由其来保存),因为要绘制曲线图,所以安装RRDTool前,还必须安装好libpng,freetype,zlib这些库(也是php的gd库需要的),下载地址http://www.rrdtool.org/ 。
安装完了RRDTool,就可以安装gmetad了
点击(此处)折叠或打开
- tar –zxvf ganglia3.0.3.tar.gz
- cd ganglia3.0.3
- ./configure CFLAGS="-I/usr/local/rrdtool-1.0.50/include" CPPFLAGS="-I/usr/local/rrdtool-1.0.50/include" LDFLAGS="-L/usr/local/rrdtool-1.0.50/lib" --with-gmetad --enable-gexec
- make
- make install
将gmetad.init文件拷贝到 /etc/init.d/:
点击(此处)折叠或打开
- cd ganglia-3.0.3/gmetad
- cp gmetad.init /etc/init.d/gmetad #若是ganglia安装在别的目录,则修改gmetad.init里的gmetad路径
- cp gmetad.conf /etc/gmetad.conf
- chkconfig gmetad on
- chkconfig --list gmetad
- GMETAD 0:off 1:off 2:on 3:on 4:on 5:on 6:off
创建rrd数据存储的文件夹, 修改属性拥有者为: "nobody":
点击(此处)折叠或打开
- mkdir /var/lib/ganglia/rrds
- chown nobody:nobody /var/lib/ganglia/rrds
启动gmetad:
点击(此处)折叠或打开
- service gmetad start
- Starting GANGLIA gmetad: [ OK ]
修改 /etc/gmetad.conf文件:
点击(此处)折叠或打开
- data_source "taskcenter" 1.2.3.4 #所要监控的客户端 可以写多个
- setuid_username "root" #可改为其他安全用户
- # default: "/var/lib/ganglia/rrds" #定义该客户端的数据保存的路径
- # rrd_rootdir "/some/other/place"
- rrd_rootdir "/var/lib/ganglia/rrds"
重新启动gmetad:
点击(此处)折叠或打开
- service gmetad start
- Starting GANGLIA gmetad: [ OK ]
验证gmetad正常工作:
点击(此处)折叠或打开
- telnet localhost 8651
就可以得到监控的各个主机的状态。
2.安装客户端gmond2.1 linux版
在每台需要监控的机器上,安装gmond
安装ganglia:
点击(此处)折叠或打开
- tar zxvf ganglia-3.0.3.tar.gz
- cd ganglia-3.0.3
- ./configure --prefix=/usr/local/ganglia
- make;
- make install
- cd gmond
- ./gmond –t > /etc/gmond.conf
点击(此处)折叠或打开
- vi gmond.init
- 修改里面的GMOND 改为GMOND=/usr/local/ganglia/sbin/gmond
- # cp gmond.init /etc/init.d/gmond
- # chkconfig --add gmond
- # chkconfig --list gmond
- gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
- # service gmond start
- Starting GANGLIA gmond: [ OK ] #若不成功的话,就用/usr/local/ganglia/sbin/gmond手动启动
启动失败有可能是因为多播地址没有路由
点击(此处)折叠或打开
- route add -host 239.2.11.71 dev eth0
验证gmond正常工作:
点击(此处)折叠或打开
- telnet localhost 8649
就可以获取机群内运行gmond的主机的信息
vi /etc/gmond.conf
配置gmond.conf:
点击(此处)折叠或打开
- /etc/gmond.conf:
- globals
- {
- setuid = no
- user = nobody
- cleanup_threshold = 300 /*secs */
- }
- #修改监控组名称
- cluster
- {
- name = "taskcenter"
- .......}
配置完成后重新启动gmond
2.2 window版
下载:http://www.sajinet.com.pe/ganglia/ganglia-3.1.0-bin.zip
解压后,运行gmond.bat
测试:telnet 127.0.0.1 8649
安装自启动:把gmond.bat加到启动项中
3.web端安装
web端用于通过web来查看监控状态。
因为web端程序是php写的,所以需要安装apache。同时需要编译php的gd库。web端需要和服务器端在一块。
# cp -a ganglia-3.0.3/web /var/www/html/ganglia
确定web server支持PHP4
对apache来说,php模块mod_php的状态应该是enabled,貌似默认就是的^_^
配制文件是/var/www/html/ganglia/conf.php
点击(此处)折叠或打开
- # Where gmetad stores the rrd archives.
- $gmetad_root = "/var/lib/ganglia";
- $rrds = "/usr/local/rrdtool-1.0.50/"; #数据源路径
- # Leave this alone if rrdtool is installed in $gmetad_root,
- # otherwise, change it if it is installed elsewhere (like /usr/bin)
- define("RRDTOOL", "/usr/local/rrdtool-1.0.50/bin/rrdtool"); # rrdtool执行路径
- #
- # If you want to grab data from a different ganglia source specify it here.
- # Although, it would be strange to alter the IP since the Round-Robin
- # databases need to be local to be read.
- #
- $ganglia_ip = "localhost";
- $ganglia_port = 8652;
- #$ganglia_port = 8649;
在浏览器地址栏输入http://localhost/ganglia/应该可以看到有页面显示了。
演示地址 伯克利大学的集群监控(1000多台服务器):
http://monitor.millennium.berkeley.edu/
访问web出现图片画不出来的原因:
1) rrdtool没有安装,或者conf.php里没有配置
2) gemtad没有启动
3) 没有客户端数据
4) Selinux限制apache执行rrdtool
另外ganglia还有很多插件可以监控更多的指标
其中有一个插件,安装后可以查看任意时间的曲线图
http://ganglia.info/
开源监控软件ganglia的更多相关文章
- 开源监控软件ganglia安装手册
Ganglia是一个监控服务器,集群的开源软件,能够用曲线图表现最近一个小时,最近一天,最近一周,最近一月,最近一年的服务器或者集群的cpu负载,内存,网络,硬盘等指标. Ganglia的强大在于:g ...
- 常用开源<监控软件>介绍
转载地址:http://blog.csdn.net/lx_9986/article/details/6803243 一.Zenoss Core Zenoss Core是开源企业级IT管理软件-是智能监 ...
- 第2节 storm路由器项目开发:8 - 9、集群监控软件ganglia的安装和使用
Ganglia监控Hadoop集群的安装部署 详情请参见 http://boendev.iteye.com/blog/1750615 一. 安装环境 CentOS6.5x86_64 安装gmetad的 ...
- OMD开源监控软件
参考 Best Monitoring Solution - OMD (Nagios + Check_MK) 官网 mathias-kettner.com OMD labs.consol.de Conf ...
- CEPH监控软件
概述 目前主流的Ceph开源监控软件有:Calamari.VSM.Inkscope.Ceph-Dash.Zabbix等,下面简单介绍下各个开源组件. Calamari 概述 Calamari对外提供了 ...
- zabbix、Cacti、Nagios、open-falcon、Ganglia、Prometheus开源监控比较
Zabbix 一个基与WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案(普遍) 能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的 ...
- docker开源系统监控软件Nagios
开源的系统监控软件 下面整理了3个: 1.Zabbix 2.Nagios 3.Open-Falcon 这位博主进行的完整的介绍: https://www.cnblogs.com/linuxandy/p ...
- 大数据技术之_09_Flume学习_Flume概述+Flume快速入门+Flume企业开发案例+Flume监控之Ganglia+Flume高级之自定义MySQLSource+Flume企业真实面试题(重点)
第1章 Flume概述1.1 Flume定义1.2 Flume组成架构1.2.1 Agent1.2.2 Source1.2.3 Channel1.2.4 Sink1.2.5 Event1.3 Flum ...
- 介绍n款计算机视觉库/人脸识别开源库/软件
计算机视觉库 OpenCV OpenCV是Intel®开源计算机视觉库.它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV 拥有包括 300 多个 ...
随机推荐
- Repeater控件实现一行显示多条数据 Asp.net
原文发布时间为:2009-05-11 -- 来源于本人的百度文章 [由搬家工具导入] asp.net中Repeater控件可以很方便显示数据库的数据,使用传统的Table来布局,只能实现 ...
- my conclusion about time planing and requirement changes.
How to estimate time when requirement changes or is added: my principle: never say so easy, at least ...
- socket介绍(webService适用场景)
1.使用场景 - 不同的移动客户端访问 - 需要访问第三方的项目 2.访问第三方应用的方式 ISO的七层模型 : 物理层.数据链路层.网络层.传输层.表示层.会话 ...
- 写文章 TEE技术分析【转】
转自:https://zhuanlan.zhihu.com/p/24222064 首先介绍一下TEE的主要关键技术: 1.安全启动(Secure Boot) 安全启动技术可以用于需要防止篡改系统镜像, ...
- python fromkeys的坑
有个不定长的列表,想把列表中的每个值当做字典的key, 初始值为空列表,于是想到了fromkeys这个方法 In [337]: l = ['a','b','c'] In [338]: res = di ...
- 浏览器中“JavaScript解析器”工作原理
浏览器在读取HTML文件的时候,只有当遇到<script>标签的时候,才会唤醒所谓的“JavaScript解析器”开始工作. JavaScript解析器工作步骤: 1.“找一些东西”: v ...
- Java IO 学习(四)BIO/NIO
本文会尝试介绍Java中BIO与NIO的范例与原理 使用的模型非常简单:服务器--客户端模型,服务器会将客户端发送的字符串原样发回来.也就是所谓的echo server. BIO 也就是所谓的Sock ...
- my -> mysql on duplicate key update使用总结
CREATE TABLE `t_duplicate` ( `a` int(11) NOT NULL, `b` int(255) DEFAULT NULL, `c` int(255) DEFAULT N ...
- Artix : Arch拥抱OpenRC 使用笔记
轻量桌面Archlinux用户逃离systemd,拥抱Gentoo的openrc. 镜像源:官方镜像源非常慢,曾经一度体验artix后就放弃了,后来发现了清华和腾讯云的镜像,速度非常快,现在又重新安装 ...
- 【java】安全加密MessageDigest的功能及用法【hash一致性算法】
链接地址:https://blog.csdn.net/ma1kong/article/details/2662997 1.查看MessageDigest源码的注释说明 2.和hash一致性算法 什么关 ...