开源监控软件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了

点击(此处)折叠或打开

  1. tar –zxvf ganglia3.0.3.tar.gz
  2. cd ganglia3.0.3
  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
  4. make
  5. make install

将gmetad.init文件拷贝到 /etc/init.d/:

点击(此处)折叠或打开

  1. cd ganglia-3.0.3/gmetad
  2. cp gmetad.init /etc/init.d/gmetad #若是ganglia安装在别的目录,则修改gmetad.init里的gmetad路径
  3. cp gmetad.conf /etc/gmetad.conf
  4. chkconfig gmetad on
  5. chkconfig --list gmetad
  6. GMETAD 0:off 1:off 2:on 3:on 4:on 5:on 6:off

创建rrd数据存储的文件夹, 修改属性拥有者为: "nobody":

点击(此处)折叠或打开

  1. mkdir /var/lib/ganglia/rrds
  2. chown nobody:nobody /var/lib/ganglia/rrds

启动gmetad:

点击(此处)折叠或打开

  1. service gmetad start
  2. Starting GANGLIA gmetad: [ OK ]

修改 /etc/gmetad.conf文件:

点击(此处)折叠或打开

  1. data_source "taskcenter" 1.2.3.4 #所要监控的客户端 可以写多个
  2. setuid_username "root" #可改为其他安全用户
  3. # default: "/var/lib/ganglia/rrds" #定义该客户端的数据保存的路径
  4. # rrd_rootdir "/some/other/place"
  5. rrd_rootdir "/var/lib/ganglia/rrds"

重新启动gmetad:

点击(此处)折叠或打开

  1. service gmetad start
  2. Starting GANGLIA gmetad: [ OK ]

验证gmetad正常工作:

点击(此处)折叠或打开

  1. telnet localhost 8651

就可以得到监控的各个主机的状态。

2.安装客户端gmond2.1 linux版

在每台需要监控的机器上,安装gmond

安装ganglia:

点击(此处)折叠或打开

  1. tar zxvf ganglia-3.0.3.tar.gz
  2. cd ganglia-3.0.3
  3. ./configure --prefix=/usr/local/ganglia
  4. make;
  5. make install
  6. cd gmond
  7. ./gmond –t > /etc/gmond.conf

点击(此处)折叠或打开

  1. vi gmond.init
  2. 修改里面的GMOND 改为GMOND=/usr/local/ganglia/sbin/gmond
  3. # cp gmond.init /etc/init.d/gmond
  4. # chkconfig --add gmond
  5. # chkconfig --list gmond
  6. gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
  7. # service gmond start
  8. Starting GANGLIA gmond: [ OK ] #若不成功的话,就用/usr/local/ganglia/sbin/gmond手动启动

启动失败有可能是因为多播地址没有路由

点击(此处)折叠或打开

  1. route add -host 239.2.11.71 dev eth0

验证gmond正常工作:

点击(此处)折叠或打开

  1. telnet localhost 8649

就可以获取机群内运行gmond的主机的信息

vi /etc/gmond.conf
配置gmond.conf:

点击(此处)折叠或打开

  1. /etc/gmond.conf:
  2. globals
  3. {
  4. setuid = no
  5. user = nobody
  6. cleanup_threshold = 300 /*secs */
  7. }
  8. #修改监控组名称
  9. cluster
  10. {
  11. name = "taskcenter"
  12. .......}

配置完成后重新启动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

