服务器安装
解决安装 Nagios 的依赖关系
$ yum -y install httpd gcc glibc glibc-common php php-mysql openssl openssl-devel
$ cd /media/Packages
$ yum -y install *gd*
#安装当前目录下gd库
创建运行身份
$ groupadd nagcmd
$ useradd -m nagios
$ usermod -a -G nagcmd nagios
$ usermod -a -G nagcmd apache
#添加指定附加组
$ id nagios
编译安装 nagios
$ tar zxf nagios-3.1.2.tar.gz
$ cd nagios-3.1.2
$ ./configure --with-command-group=nagcmd --enable-event-broker
#可以把数据打断,为了以后安装组件,把所有数据重新安装到数据库里,做一个可行的支持
$ make all
$ make install
#安装主程序,CGI文件以及网页文件
$ make install-init
#添加一个启动脚本,初始化脚本,用于nagios启动
$ make install-config
#安装一些模板文件
$ make install-commandmode
#对我们的配置文件去赋权
$ vi /usr/local/nagios/etc/objects/contacts.cfg
email nagios@localhost #这个是默认设置
#指定报警信息给谁
$ make install-webconf
#给apache添加了一个接口文件,nagios的web接口
$ vim /etc/httpd/conf.d/nagios.conf
$ htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
#必须是nagiosadmin,基于用户的访问控制
$ service httpd restart
编译、安装 nagios-plugins
$ tar zxf nagios-plugins-1.4.15.tar.gz
$ yum -y install openssl openssl-devel
$ cd nagios-plugins-1.4.15
$ ./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-mysql --enable-perl-modules
#加载perl的模块
$ make
$ make install
配置并启动 Nagios
$ chkconfig --add nagios
$ chkconfig nagios on
$ /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
#检查nagios配置文件是否正确
$ service nagios start
http://your_nagios_IP/nagios
配置 linux 端监控
创建用户
useradd nagios
为了安装 nrpe,先安装 nagios-plugins-1.4.15.tar.gz 插件
$ tar zxf nagios-plugins-1.4.15.tar.gz
$ cd nagios-plugins-1.4.15
$ ./configure --with-nagios-user=nagios --with-nagios-group=nagios
$ make all
$ make install
#安装以守护进程工作的插件管理器,在客户端开启一个监听端口,服务器端通过脚本发送指令到这个端口,让他执行对应的脚本信息,然后返回数据给nagios
安装 nrpe,才可以启动监听端口
$ yum -y install openssl openssl-devel
$ tar -zxvf nrpe-2.12.tar.gz
$ cd nrpe-2.12.tar.gz
$ ./configure --enable-ssl --with-ssl-lib=/usr/lib64/
$ make all
$ make install-plugin
$ make install-daemon
#安装守护进程
$ make install-daemon-config
#守护进程的配置文件
配置 nrpe 信息
$ vim /usr/local/nagios/etc/nrpe.cfg
allowed_hosts=192.168.24.20,127.0.0.1
#放行允许收集的服务器端,以及本机的自我收集,一个是远程触发脚本,一个是本地自我收集也要有使用权
$ /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
#启动服务,-d:daemon的方式去运行
$ nestat -antp | grep 5666
服务端安装 nrpe 插件
$ cd nagios-nrpe_2.8.1
$ ./configure --enable-ssl --with-ssl-lib=/usr/lib64/
$ make all
$ make install-plugin
commands.cfg 定义外部构件 nrpe
$ vi /usr/local/nagios/etc/objects/commands.cfg
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
定义 mylinux.cfg
define host{
use linux-server
host_name mylinux/IP
alias mylinux
address 192.168.24.20
}
define service{
use generic-service
host_name mylinux
service_description check-load
#检测负载
check_command check_nrpe!check_load
}
define service{
use generic-service
host_name mylinux
service_description check-users
check_command check_nrpe!check_users
}
define service{
use generic-service
host_name mylinux
service_description otal_procs
check_command check_nrpe!check_total_procs
}
在主配置文件开启调用文件
$ vim /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/mylinux.cfg
$ service nagios restart
访问
ip/nagios