Ganglia是一个跨平台可扩展的分布式监控系统,用来监控系统性能,如:cpu、内存、硬盘利用率,I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,通过长期监测系统运行状况可以对合理调整、分配系统资源提供参考。

第一部分:软件安装

安装环境说明

系统版本:

Linux 2.6.18-164.el5 #1 x86_64 GNU/Linux

依赖软件版本:

expat-2.0.1.tar.gz[解析xml用]

apr-1.4.5.tar.gz[可移植运行库]

apr-util-1.3.12.tar.gz[不知道能干什么?]

confuse-2.6.tar.gz[配置文件解析]

rrdtool-1.2.27.tar.gz[画图用]

ganglia-3.2.0.tar.gz[监控软件,包括服务端、客户端和web页面]

安装四个依赖库zlib、freetype、libart_lgpl、libpng(必须要安装develop版本):

步骤:

rpm -qa | grep zlib检查是否有zlib-devel版本

yum install zlib-devel自动检查安装

其它三个依赖库也用相同的方法处理即可

安装画图工具rrdtools:

下载地址:http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.27.tar.gz

安装:

tar zxvf rrdtool-1.2.27.tar.gz

cd rrdtool-1.2.27

./configure --prefix=/usr/local/rrdtool

make

make install

执行以下命令,检查是否安装成功

/usr/local/rrdtool/bin/rrdtool

安装expat:

下载地址:http://downloads.sourceforge.net/expat/expat-2.0.1.tar.gz

tar zxvf expat-2.0.1.tar.gz

cd expat-2.0.1

./configure –prefix=/usr/local/expat

make

make install

复制lib包下的内容到lib64目录下:

mkdir /usr/local/expat/lib64

