- 前言
- 为什么要写这本书
- 读者对象
- 如何阅读本书
- 勘误和支持
- 致谢
- 第一部分 安全运维篇
- 第 1 章 Linux 服务器安全运维
- 第 2 章 Linux 网络安全运维
- 第 3 章 数据安全工具 DRBD、extundelete
- 第二部分 运维故障排查篇
- 第 4 章 Linux 系统运维故障排查思路
- 第 5 章 Linux 故障排查案例实战
- 第三部分 自动化运维篇
- 第 6 章 轻量级运维利器 pssh、pdsh 和 mussh
- 第 7 章 分布式监控系统 Ganglia
- 第 8 章 基于 nagios 的分布式监控报警平台 Centreon
- 第 9 章 通过 Ganglia 与 Centreon 构建智能化监控报警平台
- 第四部分 集群架构篇
- 第 10 章 高性能 Web 服务器 Nginx
- 第 11 章 高性能集群软件 Keepalived
- 第 12 章 千万级高并发负载均衡软件 HAProxy
- 第 13 章 构建高性能的 MySQL 集群系统
- 第 14 章 高性能负载均衡集群软件 HAProxy
7.4 Ganglia 的安装
在介绍 Ganglia 的安装之前,首先说明一下安装环境,这里采用 CentOS 5.8 x86_64 的 Linux 发行版本,其他版本的安装过程基本相同。
Ganglia 的安装很简单,可以通过源码和 yum 源两种方式进行安装。yum 源方式安装方便,可以自动安装依赖关系,但是版本往往不是最新的,而通过源码方式,可以安装最新版的 Ganglia。下面具体介绍一下这两种安装方式。
7.4.1 yum 源安装方式
CentOS 系统中默认的 yum 源并没有包含 Ganglia,所以我们必须安装扩展的 yum 源。从下面这个地址下载 Linux 附加软件包(EPEL),然后安装扩展 yum 源:
[root@node1 ~]# wget http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm [root@node1 ~]# rpm -ivh epel-release-5-4.noarch.rpm
完成 yum 源安装,就可以直接通过 yum 源方式安装 Ganglia 了。
Ganglia 的安装分为两个部分,分别是 gmetad 和 gmond,gmetad 安装在监控管理端主机,gmond 安装在需要监控的客户端主机,对应的 yum 包名称分别为 ganglia-gmetad 和 ganglia-gmond。
下面介绍通过 yum 源方式安装 Ganglia 的过程。
以下操作是在监控管理端主机上进行的,首先通过 yum 命令查看下可用的 Ganglia 安装信息:
[root@monitor ~]# yum list ganglia* Available Packages ganglia.i386 3.0.7-1.el5 epel ganglia.x86_64 3.0.7-1.el5 epel ganglia-devel.i386 3.0.7-1.el5 epel ganglia-devel.x86_64 3.0.7-1.el5 epel ganglia-gmetad.x86_64 3.0.7-1.el5 epel ganglia-gmond.x86_64 3.0.7-1.el5 epel ganglia-web.x86_64 3.0.7-1.el5 epel
从输出可知,通过 yum 安装的 Ganglia 版本为 ganglia-3.0.7-1,这个版本并不是最新版本。接着开始安装 ganglia-gmetad:
[root@monitor ~]# yum -y install ganglia-gmetad.x86_64
安装 gmetad 需要 rrdtool 的支持,而通过 yum 源方式安装,会自动查找 gmetad 依赖的安装包,自动完成安装,这也是 yum 源方式安装的优势。
最后在需要监控的所有客户端主机上安装 gmond 服务:
[root@node1 ~]# yum -y install ganglia-gmond.x86_64
这样,Ganglia 监控系统就安装完成了。通过 yum 源方式安装的 Ganglia 默认配置文件位于/etc/ganglia 中。
7.4.2 源码方式
通过源码方式安装 Ganglia 有一定的复杂性,但是可以使用最新的版本,这也是我们推荐的安装方式。源码方式安装 Ganglia 也分为监控管理端的安装和客户端的安装,这里我们安装的是 Ganglia 最新稳定版本 ganglia-3.4.0,安装的路径是/opt/app/ganglia。首先在监控管理端通过 yum 命令安装 Ganglia 的基础依赖包,操作如下:
[root@monitor ~]# yum install -y expat expat-devel pcre pcre-devel zlib cairo-devel libxml2-devel devel libxml2-develpango-devel pango libpng-devel libpng freetype freetype-devel libart_lgpl-devel apr-devel
接着安装 apr、confuse、rrdtool,操作过程如下:
[root@monitor ~]# tar zxvf apr-1.4.6.tar.gz [root@monitor ~]# cd apr-1.4.6 [root@monitor apr-1.4.6]# ./configure [root@monitor apr-1.4.6]# make [root@monitor apr-1.4.6]# make install [root@monitor ~]# tar zxvf confuse-2.7.tar.gz [root@monitor ~]# cd confuse-2.7 [root@monitor confuse-2.7]# ./configure CFLAGS=-fPIC --disable-nls [root@monitor confuse-2.7]# make [root@monitor confuse-2.7]# make install [root@monitor ~]# tar zxvf rrdtool-1.4.7.tar.gz [root@monitor ~]# cd rrdtool-1.4.7 [root@monitor rrdtool-1.4.7]# ./configure --disable-tcl --prefix=/opt/rrdtool [root@monitor rrdtool-1.4.7]# make [root@monitor rrdtool-1.4.7]# make install
最后安装 ganglia-gmetad,过程如下:
[root@monitor ~]# tar zxvf ganglia-3.4.0.tar.gz [root@monitor ~]# cd ganglia-3.4.0 [root@monitor ganglia-3.4.0]# ./configure --prefix=/opt/app/ganglia \ >--with-static-modules --enable-gexec --enable-status --with-gmetad --with-python=/usr\ >--with-librrd=/opt/rrdtool --with-libexpat=/usr --with-libconfuse=/usr/local \ >--with-libpcre=/usr/local [root@monitor ganglia-3.4.0]# make;make install [root@monitor ganglia-3.4.0]# cd gmetad [root@monitorgmetad]# cp gmetad.conf /opt/app/ganglia/etc/# 复制 gmetad 服务配置文件 [root@monitorgmetad]# cp gmetad.init /etc/init.d/gmetad # 复制 gmetad 服务启动脚本 # 到/etc/init.d 目录 [root@monitorgmetad]# sed -i \ >"s/^GMETAD=\/usr\/sbin\/gmetad/GMETAD=\/opt\/app\/ganglia\/sbin\/gmetad/g" \ >/etc/init.d/gmetad # 修改/etc/init.d/gmetad 文件中 gmetad 命令的默认路径 [root@monitorgmetad]# chkconfig --add gmetad [root@monitorgmetad]# ip route add 239.2.11.71 dev eth0
需要说明的一点是:239.2.11.71 这个地址是 Ganglia 默认的多播地址,将这个多播地址绑定到相应的网卡设备(这里是 eth0,可根据不同的环境进行修改)上即可。设置了多播地址后,Ganglia 管理端就可以发送和接收多播信息。
至此,ganglia-gmetad 安装完成。
下面介绍 Ganglia 客户端的安装过程,ganglig-gmond 的安装与 ganglia-gmetad 大致相同,对于系统依赖包和基础软件包的安装完全相同,只是 ganglig-gmond 不需要 rrdtool 的支持,因此重点讲述 ganglig-gmond 的编译安装过程。
[root@node1 ~]# tar zxvf ganglia-3.4.0.tar.gz [root@node1 ~]# cd ganglia-3.4.0 [root@node1 ganglia-3.4.0]# ./configure --prefix=/opt/app/ganglia --enable-gexec\ >--enable-status --with-python=/usr --with-libapr=/usr/local/apr/bin/apr-1-config \ >--with-libconfuse=/usr/local --with-libexpat=/usr --with-libpcre=/usr [root@node1 ganglia-3.4.0]# make [root@node1 ganglia-3.4.0]# make install [root@node1 gmond]# cd gmond [root@node1 gmond]# ./gmond -t > /opt/app/ganglia/etc/gmond.conf # 用于生成 gmond 服务配置文件 [root@node1 gmond]# cp gmond.init /etc/init.d/gmond # 复制 gmond 服务启动脚本到/etc/init.d 目录 [root@node1 gmond]# sed-i \ >"s/^GMOND=\/usr\/sbin\/gmond/GMOND=\/opt\/app\/ganglia\/sbin\/gmond/g" \ >/etc/init.d/gmond # 修改/etc/init.d/gmond 文件中 gmond 命令的默认路径 [root@node1 gmond]# chkconfig --add gmond [root@node1 gmond]# ip route add 239.2.11.71 dev eth0
与 ganglia-gmetad 的安装相同,在 ganglig-gmond 中也需要把 239.2.11.71 这个广播地址绑定到系统对应网卡上。
到这里为止,ganglig-gmond 安装完成。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论