安装ganglia

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装ganglia相关的知识,希望对你有一定的参考价值。

安装ganglia

1.默认已经配置好相关的主机名和Ip地址映射关系
2.默认已经安装好ssh密码登陆
3.默认已经配置好yum源和相关网络配置(如hosts 可在墙外)
4.服务器端安装(除了yum安装以外 其他操作均需以hadoop或者普通用户权限操作)
    1.安装相关依赖包
      yum -y install zlib libpng jpeg freetype2 libxml2 gdphp-mbstring
                     perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker pcre* expat*
                     apr-devel apr-util check-devel cairo-devel pango-devel libxml2-devel 
                     rpmbuild glib2-devel dbus-devel freetype-devel fontconfig-devel 
                     gcc-c++ expat-devel python-devel libXrender-devel
    2.安装rrdtool-1.5.5(/opt/rrdtool-1.5.5)
        tar zxvf rrdtool-1.5.5.tar.gz
        cd rrdtool-1.5.5
        ./configure CFLAGS=-fPIC --disable-nls  //编译
        make && make install //安装
        echo /usr/local/lib > /etc/ld.so.conf.d/libconfuse.conf  //调整lib库的位置
        ldconfig -v   //刷新
        /opt/rrdtool-1.5.5/bin/rrdtool  //验证  不报错  则成功
        
        //删除压缩包
    3.安装confuse-2.7(/opt/confuse-2.7)
        ./configure CFLAGS=-fPIC –-disable-nls
        make
        make install
        
        //删除压缩包
    4.安装apache (/opt/apache)
        tar zxvf httpd-2.2.23.tar.gz
        cd httpd-2.2.23
        cd srclib/apr
        ./configure  --prefix=/usr/local/apr  //编译 apr   输出目录是/usr/local/apr
        make && make install         //安装
        
        
        cd ../apr-util
        ./configure –-prefix=/usr/local/apr-util   //编译apr-util 输出目录是/usr/local/apr-util 
                    –-with-apr=/usr/local/apr      //引用上一步apr编译的输出目录
        make && make install         //安装
        
        cd /opt/httpd-2.2.23
        ./configure --prefix=/opt/apache     //编译apache  输出目录是 /opt/apache
                    --with-arp=/usr/local/apr     //引用  不一定要这样 但必须跟上面一致
                    --with-apr-util=/usr/local/apr-util  //引用  不一定要这样 但必须跟上面一致
        
        make && make install         //安装
        
        http://hadoop.master:80  //验证  可访问表示安装成功  可修改conf/httpd.conf 的端口参数 默认是80
        
        //最后可将解压的目录和压缩包删除掉
    5.安装php(/opt/php)
        tar zxvf php-5.4.10.tar.gz
        cd php-5.4.10
        ./configure --prefix=/opt/php     //编译php 输出目录/opt/php
                    --with-apxs2=/opt/apache/bin/apxs  //引用  不一定要这样 但必须跟上面apache一致
                    --with-mysql=mysqlnd
        make && make test && make install //安装
        
        //安装完成后在 apache的安装目录 /opt/apache/htdocs 下创建 index.php文件 内容如下:
        <?
            phpinfo();
        ?>
        //此时访问http://hadoop.master:80  可以显示一些服务器的相关信息
        
        //如果还不能显示则操作一下步骤:
            1.找到libphp5.so 并将其拷贝到/opt/apache/modules目录中
                find / -name "libphp5.so"
                cp 所在目录/libphp5.so /opt/apache/modules
            2.打开/opt/apache/conf/httpd.conf 添加如下内容:
                <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>
                LoadModule php5_module modules/libphp5.so
                <ifModule dir_module>
                DirectoryIndex index.html index.php
                </ifModule>
            3.重启apache
                /opt/apache/bin/apachectl  restart
        
        //最后可将解压的目录和压缩包删除掉
    6.安装ganglia服务器(/opt/ganglia)
        tar zxvf ganglia-3.7.2.tar.gz
        cd ganglia-3.7.2
        ./configure --prefix=/opt/ganglia     //编译ganglia  输出目录/opt/ganglia 
                    --with-gmetad      //服务端编译
                    --enable-gexec 
                    --with-python=/usr/local 
                    –with-librrd=/usr/bin  //rrdtool所在目录 一般不用修改  如果该目录下没有rrdtool 则修改成有rrdtool的目录
        make && make install
        
        cp /opt/ganglia/lib64/libganglia* /lib64  //将相关的库类拷贝到/lib64 目录下
        
        mkdir -p /var/lib/ganglia/rrds  //为rrdtool创建数据存放目录
        chown -R hadoop:hadoop /var/lib/ganglia/rrds  //修改目录所有者
        
        //修改/opt/ganglia/etc/gmetad.conf 目录下的配置文件
        data_source "hadoop cluster" 192.168.22.241  //其中hadoop cluster 随意起  192.168.22.241为主服务器Ip
        gridname "hadoop"   //名字随意起
        setuid_username "hadoop"   //跟系统用户名需一致
        xml_port 8651
        interactive_port 8652
        rd_rootdir "/var/lib/ganglia/rrds"  //指向刚才创建的rrds目录
        case_sensitive_hostnames 0
        
        //常用命令
            /opt/ganglia/sbin/gmetad {start,stop,restart}  //启动,停止,重启
            /opt/ganglia/sbin/gmetad -d 2  //调试模式
            ps -aux|grep gmetad  //查看是否启动成功
        
    7.安装ganglia-web(/opt/apache/htdocs/ganglia)
        tar zxvf ganglia-web-3.7.1.tar.gz
        mv ganglia-web-3.7.1/ /opt/apache/htdocs   //将解压的目录全部拷贝到apache的目录下
        cd /opt/apache/htdocs
        mv ganglia-web-3.7.1 ganglia  //更改目录名
        mkdir -p /opt/apache/htdocs/ganglia/dwoo/cache
        chmod  777  /opt/apache/htdocs/ganglia/dwoo/cache
        mkdir -p /opt/apache/htdocs/ganglia/dwoo/compiled  //如果不创建这两个目录会报错
        chmod  777  /opt/apache/htdocs/ganglia/dwoo/compiled
        vim /opt/apache/htdocs/ganglia/Makefile
        GDESTDIR = /opt/apache/htdocs/ganglia   //指向ganglia-web的安装目录
        APACHE_USER = daemon
        
        ccp conf_default.php conf.php  //安装目录下 复制参数文件
        vim conf.php
        修改内容如下:
        $conf[‘gweb_confdir‘] = "/opt/apache/htdocs/ganglia";  //ganglia-web安装目录
        $conf[‘gmetad_root‘] = "/var/lib/ganglia";
        $conf[‘rrds‘] = "${conf[‘gmetad_root‘]}/rrds";   //rrds的目录
        $conf[‘rrdtool‘] = "/usr/bin/rrdtool";    //指向有rrdtool的目录
        $conf[‘external_location‘] = "http://hadoop.master:10000/ganglia";   //服务器主机名:10000/ganglia  端口号和ganglia别改
        $conf[‘case_sensitive_hostnames‘] = false;
        
        //最后可将解压的目录和压缩包删除掉
    8.安装ganglia客户端(服务器也需要安装)
        cd ganglia-3.7.2   //注意是解压目录  不是安装目录
        ./gmond –t > /opt/ganglia/etc/gmond.conf  //生成配置文件
        
        //修改gmond.conf
        globals {
          daemonize = yes
          setuid = yes
          user = hadoop     //系统用户名
          ....
          }
        
        cluster {
          name = "hadoop cluster"   //需要跟服务器中设置的名字一致  服务器配置文件中 data_source
          owner = "hadoop"          //需要跟服务器中设置的名字一致  服务器配置文件中 gridname
          latlong = "unspecified"
          url = "unspecified"
        }
        
        tcp_accept_channel {
          port = 8649
          # If you want to gzip XML output
          gzip_output = no
          acl{
            default = "deny"
            access{
                ip = 192.168.22.241   //服务器IP
                mask = 32
                action = "allow"
           }
          }
        }
        
        /opt/ganglia/sbin/gmond {start,stop,restart}  //启动,停止,重启
        /opt/ganglia/sbin/gmond -d 2  //调试模式    
        ps -aux|grep gmond  //查看是否启动成功
        
        
    9.共享库配置信息
        在/etc/ld.so.conf文件中添加/usr/local/lib
        然后保存退出
        执行ldconfig 更新操作
        
        
