在192.168.4.5上部署nagios前提环境
yum -y groupinstall "开发工具"
yum -y install gcc gcc-c++ make 安装编译工具
setenforce 0 关闭syslinux
yum -y install httpd
service httpd start
yum -y install php-* 安装php包,nagios是用php语言写的
echo 1111111111 > /var/www/html/test.html
vim /var/www/html/test.php
<?php
phpinfo();
?>
service httpd restart
随便找个客户端192.168.4.205上测试,
yum -y install elinks
elinks --dump http://192.168.4.5/test.html
再访问到php页面成功:
安装的是各种图片程序
yum -y install gd gd-devel (6.5版本只没有gd-devel包,不用装)
yum -y install glibc
yum -y install glibc-common
yum -y install libpng zlib
yum -y install libjpeg-turbo-*
安装nagios
unzip nagios.zip
tar -zxf nagios-3.2.1.tar.gz
cd nagios-3.2.1 进解压目录
useradd -s /sbin/nologin nagios
groupadd nagcmd
usermod -G nagcmd nagios
usermod -G nagcmd apache
./configure --with-command-group=nagcmd (在解压后目录中)
make all
make install 安装nagios程序
make install-init 安装启动脚本
make install-config 安装nagios配置文件
make install-commandmode 安装nagios工作模式,修改权限
make install-webconf 安装与apache协同工作的web页面
安装监控插件:
tar -zxf nagios-plugins-1.4.14.tar.gz
cd nagios-plugins-1.4.14 进插件的解压目录
./configure --with-nagios-user=nagios--with-nagios-group=nagcmd
安装插件命令时,指定哪个组和哪个用户可以使用插件命令
make && make install
装nagios后的配置文件信息和各种目录
存放nagios监控命令的目录: /usr/local/nagios/bin/
存放nagios监控插件的目录: /usr/local/nagios/libexec/
存放nagios的网页文件: /usr/local/nagios/share/
目录etc存放nagios配置文件
主配置文件: /usr/local/nagios/etc/nagios.cfg
其他配置文件: /usr/local/nagios/etc/objects/
objects目录下的个配置文件:
监控本机的配置文件:localhost.cfg 也可复制修改后监控其他机器
监控windows的配置文件:windows.cfg
监控交换机配置文件:switch.cfg
监控打印机配置文件:printer.cfg
监控时调用的插件命令文件:commands.cfg
定义监控时间的配置文件:timeperiods.cfg
定义监控模板文件:templates.cfg
定义报警后给谁发邮件的文件:contacts.cfg
各配置文件的格式
定义监控本机的配置文件:vim /usr/local/nagios/etc/objects/localhost.cfg
define host{ 定义要监控的机器
use linux-server 指定监控时使用的模板
host_name localhost 要监控机器的主机名,在监控
alias localhost 要监控机器的主机的别名
address 127.0.0.1 定义要监控的机器IP,本地,也可是其他机器
}
define service{ 定义要监控服务器的要监控的对象,监控几个,写几个
use 指定对但前对象监控时使用的模板
host_name 要监控的主机名(和上面对应)
service_description 设置被监控对象的描述信息
check_command 调用的监控命令并设定报警值
}
vim /usr/local/nagios/etc/objects/localhost.cfg
define host{
use linux-server
host_name localhost
alias localhost
address 127.0.0.1
}
define service{
use local-service
host_name localhost
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
define service{
use local-service
host_name localhost
service_description Root Partition
check_command check_local_disk!20%!10%!/
}
define service{
……………………………… ……………………………………
定义监控命令的配置文件: vim /usr/local/nagios/etc/objects/commands.cfg
define command{
command_name 定义监控命令名
command_line 监控命令名实现的功能
}
如:
define command{
command_name check_local_disk
command_line $USER1$/check_disk-w $ARG1$ -c $ARG2$ -p $ARG3$
}
定义变量路径的配置文件: /usr/local/nagios/etc/resource.cfg
$USER1$=/usr/local/nagios/libexec
……………………………………………………
定义模板配置文件: vim /usr/local/nagios/etc/objects/templates.cfg
与apache协同工作的配置文件目录: ls /etc/httpd/conf.d/
mod_dnssd.conf nagios.conf php.conf README welcome.conf
定义要监控的其他机器:
可以cp一份本机的配置文件/usr/local/nagios/etc/objects/localhost.cfg,重命名个其他以.cfg结尾的名字,修改后监控其他机器,但需要把配置文件加载到主配置文件中(/usr/local/nagios/etc/nagios.cfg)
把设置的配置文件加载到主配置文件中: vim /usr/local/nagios/etc/nagios.cfg
可以添加上编辑的配置文件路径。
cfg_file=/usr/local/nagios/etc/objects/名字.cfg
检查主配置文件是否有语法错误
/usr/local/nagios/bin/nagios -v/usr/local/nagios/etc/nagios.cfg
按照配置文件要求创建用户名和密码,创建nagiosadmin用户才能登陆nagios界面
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
/etc/init.d/nagios start
service httpd restart
本机访问nagios监控页面:输入:http://localhost/nagios
安装好nagios后监控本机的配置,安装好nagios,出现图形界面后,进行配置,监控本机的根分区大小,设置当根分区空间<=90%时候,出现报警,当根分区空间<=70%时候,出现严重警告。
vim /usr/local/nagios/etc/objects/localhost.cfg
define host{
use linux-server
host_name localhost
alias localhost
address 127.0.0.1
}
define service{
use local-service
host_name localhost
service_description Root Partition
check_command check_local_disk!90%!70%!/ (设置的)
}
/etc/init.d/nagios restart
测试
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 97G 13G 79G 14% / 根分区剩余86%时,小于90%:警告。
默认5min中刷新页面才能出现结果,也可设置时间
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 97G 29G 63G 32% / 根分区剩余68%时,小于70%:严重错误