cacti監控tcp連接數

cacti監控tcp連接數
首先修改被監控端snmpd.conf,在最後增加一行:

[root@localhost ~]# vim /etc/snmp/snmpd.conf
extend .1.3.6.1.4.1.2021.21 webconn /bin/bash /etc/snmp/webconn.sh
再在/etc/snmp下創建獲取端口連接數的腳本webconn.sh

#!/bin/sh
#If more than one IP or port Please '|' separated
ip="58.251.x.x|119.145.x.x"  #我們服務器是雙線接入,所以有2個IP
port="80|443"                #我這裏是監控80和443端口
webconn=`netstat -nt |grep ESTABLISHED |awk '{print $4}'|awk '/('$ip'):('$port')/'| wc -l`
websyn=`netstat -nt |grep SYN_RECV |awk '{print $4}'|awk '/('$ip'):('$port')/'| wc -l`
weback=`netstat -nt |grep LAST_ACK |awk '{print $4}'|awk '/('$ip'):('$port')/'| wc -l`
webwait=`netstat -nt |grep TIME_WAI |awk '{print $4}'|awk '/('$ip'):('$port')/'| wc -l`
echo $webconn
echo $websyn
echo $weback
echo $webwait
再賦予腳本可執行權限並重啓snmp

[root@localhost ~]# chmod a+x /etc/snmp/webconn.sh
[root@localhost ~]# service snmpd restart
接下來在cacti上驗證看能否通過snmp抓取到客戶端的數據:

[root@monitor ~]# snmpwalk -v 2c -c public 172.16.88.10 .1.3.6.1.4.1.2021.21
UCD-SNMP-MIB::ucdavis.21.1.0 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.21.2.1.2.7.119.101.98.99.111.110.110 = STRING: "/bin/bash"
UCD-SNMP-MIB::ucdavis.21.2.1.3.7.119.101.98.99.111.110.110 = STRING: "/etc/snmp/webconn.sh"
UCD-SNMP-MIB::ucdavis.21.2.1.4.7.119.101.98.99.111.110.110 = ""
UCD-SNMP-MIB::ucdavis.21.2.1.5.7.119.101.98.99.111.110.110 = INTEGER: 5
UCD-SNMP-MIB::ucdavis.21.2.1.6.7.119.101.98.99.111.110.110 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.21.2.1.7.7.119.101.98.99.111.110.110 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.21.2.1.20.7.119.101.98.99.111.110.110 = INTEGER: 4
UCD-SNMP-MIB::ucdavis.21.2.1.21.7.119.101.98.99.111.110.110 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.21.3.1.1.7.119.101.98.99.111.110.110 = STRING: "221"
UCD-SNMP-MIB::ucdavis.21.3.1.2.7.119.101.98.99.111.110.110 = STRING: "221
16
1
19"
UCD-SNMP-MIB::ucdavis.21.3.1.3.7.119.101.98.99.111.110.110 = INTEGER: 4
UCD-SNMP-MIB::ucdavis.21.3.1.4.7.119.101.98.99.111.110.110 = INTEGER: 0
UCD-SNMP-MIB::ucdavis.21.4.1.2.7.119.101.98.99.111.110.110.1 = STRING: "221"
UCD-SNMP-MIB::ucdavis.21.4.1.2.7.119.101.98.99.111.110.110.2 = STRING: "16"
UCD-SNMP-MIB::ucdavis.21.4.1.2.7.119.101.98.99.111.110.110.3 = STRING: "1"
UCD-SNMP-MIB::ucdavis.21.4.1.2.7.119.101.98.99.111.110.110.4 = STRING: "19"
若有上面的輸出則說明成功了,接下來就只要建cacti的模板了,這裏就不講建立模板的過程了,我已經把模板導出來,有需要可下載附件包含模板和腳本

cacti-tcp.zip

另外我的cacti是0.8.7f的,不同版本模板的hash值不一樣,所以非0.8.7f版本的cacti導入此模板會報錯,不過可將模板裏的0020全部替換成你所用版本的 hash值就可以解決,下面是每個版本對應的hash值:
   1. “0.8.4″  => “0000″, 
   2. “0.8.5″  => “0001″, 
   3. “0.8.5a” => “0002″, 
   4. “0.8.6″  => “0003″, 
   5. “0.8.6a” => “0004″, 
   6. “0.8.6b” => “0005″, 
   7. “0.8.6c” => “0006″, 
   8. “0.8.6d” => “0007″, 
   9. “0.8.6e” => “0008″, 
  10. “0.8.6f” => “0009″, 
  11. “0.8.6g” => “0010″, 
  12. “0.8.6h” => “0011″, 
  13. “0.8.6i” => “0012″, 
  14. “0.8.6j” => “0013″, 
  15. “0.8.7″  => “0014″, 
  16. “0.8.7a” => “0015″, 
  17. “0.8.7b” => “0016″, 
  18. “0.8.7c” => “0017″, 
  19. “0.8.7d” => “0018″
  20. “0.8.7e” => “0019″
  21. “0.8.7f” => “0020″
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章