1.釘釘賬號創建,並創建一個組,在組中添加一個機器人,然后記下webhook地址即可.
2.編輯一個報警腳本,此處使用的是BASH腳本,並覆蓋我們的webhook地址到相應的位置.
[root@localhost ~]# vim send.sh
#!/bin/bash
to=$1
subject=$2
text=$3
curl 'https://oapi.dingtalk.com/robot/send?access_token=a7363009f0069f055bd403a8ef336ebac937bf350de51a8042905dd5321800' \
-H 'Content-Type: application/json' \
-d '
{"msgtype": "text",
"text": {
"content": "'"$text"'"
},
"at":{
"atMobiles": [ "'"$1"'" ],
"isAtAll": false
}
}'
3.在Linux系統下運行腳本,測試是否能夠發送一個警告信息.
[root@localhost ~]# chmod +x send.sh
[root@localhost ~]# bash send.sh hello lyshark we
{"errmsg":"ok","errcode":0}
[root@localhost ~]#
4.確認過能報警以后,我們來開啟Zabbix服務的腳本功能.
[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
[root@localhost ~]# vim /etc/zabbix/zabbix_server.conf
### Option: AlertScriptsPath
# Full path to location of custom alert scripts.
# Default depends on compilation options.
# To see the default path run command "zabbix_server --help".
#
# Mandatory: no
# Default:
# AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/lib/zabbix/alertscripts #解除注釋,找到配置項
5.把上面的send.sh文件拷貝到,上述目錄下面,並設置權限.
[root@localhost ~]# cp -a send.sh /usr/lib/zabbix/alertscripts/
[root@localhost ~]# chmod 777 -R /usr/lib/zabbix/alertscripts/
[root@localhost ~]# systemctl restart zabbix-server
6.點擊圖形界面,選擇管理->報警媒介->創建報警媒介
.
新增:{ALERT.SENDTO}{ALERT.SUBJECT}{ALERT.MESSAGE}.
7.點擊圖形界面,選擇配置->動作->創建動作
,首先創建一個動作.
8.緊接着點擊操作->配置
一下故障報警消息格式.
標題改為:
故障{TRIGGER.STATUS},服務器:{HOSTNAME1}發生: {TRIGGER.NAME}故障!
信息改為:
告警主機:{HOSTNAME1}
告警地址:{HOST.IP}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}
繼續往下看,點擊新的
,配置一個報警用戶組和報警使用消息.
下圖表示觸發5次動作,每隔120秒觸發一次,告警發給 admin 用戶,用釘釘媒介發送.
9.當我們配置完成一個故障報警后,下面就繼續配置一個恢復后的提示.
標題改為:
恢復{TRIGGER.STATUS}, 服務器:{HOSTNAME1}: {TRIGGER.NAME}已恢復!
信息改為:
告警主機:{HOSTNAME1}
告警地址:{HOST.IP}
告警時間:{EVENT.DATE} {EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}
最終點擊小add添加
選項,繼續點擊大ADD完成動作
增加.
10.配置告警用戶,點擊管理->用戶->Admin->報警媒介
,修改以下內容.
最后點擊更新按鈕完成任務了.
11.此時我們強制關閉一個虛擬機,那么就能看到報警內容啦.