5.集群客户端安装        
    1.安装apr-1.3.9-5.el6_2.x86_64.rpm(注意安装后删除源码包)
        rpm -ivh apr-1.3.9-5.el6_2.x86_64.rpm
    2.安装apr-devel-1.3.9-5.el6_2.x86_64.rpm(注意安装后删除源码包)
        rpm -ivh apr-devel-1.3.9-5.el6_2.x86_64.rpm
    3.将服务器端的ganglia最终安装目录拷贝过来
        scp /opt/ganglia [email protected]:/opt
    4.将相关的库类拷贝到/lib64 目录下
        cp /opt/ganglia/lib64/libganglia* /lib64
    5.启动
        /opt/ganglia/sbin/gmond start

6.配置过程中可能出现的错误
    1.安装rrdtool过程中提示pkg-config错误
        解决办法:一般是库没有装全,记得要安装dev库(尽可能使用yum安装  因为存在着依赖库的可能性)
    2.安装ganglia过程中找不到confuse,expat,apr等库
        解决办法:如果是64位机,ganglia会在依赖库的lib64目录下去查找文件,所以需要将lib目录下文件拷贝到lib64目录下,建议创建软连接
    3.gmetad启动失败:gmetad dead but subsys locked
        解决办法:gmetad.conf中setuid_username的用户名需要跟rrds数据目录的owner一致
    4.访问网页保错Forbidden,You don’t have permission to access /ganglia/ on this server
        解决办法:  1.关闭SELinux  2.修改apache httpd.conf里面的访问权限参数
    
    
    
    
    
    
    
    
    

 

以上是关于安装ganglia的主要内容,如果未能解决你的问题,请参考以下文章

Ganglia安装扩容

Ganglia安装篇

开源监控软件ganglia安装手册

Ganglia安装

Ganglia安装及配置

Ganglia监控安装配置