zabbix自定義指令碼監控伺服器端口狀態

2022-07-04 22:36:15 字數 1303 閱讀 1737

zabbix可以通過客戶端的[net.tcp.port[,port]]該item監控項來判斷本地/遠端伺服器tcp埠是否正常,不過當時沒有想起來,就用了自定義指令碼去寫的,很久沒有寫完全忘了,以下是步驟:

1.在客戶端開啟子配置檔案選項,預設是已經開啟的

include=/etc/zabbix/zabbix_agentd.d/*.conf
2.開始編寫指令碼,大致就是通過shell指令碼引數傳入ip位址和port,通過namp命令去獲取埠狀態

ip=$1

port=$2

port_status=`nmap $1 -p$2 | grep $2 | awk ''`

echo $port_status

最後其實就是通過echo得到乙個字元,然後在zabbix中進行判斷

3.指定使用者自定義引數,就是剛剛我們說的子配置檔案選項

cd /etc/zabbix/zabbix_agentd.d/

vim check_port_status.sh

userparameter=port_status[*],/etc/zabbix/check_scripts/port_status.sh $1 $2

這裡寫的目的就是當我們在web介面填寫item時,zabbix如果不知道的話就會過來找這些自定義引數port_status4.在web端新增模板

5.建立應用集

6.新增監控項

鍵值的話,需要傳遞兩個,用,分割,其中port_status和剛剛子配置檔案中設定的自定義引數

7.應用模板

8.配置觸發器報警

這裡的監控項就選剛剛新增的,功能函式選擇str(),因為我們指令碼中echo輸出的是字串,v表示最新的值open或者closed(還有其他幾種情況),那麼這句表示式的意思為:最新的值中沒有找到open就會報警

9.完成

zabbix自定義監控

1 監控資料備份情況 主動模式 1 資料備份及傳送成功 1 2 資料匯入成功 1 2 在zabbix agent客戶端配置如下 root zagent zabbix cat etc zabbix zabbix agentd.conf startagents 0 設定該值為0,則agent不會監聽本地...

zabbix監控之自定義監控

自定義監控node1資料庫狀態,並設定報警 編輯agent客戶端的userparameter mysql.conf 檔案,最後一行新增自定義監控內容 root node1 cd etc zabbix zabbix agentd.d root node1 zabbix agentd.d lsuserp...

Zabbix 自定義監控項

vi usr local zabbix etc zabbix agentd.conf unsafeuserparameters 1 userparameter check process,echo top b n 1 grep mysqld awk f server 192.168.1.12 然後r...