今天,我看到公司交换机的CPU情况。发现好高,正常在40%左右。到底是什么原因呢?使用
#show process cpu看了一下。
PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process
241 3582484836 393202721 9111 9.42% 14.50% 14.41% 0 SNMP ENGINE
看到没有,snmp竟然消耗好多CPU。为何会这么高呢?
使用show run | begin snmp查看一下。乖乖,发现几乎traps相关的功能全部开始了。
snmp-server enable traps snmp authentication linkdown linkup coldstart warmstart
snmp-server enable traps vrrp
snmp-server enable traps ds1
snmp-server enable traps tty
snmp-server enable traps eigrp
snmp-server enable traps casa
snmp-server enable traps xgcp
snmp-server enable traps bulkstat collection transfer
snmp-server enable traps isdn call-information
snmp-server enable traps isdn layer2
snmp-server enable traps isdn chan-not-avail
snmp-server enable traps isdn ietf
snmp-server enable traps icsudsu
snmp-server enable traps ds3
snmp-server enable traps hsrp
snmp-server enable traps config
snmp-server enable traps entity
snmp-server enable traps cpu threshold
snmp-server enable traps config-copy
snmp-server enable traps flash insertion removal
snmp-server enable traps envmon
snmp-server enable traps ds0-busyout
snmp-server enable traps ds1-loopback
snmp-server enable traps bgp
snmp-server enable traps ospf state-change
snmp-server enable traps ospf errors
snmp-server enable traps ospf retransmit
snmp-server enable traps ospf lsa
snmp-server enable traps ospf cisco-specific state-change nssa-trans-change
snmp-server enable traps ospf cisco-specific state-change shamlink interface-old
snmp-server enable traps ospf cisco-specific state-change shamlink neighbor
snmp-server enable traps ospf cisco-specific errors
snmp-server enable traps ospf cisco-specific retransmit
snmp-server enable traps ospf cisco-specific lsa
snmp-server enable traps pim neighbor-change rp-mapping-change invalid-pim-message
snmp-server enable traps ipmulticast
snmp-server enable traps mvpn
snmp-server enable traps msdp
snmp-server enable traps rsvp
snmp-server enable traps frame-relay
snmp-server enable traps frame-relay subif
snmp-server enable traps syslog
snmp-server enable traps rtr
snmp-server enable traps mpls ldp
snmp-server enable traps mpls traffic-eng
snmp-server enable traps mpls vpn
snmp-server enable traps cnpd
snmp-server enable traps stun
snmp-server enable traps dlsw
snmp-server enable traps bstun
snmp-server enable traps pppoe
snmp-server enable traps l2tun session
snmp-server enable traps atm subif
snmp-server enable traps dial
snmp-server enable traps dsp card-status
snmp-server enable traps ipmobile
snmp-server enable traps vtp
snmp-server enable traps director server-up server-down
snmp-server enable traps isakmp policy add
snmp-server enable traps isakmp policy delete
snmp-server enable traps isakmp tunnel start
snmp-server enable traps isakmp tunnel stop
snmp-server enable traps ipsec cryptomap add
snmp-server enable traps ipsec cryptomap delete
snmp-server enable traps ipsec cryptomap attach
snmp-server enable traps ipsec cryptomap detach
snmp-server enable traps ipsec tunnel start
snmp-server enable traps ipsec tunnel stop
snmp-server enable traps ipsec too-many-sas
snmp-server enable traps event-manager
snmp-server enable traps voice poor-qov
snmp-server enable traps voice fallback
snmp-server enable traps dnis
而我们公司其实只是使用cacti监控该交换机的端口流量,并没有其他的要求。我赶紧让他关闭不是必须的。可是他不知道只开哪些就可以了。
其实很简单。只要在交换机上做如下配置就可以了。
snmp-server community public RO //启用只读的snmp
snmp-server host 172.16.22.100 public //Specify hosts to receive SNMP notifications
赶紧去试试。
配置完成后,再看看结果如下:
GX-SW-3750G-01#sh processes cpu | include SNMP ENGINE
PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process
241 3582628348 393214990 9111 4.47% 13.79% 14.23% 0 SNMP ENGINE
过了几分钟再查看CPU占用率,发现根本没有下降,还是还是有时会很高。为何?为了测试这个问题。我在cacti上只监控2个交换机端口,发现cpu占用率明显下降。
到这里我有点高兴的太早。以为找到问题的原因了。实际上,后来又发现,cpu根本没有下降多少。问题的原因是这么?
没有办法,翻看以前ccie笔记。无意中发现一行字:
snmp v1的inform具有重传特写。默认是3.心里一阵小激动。赶紧通过远程进行测试。设置如下:
snmp-server inform retries 0
再看cpu,WOW,直线下降。现在一直维持在这个水平:
GX-SW-3750G-01#show processes cpu | include SNMP ENGINE
241 3587921466 393787451 9111 0.00% 0.00% 0.47% 0 SNMP ENGINE
哦也!