cp -a /usr/local/expat/lib/* /usr/local/expat/lib64/

安装apr以及apr-util:

下载地址:http://labs.renren.com/apache-mirror/apr/apr-1.4.5.tar.gz

tar xvjf apr-1.3.2.tar.bz2

./configure --prefix=/usr/local/apr

make

make install

下载地址:http://labs.renren.com/apache-mirror/apr/apr-util-1.3.12.tar.gz

tar xvjf apr-util-1.3.2.tar.bz2

./configure  --with-apr=/usr/local/apr --with-expat=/usr/local/expat

make

make install

复制lib包下的内容到lib64目录下:

cp -f /usr/local/apr/include/apr-1/* /usr/local/apr/include/

mkdir -p /usr/local/apr/lib64

cp -a -f /usr/local/apr/lib/* /usr/local/apr/lib64/

安装confuse:

下载地址:http://download.savannah.gnu.org/releases/confuse/confuse-2.7.tar.gz

tar zxvf confuse-2.6.tar.gz

./configure CFLAGS=-fPIC  --disable-nls --prefix=/usr/local/confuse

make

make install

复制lib包下的内容到lib64目录下:

mkdir -p /usr/local/confuse/lib64

/bin/cp -a -f /usr/local/confuse/lib/* /usr/local/confuse/lib64/

安装ganglia:

tar zxvf ganglia-3.2.0.tar.gz

cd ganglia-3.2.0

./configure --prefix=/usr/local/ganglia --with-librrd=/usr/local/rrdtool --with-libapr=/usr/local/apr --with-libexpat=/usr/local/expat --with-libconfuse=/usr/local/confuse --with-gmetad --enable-gexec --enable-status --sysconfdir=/etc/ganglia

make

make install

其他:

1.ganglia监控前台需要有web server支持,可以是apache或nginx;

2.ganglia监控页面是php写的,还需要安装php环境;

3.如果需要使用python扩展ganglia功能,最好先把python版本更新到2.6以上.

第二部分:环境配置

服务端配置:[假设当前所在目录为ganglia-3.2.0.tar.gz解压后的目录ganglia-3.2.0]

1.创建rrdtool数据目录:

查看ganglia-3.2.0/web/conf.php里面的gmetad_root变量值,根据这个值创建目录并修改权限:

mkdir -p /var/lib/ganglia/rrds

mkdir -p /var/lib/ganglia/dwoo

chown -R nobody:nobody /var/lib/ganglia

2.修改服务进程的配置文件:

vim /etc/ganglia/gmetad.conf

data_source "cluster_name" localhost [添加一个数据源名称(集群),客户端的配置中会用到此名称]

setuid_username "nobody"[运行的用户]

3.添加自启动脚本

cp -f ganglia-3.2.0/gmetad/gmetad.init  /etc/init.d/gmetad

cp -f /usr/local/ganglia/sbin/gmetad  /usr/sbin/gmetad

chkconfig --add gmetad

4.启动gmetad服务

service gmetad start

看见Starting GANGLIA gmetad: [ OK ]就代表运行正常了。

客户端配置:

1.添加启动脚本

cp -f ganglia-3.2.0/gmond/gmond.init  /etc/init.d/gmond

cp -f /usr/local/ganglia/sbin/gmond  /usr/sbin/gmond

chkconfig -add gmond

gmond --default_config > /etc/ganglia/gmond.conf

2.对于生成的默认配置文件需要做适当的修改

cluster {

name="cluster_name"#修改成服务进程里指定的集群名称

owner="nobody"#运行的用户

latlong="unspecified"

url="unspecified"

}

3.开启服务

service gmond start

看见Starting GANGLIA gmetad: [ OK ]代表启动成功。

如果失败,可以讲gmond.conf中的debug有0改为100,查看更多的日志,然后进行排查。

非当前机器的客户端配置只需要将本地机器安装好的lib64下的文件复制过来即可,参考下面的脚本:

servers=("server_ip_1" "server_ip_2")

for i in ${servers[@]}

do

scp /usr/sbin/gmond $i:/usr/sbin/gmond

ssh $i mkdir -p /etc/ganglia/

ssh $i mkdir -p /usr/local/ganglia/lib64

ssh $i mkdir -p /usr/local/expat/lib

scp /etc/ganglia/gmond.conf $i:/etc/ganglia/

scp /etc/init.d/gmond $i:/etc/init.d/

scp -r /usr/local/ganglia/lib64/* $i:/usr/local/ganglia/lib64/

scp /usr/local/expat/lib/libexpat.so.1 $i:/usr/local/expat/lib/libexpat.so.1

scp /usr/lib64/libapr-1.so.0 $i:/usr/lib64/

done

主要需要修改的配置gmond.conf

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=xx.xx.xx.xx #集群中心节点的IP,也就是gmetad进程所在的机器,当前节点把数据发送到这个IP上

port = 8649

ttl = 1

}

/* You can specify as many udp_recv_channels as you like as well. */

udp_recv_channel {

#mcast_join = 239.2.11.71#注释掉这一行

port = 8649

bind = xx.xx.xx.xx#在监控页面显示这个IP(当前机器)

}

WEB程序配置:

用apache来运行php,需要以下依赖:php-common php-cli php php-gd httpd

用nginx来运行php,需要安装php-fpm

安装web程序,这里假定apache的root路径在/var/www/html下面。

mkdir /var/www/html/ganglia

