部署Nagios监控系统五

这是nagios部署最后一部分,将完善前几部分遗漏问题,并添加自动邮件告警功能。

1.监控windows客户端mysql服务。 和linux客户端一样,仍然创建nagios用户和nagios数据库,

并赋予nagios用户对nagios数据库只读权限。

打开CMD命令行 mysql -u root -p 输入root密码进入数据库。

create database nagios; grant select on nagios.* to nagios@’%’ identified by ‘123456’; flush privileges;

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

增加以下内容

define service

{ 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,u,c,r

notification_interval 960

notification_period 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 如下:

define service{ 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,u,c,r

notification_interval 960

notification_period 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

添加以下内容

define command{ 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

define command{ 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服务器 。

mysqler

17.开启windows客户端的mysql服务,126邮箱会通知故障恢复,由于我没有截图,用一张其他图代替。

covers

至此nagios监控系统配置介绍完毕,谢谢各位看官。

Leave a Reply