一、開始之前
本文内容是使用Zabbix 5.0自帶的Redis Template基于Zabbix-agent2進行的監控和圖形展示。繪制出的Redis運作時狀态的部分圖形如下:
注意事項:
使用Zabbix5.0自帶模闆時,首先要在被控端啟用Zabbix-agent2。
二、安裝Zabbix-agent2
Zabbix-agent2使用Go語言開發,需要在1.13以上版本Go環境編譯。
2.1、首先配置Go環境
下載下傳安裝:
# wget https://studygolang.com/dl/golang/go1.14.3.linux-amd64.tar.gz
# tar -zxf go1.14.3.linux-amd64.tar.gz
# mv go /usr/local/
配置Go環境:
# cat /etc/profile.d/go.sh
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
export GOPATH=/root/go
export PATH=$PATH:$GOPATH/BIN
# source /etc/profile
# go version
go version go1.14.3 linux/amd64
更換Go國内源:
# go env -w GO111MODULE=on
# go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
2.2、源碼編譯安裝Zabbix-agent2
源碼包下載下傳位址:https://www.zabbix.com/download_sources#tab:50LTS
編譯安裝時使用的指令:
# ./configure --prefix=/usr/local/zabbix-agent/ --enable-agent --enable-agent2 && make && make install
修改配置檔案,供參考的配置:
# egrep -v '(^$|^#)' /usr/local/zabbix-agent/etc/zabbix_agent2.conf
PidFile=/usr/local/zabbix-agent/logs/zabbix_agent2.pid
LogFile=/usr/local/zabbix-agent/logs/zabbix_agent2.log
Server=server01
ListenPort=10052
ServerActive=server01
Hostname=server01
ControlSocket=/tmp/agent.sock
Zabbix-agent2不支援以守護程序方式啟動:
測試:
# /usr/local/zabbix-agent/sbin/zabbix_agent2 -t 'redis.ping[tcp://localhost:6379]'
redis.ping[tcp://localhost:6379] [s|1]
三、Zabbix前端頁面連結模闆
在Zabbix前端頁面,點選“Configuration” -> “Templates”,找到名稱為“Template DB Redis”的模闆,将此模闆連結到對應的伺服器,等待資料采集即可。
注意事項:
-
如果Redis設定了密碼,可以這樣操作:
1)點選“Template DB Redis”模闆名稱,選擇“Macros(宏)”,新添加一個宏:
,将宏的值設定為Redis的通路密碼,如: 2)将新添加的宏應用到所有需要{$REDIS.AUTH.PASS}
的監控項中,如:{$REDIS.CONN.URI}
- 如果需要監控非本地Redis,則需要修改模闆中
宏的值,将其改為對應的Redis伺服器位址。{$REDIS.CONN.URI}
參考連結:
- Zabbix-agent2相關内容:https://www.zabbix.com/documentation/5.0/zh/manual/concepts/agent2
- Zabbix監控Redis模闆:https://www.zabbix.com/documentation/5.0/zh/manual/config/templates_out_of_the_box/zabbix_agent2