cp -a -f ganglia-3.2.0/web/* /var/www/html/ganglia

修改rrdtool的路径,文件/var/www/html/ganglia/conf.php中的RRDTOOL

define("RRDTOOL", "/usr/local/rrdtool/bin/rrdtool");

重启apache服务器即可

-->枪声依旧

java ganglia_Linux下Ganglia集群监控安装、配置笔记相关推荐

  1. 原创:centos7.1下 ZooKeeper 集群安装配置+Python实战范例

    centos7.1下 ZooKeeper 集群安装配置+Python实战范例 下载:http://apache.fayea.com/zookeeper/zookeeper-3.4.9/zookeepe ...

  2. kamailio,asteisk,realtime 实现负载均衡(集群)完整配置笔记

    环境 负载均衡+数据库服务器 Centos-5.4 + kamailio-3.1.4 + mysql-5.0.77-4.el5_6.6 IP:192.168.1.30 asterisk服务器1 Cen ...

  3. VMware Workstation 9下基于Ubuntu 12.10服务器版本的Hadoop集群的配置

    (主要参照http://os.51cto.com/art/201211/363116.htm) 一.概述 其实,网上关于Hadoop集群的配置的资料不可谓不少,但是,细细找来,多半是在有图形桌面的环境 ...

  4. Windows下搭建Tomcat集群的配置详解

    < Windows下搭建Tomcat集群基础入门详解 > 前言 在搭建 < Apache + Tomcat 实现Web服务器集群 > 前我们还需要实现 Tomcat集群实现Se ...

  5. [Hadoop集群模式安装与配置全过程]红帽子RatHat6下hadoop集群模式安装(3个节点,master,slave1,slave2)

    红帽子RatHat6下hadoop集群模式安装(3个节点,master,slave1,slave2) 一.学习目标: 使用红帽子RatHat6在虚拟机上搭建hadoop集群,包含3个节点,体验集群分布 ...

  6. CentOS下torque集群配置(一)-torque安装与配置

    CentOS下torque集群配置(一)-torque安装与配置 一.Centos7系统的安装及设置 1.给两台电脑安装CentOS7.0,光盘启动路径修改为:/dev/cdrom 修改主机名称 # ...

  7. 【Big Data】HADOOP集群的配置(一)

    Hadoop集群的配置(一) 摘要: hadoop集群配置系列文档,是笔者在实验室真机环境实验后整理而得.以便随后工作所需,做以知识整理,另则与博客园朋友分享实验成果,因为笔者在学习初期,也遇到不少问 ...

  8. Java接口对Hadoop集群的操作

    Java接口对Hadoop集群的操作 首先要有一个配置好的Hadoop集群 这里是我在SSM框架搭建的项目的测试类中实现的 一.windows下配置环境变量 下载文件并解压到C盘或者其他目录. 链接: ...

  9. Redis单例、主从模式、sentinel以及集群的配置方式及优缺点对比

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:爱宝贝丶 my.oschina.net/zhangxufen ...

最新文章

  1. JAVA数据库第四章上机3_Java第二至第四章上机练习题
  2. android组合动画还原,Android - Fragment,View动画,组合动画,属性动画
  3. Java内部类(Inner Class)小记
  4. Qt UDP 广播简单示例
  5. 百万数据报表导出:需求以及思路分析
  6. 数据库-优化-慢查日志的存储格式
  7. discuz mysql data_Discuz!显示 Database Error的原因和解决方法
  8. apollo local 模式_「架构」 - 配置中心 Apollo基本使用
  9. TS流解析 二 *****
  10. makefile工作笔记0003---Makefile的ifeq逻辑或,逻辑与的变通实现
  11. 我用10张图总结出了这份并发编程最佳学习路线!!(建议收藏)
  12. 内存颗粒位宽和容量_DDR4内存终极解析(一)--DDR4内存颗粒
  13. 大数据智能营销笔记本弊端,怎么样?
  14. java获取某年度有多少周_java获取一年共有多少周
  15. Boost.Geometry介绍
  16. 应用后台被回收,点击崩溃
  17. 从数据标准到数据库设计:解决基础数据标准落地的最后一公里难题(上)
  18. [深度学习]Part1 Python学习进阶Ch23爬虫Spider——【DeepBlue学习笔记】
  19. Bzoj 1596: [Usaco2008 Jan]电话网络
  20. 【机器学习】多元函数梯度的理解

热门文章

  1. 美洽系统怎么获取未读消息
  2. 利用C#写1000以内完数
  3. 太空乱游等待服务器响应,《太空乱游》游戏特色内容一览
  4. Android三方框架banner实现轮播图
  5. 用计算机来模拟二维生命,用并行计算机模拟二维氢团簇的光电离
  6. mybatis启动报错Result Maps collection already contains value for xxx
  7. 蓝桥杯-阶乘运算和高精度加法(Java)
  8. java版b2b2c o2o 多租户多商家电子商务之(商家管理)SpringCloud SpringBoot Mybatis Uniapp 分布式商城源码 电子商务源码 社交电商 直播带货
  9. 在庫購買管理(MM)
  10. rm命令linux00,linux下rm命令使用详解 | Soo Smart!