一、rrdtool安装

1.1 安装依赖包

由于rrdtool依赖的包比较多,而且包之间也存在依赖,故使用yum安装由于服务器无法联网,故使用iso文件创建本地yum源,方法见下:

(1)创建iso存放目录和挂载目录

mkdir /mnt/iso
mkdir /mnt/cdrom

(2)将iso镜像文件上传到/mnt/iso文件夹下

(3)将/mnt/iso/下的iso文件挂载到/mnt/cdrom目录

mount -o loop /mnt/iso/XXXXX.iso /mnt/cdrom

注:挂载完之后对其操作会提示设备繁忙,此时需要umount解开挂载才行

查看是否挂载成功: df -h

用来查看系统中所有挂载的,mount也可以

(4)如果/etc/yum.repos/下面有其它的*.repo文件,先创建个文件夹,将这些*.repo先转移到文件夹中,自己写一个.repo的文件

mkdir /etc/yum.repos.d/bak
mv *.repo /etc/yum.repos.d/bak

然后创建自己的.repo文件vi myself.repo

[base]
name=RedHat
baseurl=file:///mnt/cdrom
enabled=1
gpgckeck=0
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release,file:///mnt/cdrom/RPM-GPG-KEY-redhat-beta

安装命令见下:

yum -y install cairo cairo-devel pango pango-devel libxml2 libxml2-devel glib2 glib2-devel

1.2 源码安装rrdtool