点击(此处)折叠或打开

  1. # Where gmetad stores the rrd archives.
  2. $gmetad_root = "/var/lib/ganglia";
  3. $rrds = "/usr/local/rrdtool-1.0.50/"; #数据源路径
  4. # Leave this alone if rrdtool is installed in $gmetad_root,
  5. # otherwise, change it if it is installed elsewhere (like /usr/bin)
  6. define("RRDTOOL", "/usr/local/rrdtool-1.0.50/bin/rrdtool"); # rrdtool执行路径
  7. #
  8. # If you want to grab data from a different ganglia source specify it here.
  9. # Although, it would be strange to alter the IP since the Round-Robin
  10. # databases need to be local to be read.
  11. #
  12. $ganglia_ip = "localhost";
  13. $ganglia_port = 8652;
  14. #$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的更多相关文章

  1. 开源监控软件ganglia安装手册

    Ganglia是一个监控服务器,集群的开源软件,能够用曲线图表现最近一个小时,最近一天,最近一周,最近一月,最近一年的服务器或者集群的cpu负载,内存,网络,硬盘等指标. Ganglia的强大在于:g ...

  2. 常用开源<监控软件>介绍

    转载地址:http://blog.csdn.net/lx_9986/article/details/6803243 一.Zenoss Core Zenoss Core是开源企业级IT管理软件-是智能监 ...

  3. 第2节 storm路由器项目开发:8 - 9、集群监控软件ganglia的安装和使用

    Ganglia监控Hadoop集群的安装部署 详情请参见 http://boendev.iteye.com/blog/1750615 一. 安装环境 CentOS6.5x86_64 安装gmetad的 ...

  4. OMD开源监控软件

    参考 Best Monitoring Solution - OMD (Nagios + Check_MK) 官网 mathias-kettner.com OMD labs.consol.de Conf ...

  5. CEPH监控软件

    概述 目前主流的Ceph开源监控软件有:Calamari.VSM.Inkscope.Ceph-Dash.Zabbix等,下面简单介绍下各个开源组件. Calamari 概述 Calamari对外提供了 ...

  6. zabbix、Cacti、Nagios、open-falcon、Ganglia、Prometheus开源监控比较

    Zabbix 一个基与WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案(普遍) 能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的 ...

  7. docker开源系统监控软件Nagios

    开源的系统监控软件 下面整理了3个: 1.Zabbix 2.Nagios 3.Open-Falcon 这位博主进行的完整的介绍: https://www.cnblogs.com/linuxandy/p ...

  8. 大数据技术之_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 ...

  9. 介绍n款计算机视觉库/人脸识别开源库/软件

    计算机视觉库 OpenCV OpenCV是Intel®开源计算机视觉库.它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV 拥有包括 300 多个 ...

随机推荐

  1. [原创] 树莓派个人实测 Q&A(最新修改使用windows连接远程桌面)

    原文出处:http://www.eeboard.com/bbs/thread-5191-1-1.html 这篇帖子我打算用Q&A的方式来编写,这样大家更容易一目了然的看明整个帖子的内容,层次分 ...

  2. mdev的基本工作原理【转】

    转自:http://www.cnblogs.com/hnrainll/archive/2011/06/10/2077435.html 分析过mdev(udev的BusyBox简化版)源码的都知道mde ...

  3. VMware Workstation/Fusion 中安装 Fedora 23/24 及其他 Linux 系统时使用 Open VM Tools 代替 VMware Tools 增强工具的方法

    VMware Workstation/Fusion 分别是 Windows/Linux 和 macOS 下面对应的桌面虚拟化软件.过去,在 VMware 中安装了操作系统虚拟机后,需要在虚拟机中再安装 ...

  4. angular6安装

    中文 https://www.angular.cn/ 二.下载 1.安装 node.js https://nodejs.org/en/ 2.删除老angular-cli npm uninstall - ...

  5. luogu P3376 【模板】网络最大流(no)ek

    题目描述 如题,给出一个网络图,以及其源点和汇点,求出其网络最大流. 输入输出格式 输入格式: 第一行包含四个正整数N.M.S.T,分别表示点的个数.有向边的个数.源点序号.汇点序号. 接下来M行每行 ...

  6. 2016北京集训测试赛(十一)Problem C: 树链问题

    Solution 智障暴力题, 每个点维护一下子树信息, 树剖就好了. 我居然还傻了写了一发毛毛虫... #include <cstdio> #include <cctype> ...

  7. go--互斥锁

    解读: main函数里调用了两次lockPrint方法,这个方法中的println(i, "in lock")这句话,由于是在Mutex的Lock和Unlock之间,所以在第一次调 ...

  8. 安全 -- mysql参数化查询,防止Mysql注入

    参数化查询(Parameterized Query 或 Parameterized Statement)是指在设计与数据库链接并访问数据时,在需要填入数值或数据的地方,使用参数(Parameter) ...

  9. NormalMap 贴图 [转]

    转载: http://www.zwqxin.com/archives/shaderglsl/review-normal-map-bump-map.html   说起Normal Map(法线贴图),就 ...

  10. C++中的void类型

    Technorati 标签: void,指针 1.1. void类型 void类型其实是一种用于语法性的类型,而不是数据类型,主要用于作为函数的参数或返回值,或者定义void指针,表示一种未知类型. ...