nagios与cacti整合的步骤

Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设备,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。


功能介绍
编辑
Nagios 可以监控的功能有:
1、监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);
2、监控主机资源(处理器负荷、磁盘利用率等);
3、简单地插件设计使得用户可以方便地扩展自己服务的检测方法;
4、并行服务检查机制;
5、具备定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;
6、当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式);
7、可以定义一些处理程序,使之能够在服务或者主机发生故障时起到预防作用;
8、自动的日志滚动功能;
9、可以支持并实现对主机的冗余监控;
10、可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等; [1]
11、可以通过手机查看系统监控信息;
12、可指定自定义的事件处理控制器;



    cacti 编辑

Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。

介绍
编辑
Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好。软件 Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量跟系统资讯监控外,Cacti 也可外挂 Scripts 及加上 Templates 来作出各式各样的监控图。
cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmp和rrdtool是cacti的关键。Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。
Mysql配合PHP程序存储一些变量数据并对变量数据进行调用,如:主机名、主机ip、snmp团体名、端口号、模板信息等变量。
snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下)。rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的档案文件(Round Robin Archive),它能够存储的数据笔数在创建时就已经定义。关于RRDTool的知识请参阅RRDTool教学。




数据加密工具libmcrypt、mhash、mcrypt
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make &&make install
tar zxvf mhash-0.9.9.9.tar.gz
./configure
make &&make install
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
tar zxvf mcrypt-2.6.8.tar.gz
./configure
make &&make install

需要事先先把rpm安装的HTTP、MySQL、PHP都给卸载:
如:rpm -e httpd --nodeps
执行LAMP脚本,安装LAMP平台。

注意:由于脚本里没有给MySQL创建硬链接,所以需要手动创建:
cd /usr/local/mysql/bin/
ln -s /usr/local/mysql/bin/* /usr//local/bin/
ln -s /usr/local/mysql/lib/mysql/* /usr/lib/
ln -s /usr/local/mysql/include/mysql/* /usr/include/
并创建MySQL数据库root用户和密码与PHP网页的一致,如:123456

测试PHP、MYSQL连接
[root@www ~]# vim /usr/local/apache2/htdocs/index.php
<?php
$link=mysql_connect('localhost','root','123456');
if($link) echo "Mysql connect is OK !!";
mysql_close();
phpinfo( );
?>

安装rrdtool
rpm -ivh rrdtool-1.2.23-1.el5.rf.i386.rpm rrdtool-devel-1.2.23-1.el5.rf.i386.rpm perl-rrdtool-1.2.23-1.el5.rf.i386.rpm

安装SNMP
yum install net-snmp net-snmp-libs  net-snmp-utils  net-snmp-devel  -y
配置SNMP
vim /etc/snmp/snmpd.conf  配置内容略(大概是41行,65行,85行要修改一下)!
chkconfig snmpd on
service snmpd restart
service snmptrapd  start                       #启动snmptrapd服务
chkconfig snmptrapd on                    #使其开机自动启动
netstat  -unlp   查看端口UDP 161 162

配置MYSQL
登录mysql,创建cacti的数据库,并为其指定cactier用户和密码(123456)。数据库名字可根据需要指定,这里指定为cactidb,创建并授权:
mysql -uroot -p
mysql> create database cactidb;
mysql> GRANT all privileges ON cactidb.* TO cactier@localhost IDENTIFIED BY '123456';
mysql> GRANT all privileges ON cactidb.* TO cactier@127.0.0.1 IDENTIFIED BY '123456';
mysql> GRANT all privileges ON cactidb.* TO cactier@192.168.20.0 IDENTIFIED BY '123456';
这里指定了一个网段的授权,是将来做监控时数据库和监控工具不在同一台主机上,网段可根据自己需要进行授权。
mysql> flush privileges;

                    
安装cacti
tar zxvf cacti-0.8.7g.tar.gz
mv cacti-0.8.7g  /usr/local/apache2/htdocs/cacti
cd /usr/local/apache2/htdocs/cacti/
mysql -uroot -p123456 cactidb <cacti.sql
vim /usr/local/apache2/htdocs/cacti/include/config.php
将下列各参数的值修改为您前面所设定的:
$database_type = "mysql";
$database_default = "cactidb";
$database_hostname = "localhost";
$database_username = "cactier";
$database_password = "123456";
$database_port = "3306";


添加账号和密码
 useradd cactier
 passwd cactier
 
cd /usr/local/apache2/htdocs/cacti
chown -R cactier rra/    log/
制作计划任务
vim /etc/crontab
*/5 * * * * cactier php /usr/local/apache2/htdocs/cacti/poller.php  > /dev/null &
service crond restart

