一、开始之前
本文内容是使用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