prometheus监控redis,redis-cluster

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 

prometheus监控redis,redis-cluster
浏览器查看
prometheus监控redis,redis-cluster

#删除指定服务 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

prometheus监控redis,redis-cluster

6. grafana展示

redis_exporter 在 Grafana 上为我们提供好了 Dashboard 模板:https://grafana.com/dashboards/763

prometheus监控redis,redis-cluster

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: