打開zabbix
$ sudo systemctl start mariadb
$ sudo systemctl start zabbix-agent
連上網路: https:[ip]zabbix(e.g. http://192.168.42.131/zabbix)

Applications大項: CPU處裡、使用者處理時間、系統處理時間
item是細項: 真正的數據
trigger: 有問題出現時(use condition),提醒使用者(use mail)
這邊使用了template讓我們可以擁有很多監控項,下面介紹自己手動配置監控item
ref: https://www.yuque.com/fenghuo-tbnd9/ffmkvs/pspogt

custom item
創造物件

setup monitor options
手動查看監控項,每個監控項都有對應的key
$ zabbix-get -s 192.168.42.133 -p 10050 -k system.cpu.util[,idle]
記得要在idle time之前把CPU裡面的idle time刪掉,不然會重複

update interval 是回報速度,太頻繁傳送Server會太忙,圖上是1m但是會很久,所以其實是設定5s
下面選擇5s的就會看到剛剛創建的了

setting param for item
接下來設定一下參數讓他比較好看

使用javaScript讓值可以正常顯示

測試值是否可以正常顯示

create trigger
添加trigger

裡面Expression的部分可以使用ADD設定條件,他會自動會幫你產生


測試,讓電腦一直做hash運算
$ cat /dev/urandom | md5sum
也可以使用top做測試
$ top
lookup warning with graph
過一陣子,就可以從 monitor/dashboard裡面看到 cpu_uitilization_rate….. waring的警告

也可以使用圖形查看變化量


當CPU使用率下降後,設定的警告也會跟著消失
send email
接下來就使用email寄信看看吧,email上禮拜有設定過了,直接測試
$ echo "hello world" | mail -v -s "Test1234" s110910541@student.nqu.edu.tw
從2.4開始做: https://www.yuque.com/fenghuo-tbnd9/ffmkvs/mempmphi0ozeckdf#JqvfB
$ vim /usr/lib/zabbix/alertscripts/mailx.sh
$1變數一: 寄給誰 $2變數二: 標題 $3變數三: 寄給誰
#!/usr/bin/bash
#send mail
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}"| mail -s "${subject}" $1 2>&1
$ chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
here
e.g.
/usr/lib/zabbix/alertscripts/mailx.sh s110910541@student.nqu.edu.tw Test "hello world"
賦予權限讓腳本可以給zabbix執行
$ chown -R zabbix.zabbix /usr/lib/zabbix/
setup media types
設定Media types,裡面設定要傳送email的對象和參數設定

設定三個參數 {ALERT.SENDTO} 、 {ALERT.SUBJECT} 、{ALERT.MESSAGE},對應到前面mailx.sh的參數

成功就會在下面看到gmail

測試有沒有成功可以按下右側的Test,成功寄出就會顯示Media type test succcessful

set up event
設定發生問題時,要做什麼事情,點進去剛剛設定好的gmail
設定gmail的message template



set up notification
設定問題發生了由誰通知
選擇adminstration/Users,選擇裡面的Media,給Admin新增通知


點完add後要按下update

觸發事件要有動作,所以要去configuration/Actions 新增動作
設定警告大於warning才觸發動作

設定Operations,讓信件送給Admin,最後按下add

設定細項:


test for all operation
設定完成一樣使用下面指令做測試
$ cat /dev/urandom | md5sum
可以看到gmail送出了

CPU 過載和回復都會發送gmail到信箱裡面
