Prometheus monitor RabbitMQ

Prometheus monitor RabbitMQ

 

Install docker-compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

 

Prometheus

docker-compose

version: '3.2'

services:
  prometheus:
    image: prom/prometheus:latest
    container_name: prometheus
    restart: unless-stopped
    ports:
      - '9090:9090'
    user: '0'
    command:
      - '--config.file=/etc/prometheus/prometheus.yml'
      - '--storage.tsdb.path=/prometheus/data'
      - '--storage.tsdb.retention=90d'
      - '--web.enable-lifecycle'
    volumes:
      - ./etc/prometheus:/etc/prometheus
      - ./data/prometheus/data:/prometheus/data
      - /etc/localtime:/etc/localtime
    depends_on:
      - cadvisor

  cadvisor:
    image: google/cadvisor:latest
    container_name: cadvisor
    restart: unless-stopped
    ports:
      - '8080:8080'
    volumes:
      - /:/rootfs:ro
      - /var/run:/var/run:rw
      - /sys:/sys:ro
      - /var/lib/docker/:/var/lib/docker:ro

  node-exporter:
    image: prom/node-exporter:latest
    container_name: node-exporter
    restart: unless-stopped
    ports:
      - '9100:9100'
    command:
      - '--path.procfs=/host/proc'
      - '--path.sysfs=/host/sys'
      - '--collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc)($$|/)'
      - '--collector.textfile.directory=/node_exporter/prom'
    volumes:
      - /proc:/host/proc
      - /sys:/host/sys
      - /:/rootfs
      - ./etc/node_exporter/prom:/node_exporter/prom

  grafana:
    image: grafana/grafana:latest
    container_name: grafana
    restart: unless-stopped
    ports:
      - '3000:3000'
    user: '0'
    volumes:
      - ./data/grafana:/var/lib/grafana
    environment:
      - GF_SECURITY_ADMIN_PASSWORD=admin
      - GF_USERS_ALLOW_SIGN_UP=false

 

vim ./etc/prometheus/prometheus.yml

scrape_configs:
  - job_name: 'prometheus'
    scrape_interval: 5s
    static_configs:
      - targets: ['192.168.1.24:9090']
  - job_name: 'node'
    scrape_interval: 5s
    static_configs:
      - targets: ['192.168.1.24:9100']
  - job_name: 'cadvisor'
    scrape_interval: 5s
    static_configs:
      - targets: ['192.168.1.24:8080']
  - job_name: 'RabbitMQ'
    scrape_interval: 5s
    static_configs:
      - targets: ['192.168.1.24:9099']

  

start

docker-compose up -d

 

Rabbit Cluster

docker-compose

rabbit1:
  image: bijukunjummen/rabbitmq-server:3.7.0
  hostname: rabbit1
  ports:
    - "5672:5672"
    - "15672:15672"
  environment:
    - RABBITMQ_DEFAULT_USER=admin
    - RABBITMQ_DEFAULT_PASS=123456
  volumes:
       - /etc/timezone:/etc/timezone
       - /etc/localtime:/etc/localtime
rabbit2:
  image: bijukunjummen/rabbitmq-server:3.7.0
  hostname: rabbit2
  links:
    - rabbit1
  environment:
   - CLUSTERED=true
   - CLUSTER_WITH=rabbit1
   - RAM_NODE=true
  ports:
      - "5673:5672"
      - "15673:15672"
  volumes:
       - /etc/timezone:/etc/timezone
       - /etc/localtime:/etc/localtime
rabbit3:
  image: bijukunjummen/rabbitmq-server:3.7.0
  hostname: rabbit3
  links:
    - rabbit1
    - rabbit2
  environment:
   - CLUSTERED=true
   - CLUSTER_WITH=rabbit1
  ports:
        - "5674:5672"
  volumes:
       - /etc/timezone:/etc/timezone
       - /etc/localtime:/etc/localtime

start

docker-compose up -d

 

rabbitmq_exporter

https://github.com/kbudde/rabbitmq_exporter/releases

wget https://github.com/kbudde/rabbitmq_exporter/releases/download/v1.0.0-RC4/rabbitmq_exporter-1.0.0-RC4.linux-amd64.tar.gz
tar zxf rabbitmq_exporter-1.0.0-RC4.linux-amd64.tar.gz

  

start

RABBIT_USER=admin RABBIT_PASSWORD=123456 OUTPUT_FORMAT=JSON PUBLISH_PORT=9099 RABBIT_URL=http://192.168.1.24:15672 nohup ./rabbitmq_exporter &

Prometheus monitor RabbitMQ

 cadvisor Error

Failed to start container manager: inotify_add_watch 
/sys/fs/cgroup/cpuacct,cpu: no such file or directory

 

solution

mount -o remount,rw '/sys/fs/cgroup'
ln -s /sys/fs/cgroup/cpu,cpuacct /sys/fs/cgroup/cpuacct,cpu

  

 

grafana import Json File

https://grafana.com/dashboards/2121

 

Prometheus monitor RabbitMQ

 

转载于:https://www.cnblogs.com/blogscc/p/10611380.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101018.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C++学习——CString,char * ,string的相互转换

    C++学习——CString,char * ,string的相互转换CString头文件#include <afx.h>string头文件#include <string.h>1、CString转char *CString cstr;char *p =(LPSTR)(LPCTSTR)cstr;2、string转 CStringCString.format(”%s”, string.c_str());用c_str()确实比dat…

    2022年8月18日
    6
  • 如何获取相应tableview中的touchesBegan事件[通俗易懂]

    如何获取相应tableview中的touchesBegan事件[通俗易懂]我

    2022年7月25日
    9
  • undefined pthread_create_android studio has stopped

    undefined pthread_create_android studio has stopped最近在DebugAndroid工程时,发现真机直接崩溃闪退,但直接run则没问题,debug闪退日志报错:Dumpingallthreadswithoutappropriatelocksheld:threadlistlockmutatorlock,之前调试还是好好的,为什么突然就不行了呢?具体日志如下:12-0710:37:05.736:I/System

    2025年11月3日
    4
  • 数组去重的5种方法[通俗易懂]

    数组去重的5种方法[通俗易懂]双重for循环去重 原理两两比较如果相等的话就删除第二个 例如:11132124 先让第一个1即arr[0]与后面的一个个比较如果后面的值等于arr[0]删除后面的值 第一次结束后的结果是13224删除了后面所有的1 同理第二次第三会删除与自己相同的元素详细介绍看代码注释1 2functionnoRepeat1(arr){…

    2022年6月22日
    53
  • static静态变量在内存中的存储[通俗易懂]

    static静态变量在内存中的存储[通俗易懂]static用来控制变量的存储方式和可见性    函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配 空间,函数在栈上分配的空间在此函数执行结束时会释放掉,这样就产生了一个 问题:如果想将函数中此变量的值保存至下一次调用时,如何实现?最容易想 到的方法是定义一个全局的变量,但定义为一个全局变量有许多缺点,最明显的 缺点是破坏了此变量的访问范围(使得在此函数中定义的变量,不仅…

    2022年5月3日
    97
  • Oracle函数——TO_DATE[通俗易懂]

    Oracle函数——TO_DATE[通俗易懂]TO_DATE含义:将具有固定格式的字符串类型的数据转化为相对应的Date类型数据,官网解释如下图使用方法TO_DATE("需要转换的字符串","日期格式&quot

    2022年7月3日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号