nagios添加监控模块

1.添加系统有的监控模块,我用的默认安装是不监控mysql的,那么自己加一下,mysqlcheck默认是有的,但是没有添加

已经有的模块

[root@Git lib]# cd nagios/plugins/
check_breeze       check_file_age     check_ircd         check_mysql_query  check_nwstat       check_simap        check_ups
check_by_ssh       check_flexlm       check_jabber       check_nagios       check_oracle       check_smtp         check_users
check_clamd        check_fping        check_ldap         check_nntp         check_overcr       check_snmp         check_wave
check_cluster      check_ftp          check_ldaps        check_nntps        check_pgsql        check_spop         eventhandlers/
check_dhcp         check_game         check_load         check_nrpe         check_ping         check_ssh          negate
check_dig          check_hpjd         check_log          check_nt           check_pop          check_ssmtp        urlize
check_disk         check_http         check_mailq        check_ntp          check_procs        check_swap         utils.pm
check_disk_smb     check_icmp         check_mrtg         check_ntp_peer     check_real         check_tcp          utils.sh
check_dns          check_ide_smart    check_mrtgtraf     check_ntp.pl       check_rpc          check_time         
check_dummy        check_imap         check_mysql        check_ntp_time     check_sensors      check_udp          
[root@Git lib]# cd nagios/plugins/

有个check_mysql这个就是check数据库的,

修改这个文件

[root@Git objects]# ll
total 44
-rw-rw-r-- 1 root root  7864 Dec 31 23:29 commands.cfg
-rw-rw-r-- 1 root root  2275 Dec 31 18:40 contacts.cfg
drwxr-xr-x 2 root root  4096 Dec 31 23:31 hosts
-rw-rw-r-- 1 root root  3124 Aug 31 06:28 printer.cfg
-rw-rw-r-- 1 root root  3293 Aug 31 06:28 switch.cfg
-rw-rw-r-- 1 root root 11247 Dec 31 22:44 templates.cfg
-rw-rw-r-- 1 root root  3208 Aug 31 06:28 timeperiods.cfg
-rw-rw-r-- 1 root root  4019 Aug 31 06:28 windows.cfg
[root@Git objects]# vim commands.cfg 

在文件的最后添加一个新的模块

#check mysql
define command{
        command_name   check_mysql
        command_line   $USER1$/check_mysql -H $HOSTADDRESS$ -u nagios -d nagios -p 123456
    }
"commands.cfg" 245L, 7864C 
然后在监控服务器对应的文件里面添加这里解释下,比如监控localhost,会有一个对应的cfg文件,默认的是localhost.cfg,我监控了一个前端服务器,我用的名字是front.cfg

如下所示:

[root@Git objects]# ll
total 44
-rw-rw-r-- 1 root root  7864 Dec 31 23:29 commands.cfg
-rw-rw-r-- 1 root root  2275 Dec 31 18:40 contacts.cfg
drwxr-xr-x 2 root root  4096 Dec 31 23:31 hosts
-rw-rw-r-- 1 root root  3124 Aug 31 06:28 printer.cfg
-rw-rw-r-- 1 root root  3293 Aug 31 06:28 switch.cfg
-rw-rw-r-- 1 root root 11247 Dec 31 22:44 templates.cfg
-rw-rw-r-- 1 root root  3208 Aug 31 06:28 timeperiods.cfg
-rw-rw-r-- 1 root root  4019 Aug 31 06:28 windows.cfg
[root@Git objects]# cd hosts/
[root@Git hosts]# ll
total 20
-rw-r--r-- 1 root root 5014 Dec 31 23:31 front.cfg
-rw-r--r-- 1 root root  143 Dec 30 22:37 group.cfg
-rw-r--r-- 1 root root 5403 Dec 30 21:49 localhost.cfg
[root@Git hosts]# vim front.cfg
hosts目录是我自己新添加的,需要在nagios.cfg里面声明或者配置吧

define service{
        use                             local-service         ; Name of service template to use
        host_name                       Front1.Webserver
        service_description             HTTP
    check_command           check_http
    notifications_enabled       0
        }

define service{
        use             local-service
        host_name       Front1.Webserver
        service_description     check-mysql
        check_command           check_mysql
        }
"front.cfg" 146L, 5014C              
在文件的最后添加已经添加好的command,注意名字要一至,都是check_mysql

参考http://navyaijm.blog.51cto.com/4647068/1282403

然后重启nagios

然后需要说明的是,添加后会显示pending,等一会就好了。还有就是会一直显示critical,这是因为上面的

mysql -H $HOSTADDRESS$ -u nagios -d nagios -p 123456
访问数据库失败,这是因为我们没有在被监控节点上(我这里是front前端这个节点)添加一个名为nagios的数据和一个登录用户为nagios密码为123456的这个歌流程,所以需要添加user  nagios 密码123456 然后添加nagios database,可以做到本机 mysql -h localhost -u nagios -p123456 -d nagios这条命令执行OK

当然可以不用nagios 可以换成你需要监控的数据库。这个就自由发挥了,只要你会mysql,你就可以搞定后面的具体细化了。

 


你可能感兴趣的:(命令,nagios)