从rrdtool的官网 (http://oss.oetiker.ch/rrdtool/) 下载rrdtool的源码包,解压,编译,安装

tar -zxvf rrdtool-1.4.8.tar.gz
cd rrdtool-1.4.8/
./configure -prefix=/usr/local/rrdtool
make && make install

在命令行运行rrdtool -v,测试安装是否成功

二、Apache安装

2.1 依赖包安装

(1)源码安装apr(也可通过yum安装)

tar -zxvf apr-1.5.0.tar.gz
cd apr-1.5.0
./configure && make && make install

(2)源码安装 apr-util(也可通过yum安装)

tar -zxvf apr-util-1.5.3.tar.gz
cd apr-util-1.5.3
./configure --with-apr=/usr/local/apr && make && make install

(3)源码安装 libconfuse

tar -zxvf confuse-2.7.tar.gz
cd confuse-2.7
./configure CFLAGS=-fPIC --disable-nls && make && make install

(4)源码安装 pcre

tar -zxvf pcre-8.34.tar.gz
cd pcre-8.34
./configure && make && make install

安装pcre时, 可能提示说没有c++ 编译器,可通过yum -y install gcc-c++ 进行安装

2.2 源码安装apache

从官网( http://www.apache.org/ )下载apache源码包,进行解压,编译,安装

./configure --prefix=/app/ApacheInstall/httpd-2.4.7/ --sysconfdir=/app/apache-config --enable-shared=max --enable-so --enable-rewrite --enable-ssl --with-apr=/usr/local/apr
make && make install

修改配置文件/app/apache-config/httpd.conf

Listen 18001 //默认为80, 只有root用户能够启动,将其改为1024之后的数字,可以由hadoop用户启动
ServerName GBD-VM01
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>

创建/app/ApacheInstall/httpd-2.4.7/到/app/apache的链接

修改组属

chown -R hadoop:hadoop /app/ApacheInstall /app/apache /app/apache-config

在浏览器中输入 http://ip(安装机器ip) 进行测试,出现It works!字样,说明安装成功

可将/app/ApacheInstall/httpd-2.4.7/bin/apachetcl拷贝到/usr/sbin目录下,方便进行apache的启动和关闭

apachetcl -k start|restart|stop

三、php安装

从官网( http://www.php.net/ )下载安装源码包,解压,编译,安装

tar -zxvf php-5.5.7.tar.gz
cd php-5.5.7
./configure --with-apxs2=/app/apache/bin/apxs ##will install the mod_php for apache
make && make install

起初使用yum安装了php,但是在apache中却无法解析php文件,多番找原因,无果,之后使用源码进行编译安装

php配置

cp php.ini-production /usr/local/lib/php.ini;
vi2 php.ini session.save_path = "/usr/local/lib/php/session" date.timezone = "PRC";
mkdir /usr/local/lib/php/session;
chmod 755 /usr/local/lib/php;
chown -R hadoop:hadoop /usr/local/lib/php/session

四、Ganglia安装

4.1 Gmetad源码安装

从官网( http://ganglia.info/ )下载Ganglia源码包,解压,编译,安装

make && make install

安装过程中可能出现以下错误

Checking for apr
Added -I/usr/local/apr//include to CFLAGS
Added -L/usr/local/apr//lib64 to LDFLAGS
checking for apr_socket_send in -lapr-1... no
libapr not found

经检查,apr已安装,只是路径有偏差,故使用mv /usr/local/apr/lib /usr/local/apr/lib64,暂时解决问题

libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I.. -I. -I../include/ -D_LARGEFILE64_SOURCE -DSFLOW -DSYSCONFDIR="/app/ganglia-config" -g -O2 -I/usr/local/rrdtool//include -I/usr/local/apr//include -fno-strict-aliasing -Wall -D_REENTRANT -MT ganglia.lo -MD -MP -MF .deps/ganglia.Tpo -c ganglia.c -fPIC -DPIC -o .libs/ganglia.o
ganglia.c:8:19: 错误:expat.h:没有那个文件或目录

经检查,expat.h文件存在,只是路径有偏差,故使用cp /usr/local/apr/include/apr-1/* /usr/local/apr/include 暂时解决问题

修改/app/ganglia-config/gmetad.conf中的配置项

data_source "hadoop-core DEV" 192.168.1.101:8649 192.168.1.102:8649 192.168.1.103:8649 192.168.1.104:8649
setuid_username "hadoop"
rrd_rootdir "/app/ganglia/rrds"

创建/app/GangliaInstall/ganglia-3.6.0/到/app/ganglia的链接

ln -s /app/GangliaInstall/ganglia-3.6.0/ /app/ganglia

修改组属

chown -R hadoop:hadoop /app/GangliaInstall/ /app/ganglia /app/ganglia-config

可将/app/ganglia/sbin/gmetad拷贝到/usr/bin,便于使用

可用gmetad -d 5 进行运行测试

启动gmetad:gmetad

在启动过程中可能出现找不到连接库的问题,可通过ldd $(which /usr/bin/gmetad) 检查依赖包是否都能找到,若有找不到的依赖包,可使用find / -name 依赖包名 命令查找依赖包,并将其链接到/lib64/目录下

4.2 Gmond源码安装

从官网下载Ganglia源码包,解压,编译,安装

./configure --prefix=/app/GangliaInstall/ganglia-3.6.0/ --with-librrd=/usr/local/rrdtool/ --with-libexpat=yes --with-libconfuse=yes --with-python=yes --with-libpcre=yes --with-libapr=/usr/local/apr/ --enable-gexec --enable-status --sysconfdir=/app/ganglia-config/
make && make install

修改/app/ganglia-config/gmetad.conf中的配置项

globals {
daemonize = yes
setuid = yes
user = hadoop
……
}
cluster {
name = "hadoop-core DEV"
owner = "hadoop"
latlong = "unspecified"
url = "unspecified"
}

创建/app/GangliaInstall/ganglia-3.6.0/到/app/ganglia的链接

ln -s /app/GangliaInstall/ganglia-3.6.0/ /app/ganglia

修改组属

chown -R hadoop:hadoop /app/GangliaInstall/ /app/ganglia /app/ganglia-config

可将/app/ganglia/sbin/gmond拷贝到/usr/bin,便于使用

可用gmond -d 5 进行运行测试

启动gmond:gmond

在启动了gmond之后,发现并没有rrd文件生成,之后使用gmond -d 5进行测试,测试过程中可能会出现以下错误:Error creating multicast server mcast_join=239.2.11.71 port=8649 mcast_if=NULL family='inet4'. Will try again...,系统不支持多播,需要将多播ip地址加入路由表,使用route add -host 239.2.11.71 dev eth0命令即可,将该命令加入/etc/rc.d/rc.local文件中,一劳永逸

4.3 Ganglia Web 安装

从官网下载Ganglia-web包,解压

tar -zxvf ganglia-web-3.5.11.tar.gz
mkdir /app/apache/htdocs/ganglia
cp -r ganglia-web-3.5.11/* /app/apache/htdocs/ganglia/

修改配置conf.php

cp conf-default.php conf.php
vi conf.php
$conf['gweb_confdir'] = "/app/apache/htdocs/ganglia";
$conf['gmetad_root'] = "/app/ganglia";
$conf['rrdtool'] = "/usr/bin/rrdtool";
$conf['case_sensitive_hostnames'] = false; // 如果主机名中有大写字符,一定要将其选项设置为false,否则在页面中会显示No match metrics delected or rrds not readable,因为ganglia在保存rrd文件时,主机名的目录都是小写的

重启apache

apachetcl -k restart

在浏览器中输入 http://192.168.1.101:18001/ganglia进行查看

五、hadoop集群配置

修改配置文件/app/hadoop-config/hadoop-metrics2.properties

*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
namenode.sink.ganglia.servers=ip:8649
datanode.sink.ganglia.servers=ip:8649
jobtracker.sink.ganglia.servers=ip:8649
tasktracker.sink.ganglia.servers=ip:8649
maptask.sink.ganglia.servers=ip:8649
reducetask.sink.ganglia.servers=ip:8649

重启hadoop

Ganglia安装的更多相关文章

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

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

  2. 大数据之Ganglia安装1

    0.前期准备修改主机名.ip.iptables关闭:时间同步:ntpdate -s time.windows.com;软件准备ganglia-3.7.1.tar.gz.ganglia-web-3.7. ...

  3. 【Tech】Ganglia安装配置

    基础配置: Hadoop 2.2.0,Hbase 0.96. 四台集群机器,一台master,三台slave. 三台slave上分别装gmond:namenode机器上设置datasource. 客户 ...

  4. 高可用Hadoop平台-Ganglia安装部署

    1.概述 最近,有朋友私密我,Hadoop有什么好的监控工具,其实,Hadoop的监控工具还是蛮多的.今天给大家分享一个老牌监控工具Ganglia,这个在企业用的也算是比较多的,Hadoop对它的兼容 ...

  5. Ganglia安装及配置

    Ganglia安装及配置root用户下yum安装所依赖的环境(实际生产环境都已安装)yum -y install apr-develapr-util check-devel cairo-devel p ...

  6. Ganglia安装搭建

    Ganglia的安装部署 前言 1 一.Ganglia组件 1 二.安装依赖 2 三.安装expat依赖 2 四.安装confuse 3 五.安装ganglia 4 六. 服务端配置(gmetad 节 ...

  7. ganglia安装简记

    首先需要安装EPEL的源. yum install -y ganglia.x86_64 ganglia-gmetad.x86_64 ganglia-web.x86_64 ganglia-gmond.x ...

  8. Ganglia安装扩容

    现有的环境中Hbase集群的机器需要安装ganglia,遂采取了以下步骤. 查看机器的信息, uname –a cat /etc/issue 查看当前环境是x86的,安装的是red hat 6.4 之 ...

  9. ganglia安装-yum

    centos6.6 x64 root用户 单机一台,集群中需要监控的安装客户端就可以了 Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点.Ganglia的核 ...

随机推荐

  1. 项目中遇到的bug、问题总结

    1. Cannot set property 'captcha' of undefined 在node项目中使用svg-captcha生成验证码报错 captcha的代码,这里有一个session.c ...

  2. 3-----Docker实例-安装MySQL

    Docker 安装 MySQL 方法一.docker pull mysql 查找Docker Hub上的mysql镜像 runoob@runoob:/mysql$ docker search mysq ...

  3. jumserver 官方文档和

      一步一步安装(CentOS) 本文档旨在帮助用户了解各组件之间的关系, 生产环境部署建议参考 进阶安装文档 安装过程中遇到问题可参考 安装过程中常见的问题 测试推荐环境 CPU: 64位双核处理器 ...

  4. oracle 中的exists 和 in 效率问题

    oracle中的 exists 和 in 的效率问题 --------------------------------------------------------------- +++++++++ ...

  5. 如何在react&webpack中引入图片?

    在react&webpack项目中需要引入图片,但是webpack使用的模块化的思想,如果不进行任何配置,而直接在jsx或者是css中使用相对路径来使用就会出现问题,在webpack中提供了u ...

  6. C++中函数调用时的三种参数传递方式

    在C++中,参数传递的方式是“实虚结合”. 按值传递(pass by value) 地址传递(pass by pointer) 引用传递(pass by reference) 按值传递的过程为:首先计 ...

  7. 在Xcode中手动添加pch文件

    在Xcode中手动添加pch文件: 一: 在工程中新建.pch文件,pch文件名通常用工程名字命名: 二: 在Targets->build Settings->Prefix Header ...

  8. jmeter(6)——集合点与检查点

    集合点 1.概念 集合点:我们所说的并发不会是真正的并发, 集合点可以理解成,所有的用户在进行某一操作时在同一时间点一起执行,比如:抢票或者促销抢购,集合点可以帮助我们使并发更加有效可控 2.位置 位 ...

  9. HDU 5691 ——Sitting in Line——————【状压动规】

    Sitting in Line Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Other ...

  10. angular 与 layer 集成过程

    layer 的提示框和弹层确实也好用,在使用angular的前提下,使用layer遇到诸多麻烦,记录下来. 在类型是1页面层,主要问题在遮罩方面,造成无法编辑. 开始:引入layer 样式,angul ...