部署Nagios监控系统五
这是nagios部署最后一部分,将完善前几部分遗漏问题,并添加自动邮件告警功能。
1.监控windows客户端mysql服务。 和linux客户端一样,仍然创建nagios用户和nagios数据库,
并赋予nagios用户对nagios数据库只读权限。
打开CMD命令行 mysql -u root -p 输入root密码进入数据库。
创建数据库nagios; grant select on nagios.* to nagios@’%’ 由“123456”标识; 同花顺特权;
2.监控机中测试192.168.17.60的mysql服务
/usr/local/nagios/libexec/check_mysql -H 192.168.17.60 -u nagios -d nagios -p 123456
如果返回uptime时间,打开的表空间等信息,说明配置正确。
3.编辑services.cfg添加192.168.17.60的mysql服务
vim /usr/local/nagios/etc/object/services.cfg
增加以下内容
定义服务
{ use gneric-service,services-pnp host_name 192.168.17.60
service_description MYSQL check_command
check_mysql check_period 24*7
max_check_attempts 4
normal_check_interval 5
retry_check_interval 1
notification_options w,ü,C,[R
通知间隔 960
通知期 24*7
}
保存退出 4.重启nagios,mysql服务异常,如下
5.检查发现,原来是commands.cfg中监控mysql的路径不对 vim /usr/local/nagios/etc/objects/commands.cfg
找到check_mysql部分,将$USER1$后面加上/,如下图:
6.重启nagios,监控mysql正常。
配置邮件报警功能 7.编辑联系方式(我的网易126邮箱)配置文件
vim /usr/local/nagios/etc/objects/contacts.cfg 改成如下形式
8.编辑services.cfg 在每一个服务后面添加contact_groups admins 如下:
定义服务{ use services-pnp host_name 192.168.17.55
use generic-service service_description users check_command
check_nrpe!check_users check_period 24*7
max_check_attempts 4
normal_check_attempts 5
retry_check_interval 1
contact_groups admins notification_options w,ü,C,[R
通知间隔 960
通知期 24*7 }
保存退出 9.执行 /usr/local/nagios/bin/nagios –v /usr/local/nagios/etc/nagios.cfg 检查配置,发现错误
错误提示:短信通知功能没有在services功能没有定义
10.vim /usr/local/nagios/etc/objects/commands.cfg
添加以下内容
定义命令{ command_name notify
#host-notify-by-sms-host-by-sms
command_line /usr/local/bin/
sms_send “Host $HOSTSTATE$ alert for $HOSTNAME$! on ‘$DATETIME$’ “$CONTACTPAGER$ }
#service notify by sms
定义命令{ command_name notify-service-by-sms
command_line /usr/local/bin/
sms_send “‘$HOSTADDRESS$’ $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$” $CONTACTPAG ER$ }
11./usr/local/nagios/bin/nagios –v /usr/local/nagios/etc/nagios.cfg 配置正确
配置postfix邮件系统。 如果没有安装postfix,请使用postfix的rpm包或者yum安装。
12.vim /etc/postfix/main.cnf
修改如下内容
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/
postfix mail_owner = post
myhostname = mail.daemon.cn
mydomain = daemon.cn
myorigin = $myhostname
myorigin = $mydomain
inet_interfaces = all
inet_protocols = all
mydestination = $myhostname,$mydomain
local_reciptent_maps = unknown_local_recipient_reject_code = 550
mynetworks = 192.168.17.0/24,127.0.0.1/8
mynetworks = 192.168.18.0/24,127.0.0.1/8
relay_domains = $mydestination
保存退出
13.service postfix start启动postfix服务
14.启动后,我的126邮箱便收到一封邮件 关于本机根目录空间不足的报警
15.查看nagios监控界面,发现确实有空间不足报警,如下 这和邮件发来的信息是一致的。
16.关闭windows客户端的mysql服务,126邮箱收到报警 故障现象为:无法连接mysqlf服务器 。
17.开启windows客户端的mysql服务,126邮箱会通知故障恢复,由于我没有截图,用一张其他图代替。
至此nagios监控系统配置介绍完毕,谢谢各位看官。