監控系統----zabbix新增監控
監控系統----zabbix新增監控
筆者總結的zabbix新增監控流程大致如下
1.配置模板
2.新建主機
3.新增特定監控項
4.新增trigger
5.新增action
一.配置模板
zabbix裡面就已經自帶了很多模板,筆者在工作中比較喜歡用到的是Template OS Linux,這個模板裡面就有很多關於伺服器的資訊(例如cpu,記憶體,swap等)
我們在模板介面點選全克隆,複製出一個新的模板。
然後找到我們新建的模板,把無用的監控項全部刪掉,把自動發現和應用集裡面的條目也刪掉,不然會多出很多不想他出現的監控。
然後我們找到留下來的監控項,看看它究竟是監控什麼的,修改他的名字,讓監控項更加易讀。
然後全選監控,底部選擇批量更新,修改他的型別為zabbix客戶端主動(因為筆者經常要配置跨域監控,server不能直接連線agent,但是server可以轉發一個公網地址
供agent端傳送資料過來,因此讀者把所有的監控項變成客戶端主動模式)。
這樣,一個定製化的模板就出來了。
下一步就是新建主機了
主機----新建主機
在新建主機介面中,需要注意的是主機名和agent地址。
主機名一定要配置成跟agent所配置的一樣!!!
主機名一定要配置成跟agent所配置的一樣!!!
主機名一定要配置成跟agent所配置的一樣!!!
因為在客戶端主動模式下,server端就是靠主機名來識別agent的。
然後agent的地址,這個在agent處於被動模式下是需要配置的,要配置成agent的ip地址,然而在agent主動模式下,這個就成為雞肋了(無論你填什麼都不影響資料的獲取),填127.0.0.1即可,因為一般本地也會有個agent來監控server的狀態的。
新增好主機後,可以在主機介面檢視主機的狀態。
可以看到,如果是使用agent被動模式的話,server會主動去連線agent,那主機欄裡面可用性那裡的ZBX就會顯示綠色。
筆者這裡是在模板裡面把agent的連通性監控項刪掉了,所以這裡會顯示灰色,也就是不會去識別ZBX的連通性。
但假如你沒有把agent連通性的監控項刪掉,在剛才新建主機的步驟中,你亂填了一個ip地址的話,那這裡就會顯示紅色,這樣會讓人誤以為資料推送失敗了又或者是這臺主機掛了。但是其實不是這樣的,這裡ZBX顯示紅色只是說server不能連通agent,可不是說agent不能把資料推送過來。這個也是筆者推薦在新建主機中把agent地址填成127.0.0.1的原因,讓server去連線一個能連線上的agent,免得心慌。
然後我們轉到監控頁面
監控中----最新資料
搜尋出我們新新增的主機
可以看到資料已經推送過來了,那麼怎麼驗證這些資料就是你想要的那臺主機的資料呢。
筆者的監控項裡面有一個監控hostname的監控項,這個hostname不是zabbix裡面的那個主機名,而是伺服器本身的主機名。
看看主機名對不對得上就知道資料對不對得上了。
新加監控項
當然,模板中的監控項只能告訴我們伺服器裡面的一些基本資訊,可不能幫我們監控到整個系統業務。每家企業的業務邏輯都不同,監控的點也不同。
下面我們就自己定製化一個監控項。
自定義監控項需要在agent端的配置檔案裡面單獨配置。格式是(UserParameter=key,command)
vim /etc/zabbix/zabbix_agentd.conf
UserParameter=cps_conn,/usr/local/jiankong/zabbix/cps_http.py
配置好後重啟agent。
在server端新建監控項
其中需要注意的是
型別要選擇為zabbix客戶端主動
鍵值是剛才自定義的key
資訊型別一定要跟你的監控指令碼輸出的資料型別一致!!!
更新間隔視系統的負載和監控的性質而定
這樣,一個定製化的監控項就出來了。
同樣可以到最新資料那裡看看資料有沒有推過來。
新建觸發器trigger
單單是有監控是沒用的,監控項只會把一堆資料抓取過來,而究竟這些資料代表什麼,什麼時候需要報警,這個是需要在觸發器上面設定的。
這裡需要注意的就是報警的名稱
報警的級別
報警的條件表示式
新建action
action在一些事件發生後,所觸發的動作,這些事件可以是自動發現一臺新的主機,一類報警的發生,甚至是特定報警的發生。
配置觸發條件,可以選擇觸發器,然後選擇特定的trigger,也可以選擇觸發器警示度,選擇一整個報警等級的trigger
點選操作,配置觸發之後具體要做什麼
筆者這裡是直接呼叫zabbix-server本地的指令碼
這個指令碼是筆者自己寫的,zabbix預設的指令碼路徑是/usr/lib/zabbix/alertscripts/send_msg.py
這個指令碼是可以傳送簡訊的,指令碼可以接受一個傳參,筆者就把告警的名稱傳給指令碼了。
zabbix有很多內建函式可以穿給外部指令碼,這裡筆者就不一一介紹了
至此,從監控到報警到傳送簡訊通知維護人員的整套流程就完結了。
傳送簡訊的功能參考瞭如下部落格
https://cloud.tencent.com/info/d8b5675103ed3c8fe90298377c15868a.html