zabbix3 0對tcp連線數和狀態的監控優化

2022-06-16 08:06:13 字數 3822 閱讀 5370

zabbix3.0對tcp連線數及狀態的監控優化

之前對tcp的監控採用netstat命令,發現在伺服器繁忙的時候效果不理想,這個命令占用大量的cpu有時候高達90%以上,可能會導致業務的不穩定,所以改用ss命令對指令碼進行優化

在需要被監控的zabbix-agent端新增指令碼編寫

建立資料夾

mkdir -p /usr/local/zabbix-agent/scripts/

mkdir -p /etc/zabbix/zabbix_agentd.d/

vim /usr/local/zabbix-agent/scripts/tcp_status_ss.sh

#!/bin/bash 

#scripts for tcp status 

function synrecv end ' | grep 'syn-recv' | awk ''

} function estab end ' | grep 'estab' | awk ''

} function finwait1 end ' | grep 'fin-wait-1' | awk ''

} function finwait2 end ' | grep 'fin-wait-2' | awk ''

} function timewait end ' | grep 'time-wait' | awk ''

} function lastack end ' | grep 'last-ack' | awk ''

} function listen end ' | grep 'listen' | awk ''

} $1

或者

#!/bin/bash 

#scripts

fortcp status

function

synrecv '}

function

estab '}

function

finwait1

function

finwait2

function

timewait

function

lastack

function

listen

$1

賦予指令碼執行許可權

chmod +x /usr/local/zabbix-agent/scripts/tcp_status_ss.sh 

二、填寫key值:當然大家在加入key值之後最好再伺服器上面去執行看有沒有返回值:

vim /etc/zabbix/zabbix_agentd.d/tcp_status_ss.conf

#monitor tcp 

userparameter=tcp[*],/usr/local/zabbix-agent/scripts/tcp_status_ss.sh $1

重啟agent

service zabbix-agent restart

zabbix-server服務端測試

zabbix_get -s 192.168.3.18 -p 10050 -k "tcp[listen]"

zabbix_get -s 192.168.3.18 -p 20050 -k "tcp[listen]"

22zabbix web端配置:

登入zabbix3.0 的web介面,一次選擇 configuration > templates,在主介面的右上角有個 import 按鈕,用來匯入模板

模板檔案:

zbx_tcp_status.xml

<?xml version="1.0" encoding="utf-8"?>

3.02016-10-20t10:07:50z

templates

templates tcp status ss

templates tcp status ss

templates

tcp estab00

tcp[estab]

3090

3650

3 0

0 001

0 0

0 tcp fin_wait100

tcp[finwait1]

3090

3650

3 0

0 001

0 0

0 tcp fin_wait200

tcp[finwait2]

3090

3650

3 0

0 001

0 0

0 tcp last_ack00

tcp[lastack]

3090

3650

3 0

0 001

0 0

0 tcp listen00

tcp[listen]

3090

3650

3 0

0 001

0 0

0 tcp syn_recv00

tcp[synrecv]

3090

3650

3 0

0 001

0 0

0 tcp timewait00

tcp[timewait]

3090

3650

3 0

0 001

0 0

0

linux tcp status

900200

0.0000

100.0000

1 1

01 0

0.0000

0.000000

00

001a7c1102

0templates tcp status ss

tcp[estab]

10f6310002

0templates tcp status ss

tcp[finwait1]

202774a402

0templates tcp status ss

tcp[finwait2]

30a54f1002

0templates tcp status ss

tcp[lastack]

40fc6ea302

0templates tcp status ss

tcp[listen]

506c59dc02

0templates tcp status ss

tcp[synrecv]

60ac8c1402

0templates tcp status ss

tcp[timewait]

zabbix監控tcp連線數和nginx狀態

一 前提條件 安裝好zabbix server和zabbix agent 二 在被監控linux主機的 etc zabbix zabbix agentd.d 目錄下建立配置檔案linux status.conf cd etc zabbix zabbix agentd.d vim linux stat...

zabbix監控應用連線數

zabbix使用使用者自定義鍵值來監控應用系統連線數 1 修改配置檔案zabbix agentd.conf 格式 userparameter 加入一行 userparameter connections,netstat n grep 12345 wc l rusky zabbix etc pwd h...

zabbix個性化監控之一 TCP連線數

一 在被監控端上設定 主要命令 1 netstat an awk tcp end 輸出內容 time wait 100 close wait 5 fin wait1 6 established 161 syn recv 1 last ack 1 listen 11 下面以監控time wait的數量...