1. redis_exporter安装配置
# 下载redis_exporter
wget https://github.com/oliver006/redis_exporter/releases/download/v1.3.4/redis_exporter-v1.3.4.linux-amd64.tar.gz
# 解压
tar xzf redis_exporter-v1.3.4.linux-amd64.tar.gz
# 删除下载的文件
rm -f redis_exporter-v1.3.4.linux-amd64.tar.gz
# 安装redis_exporter
mv redis_exporter-v1.3.4.linux-amd64 /usr/local/
ln -sv /usr/local/redis_exporter-v1.3.4.linux-amd64 /usr/local/redis_exporter
2. redis_exporter启动
# 直接启动。
## 无密码
./redis_exporter redis//192.168.11.110:6379 &
## 有密码
redis_exporter -redis.addr 192.168.11.111:6379 -redis.password 123456
启动参数说明:
-redis.addr:指明 Redis 节点的地址,默认为 redis://localhost:6379(如果有多个redis实例, redis_exporter作者建议启动多个redis_exporter进程来进行监控数据获取)
-redis.password:验证 Redis 时使用的密码;
-redis.file:包含一个或多个redis 节点的文件路径,每行一个节点,此选项与 -redis.addr 互斥。
-web.listen-address:监听的地址和端口,默认为 0.0.0.0:9121
3. 配置redis_exporter为系统服务方式启动
# 添加redis_exporter启动用户
groupadd prometheus
useradd -g prometheus -m -d /var/lib/prometheus -s /sbin/nologin prometheus
# 创建redis_exporter系统服务配置文件及权限调整
touch /usr/lib/systemd/system/redis_exporter.service
chown prometheus:prometheus /usr/lib/systemd/system/redis_exporter.service
chown -R prometheus:prometheus /usr/local/redis_exporter*
vim /usr/lib/systemd/system/redis_exporter.service
# 将如下内容写入到redis_exporter.service文件中
[Unit]
Description=redis_exporter
Documentation=https://github.com/oliver006/redis_exporter
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/redis_exporter/redis_exporter -redis.addr 192.168.11.110:6379 -redis.password 0NZcyqRqLUteci7D
Restart=on-failure
[Install]
WantedBy=multi-user.target
# 重载配置
systemctl daemon-reload
# 设置开机启动
systemctl enable redis_exporter
启动redis_exporter
systemctl start redis_exporter
# 查看redis_exporter启动状态
systemctl status redis_exporter
ss -tnl|grep 9121
netstat -tlnp |grep redis_exporte
tcp6 0 0 :::9121 :::* LISTEN 22566/redis_exporte
至此, redis服务器端的redis_exporter已安装配置完成, 接下来配置Prometheus server, 将redis_exporter采集到的数据获取过来, 然后配置到Grafana中展示
4.通过consul加入prometheus
注册
curl -X PUT -d '{"id": "redis-exporter-lrma06","name": "redis-exporter-1rma06","address": "192.168.66.167","port": 9121,"tags": ["service"],"checks": [{"http": "http://192.168.66.167:9121/metrics","interval": "5s"}]}' http://192.168.33.12:8502/v1/agent/service/register
# 查询指定节点以及指定的服务信息
curl http://192.168.33.12:8501/v1/catalog/service/redis-exporter-1rma06
浏览器查看
#删除指定服务 redis为要删除服务的id
curl -X PUT http://192.168.33.12:8502/v1/agent/service/deregister/redis-exporter-lrma06
5. 配置Prometheus server
prometheus添加consul监控
vi prometheus.yml
#新增如下配置
- job_name: 'consul-prometheus'
consul_sd_configs:
- server: '192.168.33.12:8502'
services: []
重载配置文件
curl -XPOST http://192.168.33.12:9090/-/reload
查看prometheus监控targets
6. grafana展示
redis_exporter 在 Grafana 上为我们提供好了 Dashboard 模板:https://grafana.com/dashboards/763