文档章节

Linux下安装部署ganglia

knolinux
 knolinux
发布于 2015/12/06 19:29
字数 1409
阅读 41
收藏 1

    最近,因为在多个机器上部署有应用程序,于是想到是否有办法监控到每台机器的状况呢?立马就想到了在开源世界里几款比较有名的集群监控软件,nagios、zabbix、ganglia、cacti等,之所以选择ganglia,完全是因为流传的资源占用率最低,因为我用的机器比较差。

一、准备

那么,首先我要去下载安装程序。

http://sourceforge.net/projects/ganglia/

这里要注意,最好点网站上的files按钮,进入选择自己要下载的模块。这里我选择下载了ganglia-web-3.7.1.tar.gz和ganglia-3.7.2.tar.gz,前面一个为我们提供监控页面展示,后面包含两个模块gmetad和gmond。

二、开始安装

    因为安装可能会依赖很多的软件,建议安装前最好准备一个和你系统同步的rpm包。我这里把CentOS6.5的ISO文件下的Packages目录直接上传至服务器,为了方便yum自动查找依赖,我首先建一个本地安装源。当然,如果你既没有Packages包,也没有yum甚至rpm工具,那我只能说,你只能根据报错信息,一个一个手动下载依赖了。


安装createrepo软件来制作yum的本地源。

[root@192 Packages]# rpm -ivh createrepo-0.9.9-18.el6.noarch.rpm

提示依赖python-deltarpm,好吧先装这个:

[root@192 Packages]# rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
[root@192 Packages]# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm

现在可以成功安装createrepo工具。

cd /

mkdir rpms

拷贝所有rpm到rpms目录:

