一、前言
centreon是开源的IT监控软件,由法国人于2003年开发,最初名为Oreon,并于2005年正式更名为centreon。
centreon作为nagios的分布式监控管理平台,其功能之强大,打造了centreon在IT监控方面强势地位,它的底层使用nagios监控软件,nagios通过ndoutil模块将监控数据写入数据库,centreon读取该数据并即时的展现监控信息,通过centreon可以简单地管理和配置所有nagios,因此,完全可以使用centreon轻易的搭建企业级分布式IT基础运维监控系统。
在功能方面,将它与nagios+cacti方式对比,说一下优点:
(1)、gui方式添加host,支持hosttemplate与servicestemplate,自动建立关联服务,与nagios+cacti相比配置方便简单。
(2)、支持graphtemplate,添加servcie时自动添加graph,不必象nagios+cacti监控与流量图设置2步走。
(3)、host监控可以全部采用nrpe方式,不必象nagios+cacti生成流量图必须使用snmp。
(4)、支持多节点分布式监控,nagios+cacti的分布式监控现在想起来都头痛。
(5)、支持acl权限管理方式,对用户权限限制到菜单项,nagios+cacti一个帐号大家用过时啦。
(6)、详细的日志管理功能,日志搜索过滤都支持7、功能模块化管理,想要新功能官方没有怎么办,自己写去。
Centreon是一个管理和控制Nagios的工具,并且在Nagios的基础上增加了画图的功能,并且能自动的将Nagios的监控生成图像,不需要人为手动控制。以下是Nagios与Centreon整合后的展示图:
二、安装centreon所需环境
安装apache、GD库、mysql、php、php扩展、DBI、PERL、RRDtool、SNMP、fping、pear 等开发库
安装apache
#yum install httpd
安装GD库
# yum install gd gd-devel fontconfig-devel libjpeg-devel libpng-devel
安装mysql
# yum install openssl-devel perl-DBD-MySQL mysql-server mysql-devel
安装PHP
#yum install php php-mysql php-gd
安装PHP扩展
# yum install php-ldap php-xml php-mbstring
安装perl模块
# yum install perl-DBI perl-DBD-MySQL perl-Config-IniFiles perl-GD
# yum install perl-Crypt-DES perl-Digest-SHA1 perl-Digest-HMAC
# yum install perl-Socket6 perl-IO-Socket-INET6 perl-CPAN安装net-snmp
# yum install net-snmp-utils net-snmp net-snmp-libs php-snmp
# yum install dmidecode lm_sensors perl-Net-SNMP net-snmp-perl
安装fping和一些开发库
# yum install fping cpp gcc gcc-c++ libstdc++ glib2-devel
使用cpan安装Net::SNMP Crypt::DES Config::IniFiles
perl -MCPAN -e shell
安装pear
# yum install php-pear php-pear-DB
# pear channel-update pecl.php.net
# pear upgrade-all
三、安装Nagios
1 版本要求
1. Nagios版本:nagios-3.5.0
说明: nagios-3.5.0为nagios主要框架系统,安装完后无法进行正常监控
2. 插件版本: nagios-plugins-1.4.16
说明: nagios-plugins中的各类插件是完成各种监控的工具
2 安装步骤:
# useradd nagios
# usermod -G nagios apache
# tar -zxvf nagios-3.5.0.tar.gz
# cd nagios
# ./configure --prefix=/usr/local/nagios --enable-event-broker
# make all
# make install
# make install-init
# make install-commandmode
# make install-config
# make install-webconf
# tar -zxvf nagios-plugins-1.4.16.tar.gz
# cd nagios-plugins-1.4.16
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make all
# make install
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin // 建立用户设置密码
# service httpd restart
# service nagios start
可以通过http://Your_IP/nagios来访问nagios,即nagios的安装部分己经完成,此处只需确定nagios己被正确安装和监控即可,接下来需要安装ndoutils用来与mysql进行连接
至此,nagios己经可以正常工作,可以通过修改配置来达到监控的作用,但这里我们不建议这样使用,下面我们会继续安装一些工作以及和Centreon进行整合,这样会更好的理解和使用nagios的各项功能
四、安装ndoutils
1 版本要求
Ndoutils版本: ndoutils-1.5.2
说明: ndoutils是与将nagios与数据进行连接的工具,可以结合将nagios的即时状态写入数据库,再供其它工具现调用,以完成多种界面可以看到同一种结果的效果.
2 安装步骤
tar -zxvf ndoutils-1.5.2.tar.gz
# cd ndoutils-1.5.2
# ./configure --prefix=/usr/local/nagios LDFLAGS=-L/usr/lib64 --with-mysql-lib=/usr/lib64/mysql
--enable-mysql --with-ndo2db-user=nagios --with-ndo2db-group=nagios
# make
# make install 或者# cp -v src/{ndomod-3x.o,ndo2db-3x,file2sock,log2ndo} /usr/local/nagios/bin
# cp -v config/{ndo2db.cfg,ndomod.cfg} /usr/local/nagios/etc
# chown nagios.nagios /usr/local/nagios/bin/* /usr/local/nagios/etc/ndo*
# vi /usr/local/nagios/etc/ndo2db.cfg //这里需要填写相关nagios数据库的权限
(可以给root的用户名和密码,如果不想则需要在mysql里创建自己的用户)
# cd db/
# mysql -u root -p123456 nagios < mysql.sql //此处需要先建立好nagios库
# vi /usr/local/nagios/etc/nagios.cfg // 加入以下broker段内容
event_broker_options=-1 #此处必须选择为-1
broker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg //开启ndo
# service nagios restart //重启nagios服务,在nagios日志项内看到以下消息则安装正确
3 注:这里可能会出现几个问题:
1) 在nagios的log内提示: ndomod: Could not open data sink! I’ll keep trying, but some output may get lost…
如下图:
需要说明的是,这种现像是与在编绎ndoutils指定的lib和inc的路径有关,所以需要按照情况2)中所指出的方法重新安装,也有可能是ndoutils的进程没开起来,用ps –ef | grep ndo可以查看,若无进程,用以下方法开启就可以.
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg //开启ndo
2) 在开启时提示: Support for the specified database server is either not yet supported, or was not found on your system.
这是因为在安装的时候没有指定正确mysql的lib 和inc的路径,需要重新安装ndoutils,有两种情况:
如果是rpm安装的mysql则用以下命令编绎:
# ./configure –prefix=/usr/local/nagios –with-mysql-lib=/usr/lib64/mysql –with-mysql-inc=/usr/include/mysql
如果是源码安装则:
# ./configure –prefix=/usr/local/nagios –with-mysql-lib=/usr/local/mysql/lib/mysql –with-mysql-inc=/usr/local/mysql/include/
3) 可能会在开启多次后出现:Could not bind socket: Address already in use
查看/usr/local/nagios/etc/ndo2db.cfg
有这样的内容
# SOCKET TYPE
# This option determines what type of socket the daemon will create
# an accept connections from.
# Value:
# unix = Unix domain socket (default)
# tcp = TCP socket
socket_type=unix
#socket_type=tcp
socket是unix类型的(是一个sock文件),而不是tcp类型的(tcp端口)
*原来是/usr/local/nagios/var/ndo.sock还存在(因为ndo是使用kill命令杀掉进程的),所以删掉这个.sock文件即可
五、安装RRDTOOL
1 版本要求
Rrdtool版本: rrdtool-1.4.7
说明:rrdtool是一个画图软件,安装这个软件主要是为了后面安装centreon时可以以图的形式展现出所监控到的内容,是个很好用的工具
2 安装步骤:
tar zxvf rrdtool-1.4.5.tar.gz
cd rrdtool-1.4.5
./configure --prefix=/usr/local/rrdtool
make
make install
Rrdtool的安装过程很简单,至此己安装完成
六、 安装CENTREON
1 版本要求:
Centreon版本:centreon-2.4.4
说明:centreon是nagios的图形工具,并能简化nagios的配置工作.
2 安装步骤:
# tar -zxvf centreon-2.4.4.tar.gz
# cd centreon-2.4.4
# ./install.sh –i
以下步骤比较多,建议多运行几次,熟悉一下
★签署GPL,必须y,不然不让装,选择你需要装centreon的各组件,全新的安装全y即可
★配置centreon的web访问信息
★指定RRDs.pm,rrdtool,PEAR.php位置
★配置PEAR Modules
★配置Start CentStorage Installation
★配置 Start CentCore Installation
★配置Start CentPlugins Installation