如果采集数据命令执行没有反应可以在php前加上执行路径,如:
/usr/local/php5/bin/php /usr/local/apache2/htdocs/cacti/poller.php

从浏览器直接访问以下地址 即可看到cacti配置画面
http://IP/cacti/install/  


########################################################################
如果是编译安装LAMP平台,在安装PHP时记得开启PDO-Mysql模块:配置命令如下:
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --enable-sockets --enable-mbstring --enable-pdo --with-pdo-mysql=/usr/local/mysql/bin/mysql_config --with-gd --with-zlib-dir=/usr/include/zlib.h --enable-force-cgi-redirect --with-config-file-path=/usr/local/php5/etc

cp php.ini-recommended   /usr/local/php5/etc/php.ini
########################################################################

CACTI插件安装:
安装net-snmp
rpm -qa |grep snmp
# yum -y install net-snmp net-snmp-utils net-snmp-libs
cacti-plugins插件安装
tar zxvf cacti-plugin-0.8.7g-PA-v2.8.tar.gz  
cd cacti-plugin-arch/
cp cacti-plugin-0.8.7g-PA-v2.8.diff    pa.sql   /usr/local/apache2/htdocs/cacti/
cd /usr/local/apache2/htdocs/cacti/
patch -p1 -N < cacti-plugin-0.8.7g-PA-v2.8.diff
mysql -uroot -p cactidb<pa.sql

vi include/config.php 修改一下参数保存退出
$config['url_path'] = '/cacti/';

配置好SNMP并验证
snmpwalk -v 2c -c public localhost system
 

 
Nagios 的安装
1. 安装基础支持套件和添加用户
nagios 需要一些基础支持套件才能运行,如apache,gcc,glibc,gd 库等。在此我们使用LAMP环境
#/usr/sbin/useradd  nagios 添加一个名为nagios 的用户用以专门跑nagios
#passwd nagios 设置密码
#/usr/sbin/usermod -G nagios daemon 将apache 用户加入nagios 组

下载软件:
wget http://nchc.dl.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz
wget http://nchc.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz

2. 安装nagios;
tar zxvf nagios-3.4.3.tar.gz
cd nagios
注意下面--with-httpd-conf 的路径,取决与你apache的,如果是yum安装的apache,则路径为:
./configure --prefix=/usr/local/nagios  --with-command-group=nagios --with-httpd-conf=/usr/local/apache2/conf/extra/
make all
make install
make install-init
make install-config
make install-commandmode
make install-webconf
这时nagios 基本已经安装完成,默认安装后的配置文件用于启动nagios 是没有问题的。
#vi usr/local/nagios/etc/objects/contacts.cfg
修改nagiosadmin 这行其中的邮件地址为你的email 地址,以将报警邮件发到你的邮箱
#/usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
设置登陆web 界面时HTTP 验证的账号密码
#service httpd restart 启动apache

下面修改httpd.conf ,如果是yum装的apache ,配置文件的路径为如下所示:
vim /etc/httpd/conf/httpd.conf
在空白地方添加一下两行
# nagios  default settings
Include conf/extra/nagios.conf
以上过程配置结束以后需要重新启动httpd:
# service httpd restart


3. 安装nagios-plugins
nagios-plugins 是nagios 官方提供的一套插件程序,nagios 监控主机的功能其实都是通过执行插件程序来实现的。
#tar xzf nagios-plugins-1.4.15.tar.gz
#cd nagios-plugins-1.4.15
#./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios
#make&&make install
安装插件,安装后所有插件命令将被安装到/usr/local/nagios/libexec 目录下

4. 安装nagio
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值