今天,我看到公司交換機的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
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
哦也!