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

搭建完Prometheus+grafana基础环境后参见:Prometheus+grafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客,对我本地的一些常用法人服务进行一个监控。基本都可以根据官方文档完成搭建,因为docker和二进制方式安装各有优缺点。

docker适合有容器,有网的环境,启动简单,迁移时也比较方便

二进制包的方式适合无网络的环境,可以将exporter注册为系统服务来管理

所以我对两种方式都进行了尝试安装,更多exporter参见Exporters and integrations | Prometheus

基本步骤都差不多需要注意的主要是配置文件的使用

1.监控rabbitmq

1.1官方地址

GitHub - kbudde/rabbitmq_exporter: Prometheus exporter for RabbitMQ

2.二进制方式安装

1.下载要安装的版本,我这里Linux服务,下载后上传到自己的服务器目录后,使用tar 命令解压,可以专门建一个文件夹来存放各种exporterhttps://github.com/kbudde/rabbitmq_exporter/releases/download/v1.0.0/rabbitmq_exporter_1.0.0_linux_amd64.tar.gz

1.命令方式启动

进入解压后自己的目录 cd rabbitmq_exporter

创建一个配置文件 vi exporter-config.json,(如果都和默认配置一致可以不配置)

{
    "rabbit_url": "http://192.168.3.111:15672", ##控制台地址
    "rabbit_user": "legendyun",
    "rabbit_pass": "123456",
    "publish_port": "9419",    #exporter的地址
}

./rabbitmq_exporter -config-file=exporter-config.json

也可以加个 &让它后台运行

完整的参数可以参照官方文档

2.注册为系统服务

创建一个非root用户

useradd -M -s /usr/sbin/nologin prometheus -M不创建家目录,不允许登录

创建一个文件
vim  /etc/systemd/system/rabbitmq_exporter.service

贴入一下配置 ps:/opt/myexporter/rabbitmq 改为自己的
[Unit]
Description=rabbitmq_exporter
Documentation=https://prometheus.io/

[Service]
User=prometheus
Group=prometheus
ExecStart=/opt/myexporter/rabbitmq/rabbitmq_exporter -config-file=/opt/myexporter/rabbitmq/exporter-config.json


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



配置完成后
systemctl enable rabbitmq_exporter.service --now
systemctl status rabbitmq_exporter.service

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

3.docker方式安装
1.docker命令

rabbitmq-exporter 无法通过exec命令进入容器,所以无法知道内部结构

修改配置通过 -e的方式修改

docker run -d -p 9419:9419 \
  --name rabbitmq_exporter \
  --restart=always \
  -e RABBIT_URL="http://192.168.3.111:15672" \ 
  -e RABBIT_USER: legendyun \
  -e RABBIT_PASSWORD: 123456 \  
  kbudde/rabbitmq-exporter 

其他支持的参数

2.docker-compsoe方式

vim docker-compose.yaml

version: '3.1' 
services:
  rabbitmq_exporter:
    image: kbudde/rabbitmq-exporter
    container_name: rabbitmq_exporter
    restart: always
    ports:
      - '9419:9419'
    environment:
      RABBIT_URL: http://192.168.3.111:15672
      RABBIT_USER: legendyun
      RABBIT_PASSWORD: 123456

docker-compose up -d 启动

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

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

4.配置promtheus监控

vim xxx/prometheus/prometheus.yml

追加

  - job_name: 'rabbit-exporter'
    scrape_interval: 15s
    static_configs:
    - targets: ['192.168.3.112:9419'] ####此处是exporter所在服务器的ip
      labels:
        instance: 111-rabbitmq服务器 

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

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

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

点击 graph 可以采集到rabbit相关的数据即为正常

5.配置grafana监控

找到想要的模板 10991

Dashboards | Grafana Labs

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

相关推荐
福大大架构师每日一题1 天前
37.1 prometheus管理接口源码讲解
ios·iphone·prometheus
Allen Bright1 天前
Spring Boot 整合 RabbitMQ:从入门到实践
spring boot·rabbitmq·java-rabbitmq
Cairry.2 天前
WatchAlert - 开源多数据源告警引擎
云原生·开源·prometheus
Mitch3112 天前
【漏洞复现】CVE-2023-37461 Arbitrary File Writing
web安全·网络安全·prometheus·metersphere·漏洞复现
一路狂飙的猪3 天前
从源码层级深入探索 Spring AMQP 如何在 Spring Boot 中实现 RabbitMQ 集成——消费者如何进行消费
spring boot·spring·java-rabbitmq
04Koi.4 天前
Java项目--仿RabbitMQ的消息队列--基于MQ的生产者消费者模型
java·rabbitmq·java-rabbitmq
福大大架构师每日一题4 天前
36.3 grafana-dashboard看图分析
linux·网络·grafana·prometheus
福大大架构师每日一题5 天前
36.2 内置的k8s采集任务分析
算法·贪心算法·kubernetes·prometheus
点燃银河尽头的篝火(●'◡'●)5 天前
【环境搭建】Grafana本地部署搭建(windows系统)
windows·grafana·环境搭建
Algorithm15765 天前
linux/ubuntu安装Prometheus&Grafana
linux·ubuntu·prometheus