一、交换机配置

snmp-server community public ro

snmp-server enable traps

snmp-server host *.*.*.* version 2c public

snmp-server trap-source vlan 1


二、Nagios服务器配置


下载check_traffic.sh脚本,chech_traffic.sh并不是nagios-plugins自带插件,需要自行下载。

chmod 777check_traffic.sh 赋予脚本执行权限



1.获取交换机的index信息

[root@m ~]#/usr/lib64/nagios/plugins/check_traffic.sh -V 2c -C public -H 10.10.3.252 -L
List Interface for host 10.10.3.252.
Interface index 1 orresponding to Vlan1
Interface index 5137 orresponding to StackPort1
Interface index 5138 orresponding to StackSub-St1-1
Interface index 5139 orresponding to StackSub-St1-2
Interface index 10101 orresponding to GigabitEthernet1/0/1
Interface index 10102 orresponding to GigabitEthernet1/0/2
Interface index 10103 orresponding to GigabitEthernet1/0/3
Interface index 10104 orresponding to GigabitEthernet1/0/4
Interface index 10105 orresponding to GigabitEthernet1/0/5
Interface index 10106 orresponding to GigabitEthernet1/0/6
Interface index 10107 orresponding to GigabitEthernet1/0/7
Interface index 10108 orresponding to GigabitEthernet1/0/8
Interface index 10109 orresponding to GigabitEthernet1/0/9
Interface index 10110 orresponding to GigabitEthernet1/0/10
Interface index 10111 orresponding to GigabitEthernet1/0/11
Interface index 10112 orresponding to GigabitEthernet1/0/12
Interface index 10113 orresponding to GigabitEthernet1/0/13
Interface index 10114 orresponding to GigabitEthernet1/0/14
Interface index 10115 orresponding to GigabitEthernet1/0/15
Interface index 10116 orresponding to GigabitEthernet1/0/16
Interface index 10117 orresponding to GigabitEthernet1/0/17
Interface index 10118 orresponding to GigabitEthernet1/0/18
Interface index 10119 orresponding to GigabitEthernet1/0/19
Interface index 10120 orresponding to GigabitEthernet1/0/20
Interface index 10121 orresponding to GigabitEthernet1/0/21
Interface index 10122 orresponding to GigabitEthernet1/0/22
Interface index 10123 orresponding to GigabitEthernet1/0/23
Interface index 10124 orresponding to GigabitEthernet1/0/24
Interface index 10125 orresponding to GigabitEthernet1/0/25
Interface index 10126 orresponding to GigabitEthernet1/0/26
Interface index 10127 orresponding to GigabitEthernet1/0/27
Interface index 10128 orresponding to GigabitEthernet1/0/28
Interface index 12001 orresponding to Null0
Interface index 12002 orresponding to FastEthernet0

命令注解如下:#/usr/lib64/nagios/plugins/check_traffic.sh [ -v ] [ -6 ] [ -i Suffix ] [ -F s|S ] [-p N] [ -r ] -V 1|2c|3 -C snmp-community -H host [ -L ] -I interface -w in,out-warning-value -c in,out-critical-value -K/M -B/b


2.获取交换机G1/0/28的端口流量

[root@m ~]# /usr/lib64/nagios/plugins/check_traffic.sh -V 2c -C public -H 10.10.3.252 -I 10128 -w 200,300 -c 400,500 -K -B
OK - It's the first time for this plugins run. We'll get the data from the next time.


[root@m ~]# /usr/lib64/nagios/plugins/check_traffic.sh -V 2c -C public -H 10.10.3.252 -I 10128 -w 200,300 -c 400,500 -K -B
OK - The Traffic In is 82.00KB, Out is 0.0KB, Total is 82.00KB. The Check Interval is 290s |In=82.00KB;200;400;0;0 Out=0.0KB;300;500;0;0 Total=82.00KB;500;900;0;0 Interval=290s;1200;1800;0;0


3.配置nagios配置文件

[root@m ~]#vim /etc/nagios/nagios.cfg

cfg_file=/etc/nagios/objects/switch.cfg #去掉该行前面的#号字符


4.配置commands.cfg

[root@m ~]# vim /etc/nagios/objects/commands.cfg

define command{

command_name check_switch_traffic

command_line $USER1$/check_traffic.sh -V 2c -C public -H $HOSTADDRESS$ -I $ARG1$ -w $ARG2$,$ARG3$ -c $ARG4$,$ARG5$ -M -b
}


5.配置switch.cfg

define host{
use generic-switch ; Inherit default values from a template
host_name H17_2960SW1_3.251 ; The name we're giving to this switch
alias Linksys SRW224P Switch ; A longer name associated with the switch
address 10.10.3.251 ; IP address of the switch
hostgroups switches ; Host groups this switch is associated with
}

define host{
use generic-switch ; Inherit default values from a template
host_name H18_2960SW1_3.247 ; The name we're giving to this switch
alias Linksys SRW224P Switch ; A longer name associated with the switch
address 10.10.3.247 ; IP address of the switch
hostgroups switches ; Host groups this switch is associated with
}

define service{
use generic-service,srv-pnp ; Inherit values from a template
host_name H17_2960SW1_3.251
service_description check_traffice_g1/0/28
check_command check_switch_traffic!10128!200!400!500!800
}


define service{
use generic-service,srv-pnp ; Inherit values from a template
host_name H18_2960SW1_3.247
service_description check_traffice_g1/0/28
check_command check_switch_traffic!10128!200!400!500!800
}


6.配置权限(有待验证)

[root@m ~]# chmod 777 /var/tmp/check_traffic_10.10.3.249_10128.hist_dat_root__64


7.重启nagios服务

[root@m ~]# /etc/init.d/nagios restart