1. 程式人生 > >zabbix自定義key

zabbix自定義key

1、在zabbix_agent端zabbix_agentd.conf配置檔案中增加自定義Key(/usr/local/zabbix_agent/etc/zabbix_agentd.conf)

複製程式碼
### Option: UserParameter
#       User-defined parameter to monitor. There can be several user-defined parameters.
#       Format: UserParameter=<key>,<shell command>
#       See 'zabbix_agentd' directory for examples.
#
# Mandatory: no接
# Default:
# UserParameter=

UserParameter=Physical_cpu_0_temperature
,sensors|grep "id 0"|awk '{print $4}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
     變數    Key                                命令
複製程式碼

就樣一個自定義的Key就完成了,那麼我們要怎麼來測試這個Key是否生效了呢?配置檔案修改完成後需要重啟zabbix_agentd端的服務,然後在zabbix_server端通過zabbix_get檢視,是否可以獲取到值,如果獲取到值,表明這個Key就設定成功了。

設定完Key一定記得要通過命令進行驗證啊!!!
# zabbix_get -s 10.16.1.201 -p 10050 -k Physical_cpu_0_temperature
59.0

我們看下,CPU的溫度已經可以正常獲取了,我們的key就設定成功了!

說了第一種定義Key的方法,是在zabbix_agend.conf的主配置檔案中修改,大家可以想想,如果需要定義100個Key的話,都寫在主配置檔案裡,是不是主配置檔案會很亂啊,那我們來看看有什麼更好的方法呢,接下來看看第二種方法吧!

2、將Key定義在獨立的檔案中,然後在主配置檔案中進行新引用就好了,下面我們來配置下。

2.1 修改zabbix_agentd.conf 配置(/usr/local/zabbix_agent/etc/zabbix_agentd.conf)

複製程式碼
cat /usr/local/zabbix_agent/etc/zabbix_agentd.conf      # 在zabbix_agentd.conf配置檔案中通過Include引用自定義Key檔案目錄
### Option: Include
#       You may include individual files or all files in a directory in the configuration file.
#       Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.
#
# Mandatory: no
# Default:
# Include=
# Include=/usr/local/etc/zabbix_agentd.userparams.conf
Include=/usr/local/zabbix_agent/etc/zabbix_agentd.conf.d/
複製程式碼

2.2 在/usr/local/zabbix_agent/etc/zabbix_agentd.conf.d目錄寫編寫自定義Key檔案

複製程式碼
# cat custom_parameters.conf
# Monitor CPU temperature
# cpu_core_0
UserParameter=Physical_cpu_0_temperature,sensors|grep "id 0"|awk '{print $4}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_0_core0,sensors|grep -A 6 "id 0" | grep "Core 0" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_0_core1,sensors|grep -A 6 "id 0" | grep "Core 1" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_0_core2,sensors|grep -A 6 "id 0" | grep "Core 2" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_0_core3,sensors|grep -A 6 "id 0" | grep "Core 3" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_0_core4,sensors|grep -A 6 "id 0" | grep "Core 4" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_0_core5,sensors|grep -A 6 "id 0" | grep "Core 5" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'

# cpu_core_1
UserParameter=Physical_cpu_1_temperature,sensors|grep "id 1"|awk '{print $4}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_1_core0,sensors|grep -A 6 "id 1" | grep "Core 0" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_1_core1,sensors|grep -A 6 "id 1" | grep "Core 1" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_1_core2,sensors|grep -A 6 "id 1" | grep "Core 2" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_1_core3,sensors|grep -A 6 "id 1" | grep "Core 3" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_1_core4,sensors|grep -A 6 "id 1" | grep "Core 4" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
UserParameter=cpu_1_core5,sensors|grep -A 6 "id 1" | grep "Core 5" | awk '{print $3}'|awk -F "°" '{print $1}'|awk  -F "+" '{print $2}'
複製程式碼

這讓定義就可以了,如果需要定義的Key較多的話,我們就可以通過這種方式來定義key了,這樣做的好處大家也可以很清楚的看到了,配置清晰、明瞭,而且不和主配置檔案在一起,避免修改key影響主配置檔案哈。記得修改完配置檔案,記得重啟zabbix_agent服務啊。最好還要通過上面介紹的方法進行驗證下啊。

Key定義好了,我們來看看,如何在zabbix web頁面通過這些來建立監控項吧!

3、zabbix web頁面,通過建立的自定義Key來建立監控項

zabbix_monitory_31

zabbix_monitory_22

zabbix_monitory_23

zabbix_monitory_29

這裡我們以一個自定義key來介紹了,多個key的建立方法一樣哦,小夥伴們自己動手試下吧。

zabbix_monitory_30

      這是通過自定義監控一顆物理CPU溫度彙總的圖形,大家可以看到,自定義Key是不是很好用啊。只要我們在伺服器上可以獲取的值,都可以通過自定義Key的方法來進行監控,也非常的靈活!下面在來設定上監控溫度的觸發器吧。

zabbix_monitory_26

zabbix_monitory_27

建立

到這裡,自定義Key我們就介紹完了,可以在回顧下,我們都做了什麼?

1、在zabbix_agent端配置檔案增加自定義Key

2、重啟zabbix_agentd服務

3、在zabbix_server端通過zabbix_get驗證自定義key是否生效

4、在zabbix_web頁面通過自定義key建立監控項

5、在zabbix_web頁面給自定義key監控項建立圖形

6、自定義Key監控項建立觸發器