重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
nagios 监控 cisco 交换机
目前创新互联建站已为上千的企业提供了网站建设、域名、雅安服务器托管、网站改版维护、企业网站设计、高安网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
一、环境:
1.已搭建好nagios4.0.8
2.Centos6.5 x86_64
二、需要有4个监控cisco的脚本
check_snmp_cisco_ifstatus
check_snmp_cisco_loadavg
check_snmp_cisco_memutil
check_snmp_env
下载链接:http://down.51cto.com/data/2118262
三、配置
vim /usr/local/nagios/etc/objects/templates.cfg
define 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_env define command{ command_name check_snmp_env command_line $USER1$/check_snmp_env -H $HOSTADDRESS$ -C $ARG1$ $ARG2$ } #define check_snmp cisco mem define command{ command_name check_snmp_cisco_mem command_line $USER1$/check_snmp_cisco_memutil -H $HOSTADDRESS$ -C $ARG1$ -w $ARG2$ -c $ARG3$ } #define check_snmp cisco cpu define command{ command_name check_snmp_cisco_cpu command_line $USER1$/check_snmp_cisco_loadavg -H $HOSTADDRESS$ -C $ARG1$ -w $ARG2$ -c $ARG3$ } #define check_snmp cisco if define command{ command_name check_snmp_cisco_if command_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.cfg
cfg_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 shell
Can'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 shell cpan[1]> install Net::SNMP cpan[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
cd
perl Makefile.pl
make test
make install