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

news/2024/5/18 22:43:59 标签: java-rabbitmq, prometheus, grafana

搭建完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博客


http://www.niftyadmin.cn/n/5463912.html

相关文章

Postgresql 基于时间点恢复

编辑修改postgresql.conf #日志级别 wal_level replica #归档模式 archive_mode on archive_mode参数有3种模式: off:关闭归档 on:开启归档,但不允许在recovery模式下进行归档 always:开启归档,且允许…

社交媒体:12种打造吸引力社交媒体内容的方法

社交媒体在当代社会中扮演着重要的角色,越来越多的人利用社交媒体与朋友、家人和同事保持联系。为了在这个竞争激烈的环境中脱颖而出,我们需要学会如何创建吸引人的内容。本文将介绍12种方法,帮助您在社交媒体上打造引人注目的内容。 1. 挑选…

JavaEE 初阶篇-深入了解多线程等待与多线程状态

🔥博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞👍收藏⭐评论✍ 文章目录 1.0 线程等待 1.1 线程等待 - join() 方法 1.1.1 main 线程中等待多个线程 1.1.2 main 线程等待 t2 线程且t2 线程等待 t1 线程 1.1.3 其他线程阻塞等待 main 线程 1.…

Python中的ORM模块

当涉及到 Python 中的数据库操作时,SQLAlchemy 是一个非常强大和流行的库。它允许开发人员在 Python 中执行 SQL 操作,并提供了一种对象关系映射(ORM)的方式来管理数据库。下面我将详细解释 SQLAlchemy 的主要功能和用法&#xff…

排序算法之冒泡排序

1 算法描述 首先在未排序数组的首位开始,和后面相邻的数字进行比较,如果前面一个比后面一个大那么则进行交换。接下来在将第二个位置的数字和后面相邻的数字进行比较,如果大那么则进行交换,直到将最大的数字交换的数组的尾部。然…

一文教会女朋友学会日常Git使用!Git知识总结

文章目录 一文教会女朋友学会日常Git使用!Git知识总结一、git基本知识了解1.git简介2.git区域了解3.git常用命令 二、常用工作场景1.克隆远程仓库,把仓库代码拉到本地2.推送代码到远程仓库(1)本地代码和远程仓库版本相同&#xff…

SketchUp Pro中文---3D建模与设计领域的专业选手

SketchUp Pro是一款功能强大的3D建模软件,广泛应用于建筑、城市规划、室内设计等领域。它拥有用户友好的界面和丰富的建模工具,支持实时查看、高 级扩展以及智能提示等功能,使得建模过程更加直观、灵活和高效。SketchUp Pro还支持自定义插件&…

2024年,我写了一个视频去水印的微信小程序

花了两天时间,写了一个简单的微信小程序,主要为了学习一下微信小程序相关的知识。 目录 一、功能介绍 二、页面展示 三、简单总结 四、在线体验 一、功能介绍 小程序的主要功能是对目前的主流视频平台的视频进行去水印处理。 项目难点在于收集各个平…