现在开源界用得比较多的两款监控软件就是NAGIOS/CACTI,下面笔者全面讲解二者的安装与整合,其实网上这类文件也比较多,但是都比较零散,对于新手来说搭建起来很容易出问题,本人发一篇完全适合新手的教程!关于二者的差别,废话不多说!!
系统初使化软件库安装:
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
-----------------------------------------------第一部分:nagios------------------------------------------
所有软件包都放在:/usr/local/src (养成好的习惯!!)
一、安装Nagios必须的基本组件的运行依赖于httpd、mysql、gd以及编译用到的gcc
yum -y install httpd gcc glibc glibc-common *gd* php php-mysql mysql mysql-server mysql-devel openssl-devel
二、创建运行nagios的用户和组
groupadd nagcmd
useradd -M nagios
usermod -a -G nagcmd nagios
usermod -a -G nagcmd apache
usermod -G nagios apache
三、安装nagios
cd /usr/local/src
tar zxvf nagios-3.3.1.tar.gz
cd nagios
mkdir /usr/local/nagios
chown -R nagios:nagios /usr/local/nagios
./configure --prefix=/usr/local/nagios
make all
make install
make install-init
make install-config
make install-commandmode
make install-webconf
创建认证用户:
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
PS: 此处用户名尽量使用默认nagiosadmin,否则就需要修改cgi.cfg文件中所有关于认证选项的用户.
启动apache
service httpd restart
PS:这里你可以修改下apache配置文件的ServerName ,不然每次启动都非常慢!!!这个可以改成你的IP!
四、安装nagios-pugins插件
安装nagios常规插件
cd ..
tar zxvf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15
./configure --prefix=/usr/local/nagios
make;make install
安装nagios-snmp-plugins插件
wget http://nagios.manubulon.com/nagios-snmp-plugins.1.1.1.tgz
安装这个插件要装几个perl模块:
Crypt::DES
Digest::MD5
Digest::SHA1
Digest::HMAC
Net::SNMP
到www.cpan.org上下载!!
下面安装这几个模块(最后安装Net::SNMP这个模块):
tar zxvf Crypt-DES-2.05.tar.gz
cd Crypt-DES-2.05
perl Makefile.PL
make;make install
cd ..
gunzip Digest-HMAC-1.03.tar.gz
tar xvf Digest-HMAC-1.03.tar
cd Digest-HMAC-1.03
perl Makefile.PL
make;make install
cd ..
tar zxvf Digest-MD5-2.51.tar.gz
cd Digest-MD5-2.51
perl Makefile.PL
make ;make install
cd ..
tar zxvf Digest-SHA1-2.13.tar.gz
cd Digest-SHA1-2.13
perl Makefile.PL
make;make install
cd ..
gunzip Net-SNMP-v6.0.1.tar.gz
tar xvf Net-SNMP-v6.0.1.tar
cd Net-SNMP-v6.0.1
perl Makefile.PL
make;make install
现在开始安装nagios-snmp-plugins插件:
tar zxvf nagios-snmp-plugins.1.1.1.tgz
cd nagios_plugins
./install.sh
运行后一路回车!!!!!!!!!!!!!!!
安装nagios中文插件(这个插件最好与nagios版本相同,我发现不同也没多大关系):
cd /usr/local/src
tar jxvf nagios-cn-3.2.3.tar.bz2
cd nagios-cn-3.2.2
./configure
make all;make install
把nagios加入到系统服务:
chkconfig --add nagios
chkconfig nagios on
指定nagios指令的path
vi /etc/profile
大文件最后加入:
export PATH=$PATH:/usr/local/nagios/bin
再用 source /etc/profile 直接生效!
检查配置文件:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
chkconfig httpd on
chkconfig mysqld on
启动apache: service httpd start
启动mysqld: service mysqld start
启动nagios: service nagios start
五、nagios性能分析图表_PNP插件
yum install perl-Time-HiRes
先安装rrdtool
32位系统
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
rpm -Uvh rpmforge-release-0.5.1-1.el5.rf.i386.rpm
yum -y install rrdtool
64位系统
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
rpm -Uvh rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
yum -y install rrdtool
1.安装PNP
tar zxvf pnp4nagios-0.6.16.tar.gz
cd pnp4nagios-0.6.16
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-rrdtool=/usr/bin/rrdtool
make all
make install
make install-webconf
make install-config
make install-init
2.配置PNP
cd /usr/local/pnp4nagios/etc
mv misccommands.cfg-sample misccommands.cfg
mv nagios.cfg-sample nagios.cfg
mv rra.cfg-sample rra.cfg
cd pages
mv web_traffic.cfg-sample web_traffic.cfg
cd ../check_commands
mv check_all_local_disks.cfg-sample check_all_local_disks.cfg
mv check_nrpe.cfg-sample check_nrpe.cfg
mv check_nwstat.cfg-sample check_nwstat.cfg
service npcd start
3.修改 nagios 的配置文件,打开performance_data
cd /usr/local/nagios/etc
vi nagios.cfg
process_performance_data=1 //把0变成1,启动nagios的数据输出功能,这样nagios将收集的数据写入到某个文件当中,以备提取!
host_perfdata_command=process-host-perfdata //启用主机的数据输出功能
service_perfdata_command=process-service-perfdata //启用服务的数据输出功能
4.修改 commands.cfg
cd /usr/local/nagios/etc/objects
vim commands.cfg
把默认的process-host-perfdata和process-service-perfdata 删除掉或注释掉,添加如下内容:
# 'process-host-perfdata' command definition
define command{
command_name process-host-perfdata
command_line /usr/local/pnp4nagios/libexec/process_perfdata.pl
}
# 'process-service-perfdata' command definition
define command{
command_name process-service-perfdata
command_line /usr/local/pnp4nagios/libexec/process_perfdata.pl
}
5.添加模板
vim templates.cfg
在配置文件最后添加
define host {
name hosts-pnp
action_url /pnp4nagios/graph?host=$HOSTNAME$&
register 0
}
define service {
name services-pnp
action_url /pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
register 0
}
6.最后在各服务器的hosts和services处添加hosts-pnp、services-pnp
如:
define host{
use linux-server,hosts-pnp
host_name andy.com
alias andy_web.com
address 192.168.1.101
}
define service{
use local-service,services-pnp
host_name andy.com
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
7.重启nagios
/etc/init.d/nagios restart
六、Nconf的安装与配置
1.nconf的准备工作
mysql -uroot -p
mysql> create database nconf;
mysql> grant all privileges on nconf.* to nconf@"%"> mysql> flush privileges;
mysql> quit
2.安装nconf
下载: http://sourceforge.net/projects/nconf/files/nconf/
tar nconf-1.3.0-0.tgz
mv nconf /usr/local
chown -R apache:apache /usr/local/nconf
3.在apache添加nconf目录虚拟主机
vi /etc/httpd/conf.d/nconf.conf
加入如下内容: