關(guān)于zabbix自定義監(jiān)控項和觸發(fā)器問題
目錄
- 一.監(jiān)控端口
- 關(guān)系說明
- 操作
- 二.監(jiān)控服務(wù)
- 關(guān)系說明
- 操作
- 三.模板的導(dǎo)入和導(dǎo)出
一.監(jiān)控端口
關(guān)系說明
觸發(fā)器: 根據(jù)客戶端的腳本獲取值,當(dāng)客戶端的某項值達(dá)到要求后,將發(fā)出告警
監(jiān)控項:根據(jù)客戶端的腳本獲取值,可設(shè)定采集值得間隔時間,將值保留記錄下來,可形成曲線圖
應(yīng)用集:用來分類存放監(jiān)控項,比如將監(jiān)控80,8080等web服務(wù)的監(jiān)控項放在WEB應(yīng)用集中,將監(jiān)控22,21等小服務(wù)的監(jiān)控項放入SMALL應(yīng)用集中。
模板:模板是一套定義好的監(jiān)控項的合集,任何主機(jī)連接模板,則將模板中的監(jiān)控項等等在主機(jī)上應(yīng)用,但要修改這些監(jiān)控項只能去模板中修改,并且修改后其他連接的主機(jī)也會跟著變動。
操作
1.創(chuàng)建模板,模板名稱用來表示,這里監(jiān)控端口,取名為Port,模板必須加入某群組,可單獨創(chuàng)建群組來區(qū)分。
2.創(chuàng)建應(yīng)用集,應(yīng)用集只用取名字即可
3.創(chuàng)建監(jiān)控項,名稱用來區(qū)分監(jiān)控的哪些值,可能是監(jiān)控nginx的訪問數(shù)量,也可能是mysql的讀數(shù)量。
鍵值有2種,一種是點擊選擇使用系統(tǒng)自帶值,另一種自定義腳本key。
這里選擇net.tcp.listen[port],通過telnet來查找某主機(jī)是否監(jiān)聽某端口,[port]填寫需要監(jiān)控的端口號。
4.創(chuàng)建觸發(fā)器,{HOST.NAME}將獲取主機(jī)名,用作報警顯示。表達(dá)式點擊添加,或復(fù)制其他自帶觸發(fā)器的值進(jìn)行修改。
連接監(jiān)控項,這個就是剛剛創(chuàng)建的監(jiān)控項,其余不動。
5.選擇相應(yīng)群組,從群組里找到剛建立的監(jiān)控項。
6.Port是模板名,如果這里選擇寫主機(jī)名或主機(jī)ip,則會變成單個主機(jī)的監(jiān)控項,而不是模板的。
二.監(jiān)控服務(wù)
關(guān)系說明
腳本:執(zhí)行腳本獲得值
配置文件:允許自定義key,將key的鍵值和腳本獲取值關(guān)聯(lián)起來。
服務(wù)端測試: 服務(wù)端發(fā)送指令給客戶端,客戶端運(yùn)行腳本獲取值再返回給服務(wù)端。
操作
1.創(chuàng)建腳本,用于獲取值cd /etc/zabbix/script
vim web_status.sh
#!/bin/bashcase $1 inLian) netstat -anptu | grep 172.26.98.247:80 | wc -l ;;Ping) netstat -unltp | grep -w 80 &>/dev/null && echo 1 || echo 0 ;; *) echo "Lian | Ping" ;;esac
測試腳本 ./web_status.sh Ping
,看是否可以獲得1
2.修改客戶端配置文件,讓他允許自定義keyvim /etc/zabbix/zabbix_agentd.conf
Include=/etc/zabbix/zabbix_agentd.conf.d/*.conf #加載其他配置文件UnsafeUserParameters=1 #開啟允許自定義 Key
systemctl restart zabbix-agent
3.修改配置文件,設(shè)定鍵值的名字和腳本所在位置,這樣配置文件才能知道這個鍵值需要執(zhí)行哪個腳本獲得
web.ping是自定義的鍵值名字,后面是腳本路徑vim /etc/zabbix/zabbix_agentd.d/web_status.conf
UserParameter=web.ping,/etc/zabbix/script/web_status.sh PingUserParameter=web.lian,/etc/zabbix/script/web_status.sh Lian
如果執(zhí)行的是命令要用絕對路徑,如下也能獲取值,并不一定要用腳本。
比如
UserParameter=web.shu,/bin/netstat -anptu | wc -l
4.檢測,客戶端測試zabbix_agentd -t web.ping
#返回1則正確
服務(wù)端測試:/ops/server/zabbix/bin/zabbix_get -s 192.168.1.1 -k web.ping
#獲得1則正確
5.出現(xiàn)(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
是因為腳本中用netstat 這個命令,但是客戶端使用zabbix這個用戶啟動腳本,沒有權(quán)限用這個命令。
客戶端執(zhí)行chmod +x /bin/netstat
即可
網(wǎng)頁操作:
鍵值是找不到的,手動寫上,觸發(fā)器的表達(dá)式也是連接這個監(jiān)控項。
三.模板的導(dǎo)入和導(dǎo)出
導(dǎo)入:
導(dǎo)出:
選擇模板拉倒最下面
到此這篇關(guān)于zabbix自定義監(jiān)控項和觸發(fā)器的文章就介紹到這了,更多相關(guān)zabbix自定義監(jiān)控項內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
