Prometheus+grafana环境搭建redis(docker+二进制两种方式安装)(四)

时间:2024-04-06 12:58:58

 由于所有组件写一篇幅过长,所以每个组件分一篇方便查看,前三篇

Prometheus+grafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客

Prometheus+grafana环境搭建rabbitmq(docker+二进制两种方式安装)(二)-CSDN博客

Prometheus+grafana环境搭建mysql(docker+二进制两种方式安装)(三)-CSDN博客

1. 监控Redis

1.1 官方地址

https://github.com/oliver006/redis_exporter

1.2 二进制安装

下载链接https://github.com/oliver006/redis_exporter/releases/download/v1.58.0/redis_exporter-v1.58.0.linux-amd64.tar.gz

下载后上传到自己常用的目录,使用tar命令解压。

先创建一个配置文件用于保存密码等信息

vi /opt/myexporter/redis/redis-pwd-file.json
配置自己地址和密码

{
"redis://192.168.90.153:6379":"123456"
}

或者##无密码
{
"redis://192.168.90.151:26379":"" 
}
1.2.1 命令行方式运行

./redis_exporter --redis.password-file=/opt/myexporter/redis/redis-pwd-file.json

其他支持的配置项,可自行查阅官方文档,

 1.2.2 配置为系统服务

vim /etc/systemd/system/redis_exporter.service

[Unit]
Description=redis_exporter
Documentation=https://prometheus.io/
After=network.target
[Service]
User=prometheus
Group=prometheus
ExecStart=/opt/myexporter/redis/redis_exporter \
          --redis.password-file=/opt/myexporter/redis/redis-pwd-file.json 

Restart=on-failure
[Install]
WantedBy=multi-user.target

启动服务设置开机启动

systemctl enable redis_exporter.service --now

查看服务状态

systemctl status redis_exporter.service

1.3 docker方式安装
1.3.1 docker命令运行

我没有找到使用配置文件挂载的方式,只能先使用参数挂载,参数挂载就无法实现多个实例用一个exporter监听

ps:官方建议各种exporter,一个最好只监听一个实例,而且最好是localhost监听,我自己只是为了测试,其他用法。

docker run -d -p 9121:9121 \
       --name redis_exporter \
       -e REDIS_PASSWORD=123456 \
       -e REDIS_ADDR="redis://192.168.3.110:16379" \
       --restart=always oliver006/redis_exporter
1.3.2 docker-compose启动

vim docker-compose.yaml

version: '3.1' 
services:
  redis_exporter:
    image: oliver006/redis_exporter
    container_name: redis_exporter
    restart: always
    ports:
      - '9121:9121'
    environment:
      REDIS_PASSWORD: 123456
      REDIS_ADDR: redis://192.168.3.110:16379

docker-compose up -d

验证服务启动正常 访问192.168.3.111:9121/metrics 查看页面有数据很多,如果只有部分数据则可能配置未生效结合日志排查原因

docker log -f redis_exporter 查看连接地址及有没有报错

1.3.3 预留docker挂载配置文件方式启动 

1.4 配置Prometheus监控

vim xxx/prometheus/prometheus.yml 

追加以下内容

  - job_name: 'redis-exporter'
    scrape_interval: 15s
    static_configs:
    - targets: ['192.168.3.112:9121']
      labels:
        instance: 110-redis服务器 

刷新配置 在Prometheus所在服务器执行

curl -X POST http://localhost:9090/-/reload

查看验证 访问 prometheus-ip:9090,点击target,点击endpoint 可以正常跳转

查看redis相关指标,是否正常

 1.5 配置grafana监控

找到喜欢的模板id,11835

Dashboards | Grafana Labs

导入模板参见Prometheus+grafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客 查看效果

1.6 redis_exporter 监控多个节点

 此时密码配置文件变为

vi /opt/myexporter/redis/redis-pwd-file.json
配置自己多组地址和密码

{
"redis://192.168.3.110:16379":"123456",
"redis://192.168.3.110:26379":"12345",
"redis://192.168.3.110:36379":"1234"
}