mv ./pacakages/* rpms/

cd /rpms/

生成本地源库:

createrepo -v ./ 等待命令完成。

修改/etc/yum.repo.d目录下配置文件,重命名所有文件,并新增CentOS-Local.repo

[root@192 yum.repos.d]# cat CentOS-Local.repo

验证一下:

yum clean all

yum makecache

 好了,到这里,yum本地源配置结束,别小看这个工作,这个为我们以后自己源码安装任何程序,尤其是在在线安装不太好用的条件下。


进入正题:

[root@192 Desktop]# tar -zxvf ganglia-3.7.2.tar.gz

[root@192 Desktop]# cd ganglia-3.7.2

从本地库中找到了依赖软件rrdtool:

注意:因为要用到rrdtool包里的2个头文件rrd.h和rrd_format.h,这里可以选择源码安装。也可以yum自动安装,处理稍有差别。

(1)yum 安装

[root@192 ganglia-3.7.2]# yum install rrdtool.x86_64

yum强大的地方显示出来了,它会自动安装rrdtool所依赖的所有软件。有人可能会说,都用自动安装了,有什么锻炼价值。我只能表示你还很native,能用的都是好东西。没有一颗偷懒的心,怎么能促进科技进步呢!

rrdtool BIN文件会默认安装在/usr/bin/目录下,而相关库文件会安装在/usr/lib64目录下,请自行确认,这个后面会用到。记得拷贝.h文件到/usr/include目录

(2)源码安装

[root@192 Desktop]# tar -zxvf rrdtool-1.3.8.tar.gz

[root@192 rrdtool-1.3.8]# ./configure

[root@192 rrdtool-1.3.8]# yum install intltool.noarch

再次configure,提示缺cairo系列包,一个一个来。

[root@192 rrdtool-1.3.8]# yum install cairo-devel.x86_64

[root@192 rrdtool-1.3.8]# yum install pango-devel.x86_64

大概意思是找不到libxml2的库文件和头文件

[root@192 /]# find ./ -name "libxml2.so"

果然没有,没有办法,只能源码再安装一次。下载libxml2源码包。

[root@192 /]# tar -zxvf libxml2-2.7.8.tar.gz

[root@192 libxml2-2.7.8]# ./configure

make&&make install

[root@192 rrdtool-1.3.8]# yum install perl-devel.x86_64

[root@192 rrdtool-1.3.8]# export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"

[root@192 rrdtool-1.3.8]# ./configure CPPFLAGS="-I/usr/local/include/libxml2/libxml/" LDFLAGS="-L/usr/lib64"
make&&make install

现在rrdtool源码安装完成,安装目录在/usr/local/rrdtool-1.3.8


其它依赖工具安装

[root@192 ganglia-3.7.2]# yum install apr-devel.x86_64

[root@192 ganglia-3.7.2]# yum install expat-devel.x86_64

安装confuse2.7

[root@192 confuse-2.7]# ./configure make &&make install

[root@192 ganglia-3.7.2]# yum install pcre-devel.x86_64

主服务器:(必须装gmetad)

./configure  CFLAGS="-I/usr/local/rrdtool-1.3.8/include" CPPFLAGS="-I/usr/local/rrdtool-1.3.8/include" LDFLAGS="-L/usr/local/rrdtool-1.3.8/lib" --with-gmetad --enable-gexec

被监控服务器:(必须装gmond)

./configure  CFLAGS="-I/usr/local/rrdtool-1.3.8/include" CPPFLAGS="-I/usr/local/rrdtool-1.3.8/include" LDFLAGS="-L/usr/local/rrdtool-1.3.8/lib" --enable-gexec

make 

原来是我们confuse安装问题,修改confuse的configure 文件,重新编译安装confuse。再来一次

make clean

make &&make install

搞定,成功完成!

ganglia-web安装:

装这个前,请确保装有apache PHP

启动apache之前请确保其配置对PHP的支持,主要文件:

/etc/httpd/conf/httpd.conf配置:


ServerRoot "/etc/httpd"
Listen node130:80 //配置自己的IP和端口

ServerAdmin root@node130
DocumentRoot "/var/www/html"


/etc/httpd/conf/conf.d/php.conf配置:


#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#
<IfModule prefork.c>
  LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
  LoadModule php5_module modules/libphp5-zts.so
</IfModule>

#
# Cause the PHP interpreter to handle files with a .php extension.
#
AddHandler php5-script .php
AddType text/html .php

#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php

#
# Uncomment the following line to allow PHP to pretty-print .phps
# files as PHP source code:
#
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
PidFile "/var/run/httpd/httpd.pid"


mkdir /var/www/html/ganglia

mkdir /var/lib/ganglia/rrds

chown -R apache:apache /var/www/html/ganglia

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


进入ganglia-web安装目录:

修改makefile如下

APACHE_USER =apache

GDESTDIR = /var/www/html/ganglia

make&&make install

配置/var/www/html/ganglia/conf.php


<?php
$gmetad_root = "/var/lib/ganglia";
$rrds = "/var/lib/ganglia/rrds";

define("RRDTOOL","/usr/local/rrdtool-1.3.8/bin/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 = "192.168.41.130";
$ganglia_port = 8652;
#$ganglia_port = 8649;
?>


© 著作权归作者所有

上一篇: __attribute__
下一篇: __attribute__
knolinux
粉丝 0
博文 2
码字总数 1409
作品 0
项目经理
私信 提问
以容器部署Ganglia并监控Hadoop集群

版权声明:本文为博主原创文章,未经博主允许不得转载。欢迎访问我的博客 https://blog.csdn.net/smooth00/article/details/80495604 网上有很多Ganglia部署的教程,每一个我都觉得繁琐,我的...

smooth00
2018/05/29
0
0
北京互联网广告公司招聘:运维工程师

北京互联网广告公司招聘:运维工程师 岗位职责: 1、三年以上linux/unix系统维护经验,熟悉linux操作系统的维护; 2、有系统调优经验者优先; 3、熟悉分布式服务器的配置与管理; 4、熟悉分布...

Iris_糖姐
2012/03/02
213
1
用ganglia监控服务器状态

集群监控软件ganglia http://sourceforge.net/projects/ganglia Ganglia 监控软件主要是用来监控系统性能的软件,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到...

红薯
2009/02/19
4.7K
2
北京互联网企业招聘:分布式运维工程师

北京互联网企业招聘:分布式运维工程师 岗位职责: 1、三年以上linux/unix系统维护经验,熟悉linux操作系统的维护; 2、有系统调优经验者优先; 3、熟悉分布式服务器的配置与管理; 4、熟悉分...

Iris_糖姐
2012/04/19
292
1
在OS(RHEL6.4)+Arch(ppc64)环境下安装Ganglia

前言 最近IBM提供了一台powerpc给我们测试使用.在上面装出几个虚拟机,准备加入到云平台中. 同时为了监控主机状况,准备在上面安装nagios和ganglia. nagios的安装同x86_64环境下相差不多,但是g...

一只小逛
2013/12/11
3.7K
0

没有更多内容

加载失败,请刷新页面

加载更多

Tensorflow 2.0安装

Tensorflow2.0安装环境: Ubuntu 16.04或更高(64位) Windows 7或者更高(64位,且支持python3) 安装Tensorflow 2.0 GPU版本的需要安装NVIDIA相关软件包: NVIDIA驱动 :版本必须410.x或更...

JosiahMg
31分钟前
4
0
TL138/1808/6748F-EasyEVM开发板硬件、CPU、FLASH、RAM

TL138/1808/6748F-EasyEVM是广州创龙基于SOM-TL138/SOM-TL1808/SOM-TL6748F核心板开发的一款开发板。由于SOM-TL138/SOM-TL1808/SOM-TL6748核心板管脚兼容,所以此三个核心板共用同一个底板。...

Tronlong创龙
38分钟前
4
0
百度嵌入式AI解决方案EdgeBoard之内存驱动设计介绍

1. 背景介绍 由于 FPGA 具备可编程和高性能计算的特点,基于FPGA硬件的AI计算加速,正广泛地应用到计算机视觉处理领域。其中极具代表性的部署方式之一就是使用FPGA和CPU组合构成异构计算系统...

AI君
45分钟前
6
0
开放应用模型(OAM):全球首个云原生应用标准定义与架构模型

Kubernetes 项目作为容器编排领域的事实标准, 成功推动了诸如阿里云 Kubernetes (ACK)等云原生服务的迅速增长。但同时我们也关注到,Kubernetes 的核心 API 资源比如 Service、Deploymen...

Mr_zebra
48分钟前
4
0
《Linux操作系统-Exynos4412》编译和安装Busybox

开发环境:Exynos4412-iTOP-4412开发板 现在 Busybox 的配置已经完成了,接下来开始编译 Busybox,在 Ubuntu 的终端输入 “make”命令开始编译 Busybox,如下图。 下图为编译过程中的截图。 ...

书白
50分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部