監控案例之監控TCP連接數


五、監控案例之監控TCP

1、 安裝agent,過程略
(下面是apt安裝,如果是編譯安裝,請注意路徑)

2、監控腳本

cd /etc/zabbix/zabbix_agentd.conf.d/
vim check_tcp.sh
#!/bin/bash

tcp_conn_status(){
        TCP_STAT=$1
        ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/tcp_conn.txt
        TCP_STAT_VALUE=$(grep "$TCP_STAT" /tmp/tcp_conn.txt | cut -d ' ' -f2)
        if [ -z $TCP_STAT_VALUE ];then
                TCP_STAT_VALUE=0
        fi
        echo $TCP_STAT_VALUE
}

main(){
	case $1 in
	    tcp_status)
		tcp_conn_status $2;	
		;;
		*)
		echo "$0 + tcp_status + STATUS"
	esac
}

main $1 $2

3、授予權限

chmod a+x check_tcp.sh
chown zabbix.zabbix check_tcp.sh
chown zabbix.zabbix /tmp/tcp_conn.txt

4、創建conf文件引用腳本

cd /etc/zabbix/zabbix_agentd.conf.d/
chown zabbix.zabbix check.conf
vim check.conf
UserParameter=check_tcp[*],/etc/zabbix/zabbix_agentd.conf.d/check_tcp.sh "$1" "$2"

5、 如果是編譯安裝,還需要配置agent 配置文件導入自定義配置那文件

vim /etc/zabbix/zabbix_agentd.conf
263 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf

6、 重啟agent服務

systemctl restart zabbix-agent

7、 在被監控服務器為zabbix 用戶授權:

vim /etc/sudoers
21 zabbix ALL =(ALL) NOPASSWD: ALL

8、server端測試獲取數據

zabbix_get -s 192.168.7.105 -p 10050 -k "check_tcp["tcp_status","LISTEN"]"

添加模版

導入監控項

添加監控項

配置監控項

添加圖形

創建圖形

配置圖形

創建觸發器

配置觸發器

添加表達式

配置完成

添加主機,如果有可以以現有的主機更改

模板選擇我們剛剛創建的模板

查看圖形

想要其它的TCP狀態,需要修改check_tcp["tcp_status","LISTEN"]LISTEN這個值
如想要監控TIME-WAIT的值,修改成check_tcp["tcp_status","TIME-WAIT"]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM