nagios 监控 cisco 交换机
一、环境:
1.已搭建好nagios4.0.8 2.Centos6.5 x86_64 二、需要有4个监控cisco的脚本check_snmp_cisco_ifstatus check_snmp_cisco_loadavgcheck_snmp_cisco_memutilcheck_snmp_env下载链接: 三、配置vim /usr/local/nagios/etc/objects/templates.cfgdefine host{ name etnet-switch use generic-host check_period 24x7 check_interval 1 retry_interval 1/2 max_check_attempts 2 check_command check-host-alive notification_period 24x7 notification_interval 30 notification_options d,r contact_groups admins register 0 }vim /usr/local/nagios/etc/objects/commands.cfg
##check cisco#define check_snmp_envdefine command{command_name check_snmp_envcommand_line $USER1$/check_snmp_env -H $HOSTADDRESS$ -C $ARG1$ $ARG2$}#define check_snmp cisco memdefine command{command_name check_snmp_cisco_memcommand_line $USER1$/check_snmp_cisco_memutil -H $HOSTADDRESS$ -C $ARG1$ -w $ARG2$ -c $ARG3$}#define check_snmp cisco cpudefine command{command_name check_snmp_cisco_cpucommand_line $USER1$/check_snmp_cisco_loadavg -H $HOSTADDRESS$ -C $ARG1$ -w $ARG2$ -c $ARG3$}#define check_snmp cisco ifdefine command{command_name check_snmp_cisco_ifcommand_line $USER1$/check_snmp_cisco_ifstatus -H $HOSTADDRESS$ -C $ARG1$ -i $ARG2$ -w $ARG3$ -c $ARG4$}
vim /usr/local/nagios/etc/objects/151.3.cfg
define host{ use etnet-switch host_name Office-192.168.151.3 alias Switch 151.3 address 192.168.151.3 }define service{ use generic-service host_name Office-192.168.151.3 service_description PING check_command check_ping!200.0,20%!600.0,60% normal_check_interval 5 retry_check_interval 1 }define service{ use generic-service host_name Office-192.168.151.3 service_description Uptime check_command check_snmp!-C public -o sysUpTime.0 }define service{ use generic-service host_name Office-192.168.151.3 service_description Port 1 Link Status check_command check_snmp!-C public -o ifOperStatus.1 -r 1 -m RFC1213-MIB }define service { use generic-service host_name Office-192.168.151.3 service_description Memutil check_command check_snmp_cisco_mem!public!90!95 }define service { use generic-service host_name Office-192.168.151.3 service_description LoadAVG check_command check_snmp_cisco_cpu!public!90!95 }define service { use generic-service host_name Office-192.168.151.3 service_description Environment check_command check_snmp_env!public }
添加监控交换机
vim /usr/local/nagios/etc/nagios.cfgcfg_file=/usr/local/nagios/etc/objects/151.3.cfg重启nagios/etc/init.d/nagios restart四、可能会报错
No output on stdout) stderr: Can't locate Net/SNMP.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/local/nagios/libexec/check_snmp_env line 21.
问题1:perl -MCPAN -e shellCan't locate CPAN.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .).解决:
yum install -y perl-CPAN*问题2:No output on stdout) stderr: Can't locate Net/SNMP.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/local/nagios/libexec/check_snmp_env line 21. 解决:
perl -MCPAN -e shellcpan[1]> install Net::SNMPcpan[2]> quit
网上的解决方案
How do I install Net::SNMP perl module ? There are 2 ways of doing this 1) By CPAN (best) on command line, as root : [your_host]# perl -MCPAN -e shell cpan shell -- CPAN exploration and modules installation (v1.76) ReadLine support enabled cpan> install Net::SNMP If it's the first time you run CPAN, it will probably ask you some (simple) questions. CPAN will also ask you to satisfy some dependencies (Crypt::DES, Digest::MD5, etc..). 2) "By hand" Get the folowings modules (tar.gz format) on www.cpan.org - Crypt::DES - Digest::MD5 - Digest::SHA1 - Digest::HMAC - Net::SNMP for each one (you must install Net::SNMP at the end) : tar zxf <module>.tar.gz cd <module> perl Makefile.pl make test make install