prometheus-operator 监控 Rabbitmq集群
首先我们监控服务需要知道prometheus-operator是如何去工作的,才好去写相关的yaml配置,这里我划分成了5个部分,如果容器服务本身就以k8s来编排的,那就只需要三步,这里因为我的rabbitmq是部署在外面所以需要5步,它们分别是:
1.创建 Endpoints # 将外部服务映射进来
2.创建 Service # 创建servicName,嫌麻烦也可以不写,这里1,2步只是为了隐藏真实的地址
3.创建采集工具使用deploy部署
4.创建采集工具Service ##clusterIP: None
5.创建ServiceMonitor
我的MQ管理地址为 192.168.100.192 : 15672
vim prometheus-rabbitmq.yaml
apiVersion: v1
kind: Endpoints
metadata:
name: rabbitmq-management
labels:
k8s-app: rabbitmq-management
subsets:
- addresses:
- ip: 192.168.100.192
ports:
- name: api
port: 15672
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: rabbitmq-management
labels:
k8s-app: rabbitmq-management
spec:
type: ClusterIP
ports:
- name: api
port: 15672
protocol: TCP
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: rabbitmq-exporter
spec:
replicas: 1
template:
metadata:
labels:
k8s-app: rabbitmq-exporter
spec:
containers:
- name: rabbitmq-exporter
image: kbudde/rabbitmq-exporter
env:
- name: PUBLISH_PORT
value: "9099"
- name: RABBIT_CAPABILITIES
value: "bert,no_sort"
- name: RABBIT_USER
value: "you user"
- name: RABBIT_PASSWORD
value: "you password"
- name: RABBIT_URL
value: http://rabbitmq-management:15672
imagePullPolicy: IfNotPresent
ports:
- containerPort: 9099
---
apiVersion: v1
kind: Service
metadata:
name: rabbitmq-exporter
labels:
k8s-app: rabbitmq-exporter
spec:
type: ClusterIP
clusterIP: None
selector:
k8s-app: rabbitmq-exporter
ports:
- name: api
port: 9099
protocol: TCP
kuctl apply -f prometheus-rabbitmq.yaml -n 指定命名空间 PS:我的是以项目+环境来区分的

上述可以进行测试
访问 curl http://10.244.6.145:9099/metrics

创建ServiceMonitor 让其能够自动发现并注册
vim prometheus-rabbitmq-k8s-monitoring.yaml
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: rabbitmq-exporter
namespace: monitoring
labels:
k8s-app: rabbitmq-exporter
namespace: monitoring
spec:
jobLabel: k8s-app
endpoints:
- port: api
interval: 30s
scheme: http
selector:
matchLabels:
k8s-app: rabbitmq-exporter
namespaceSelector:
matchNames:
- default #你采集的数据在哪里,就写它的namespaces
最后 kubectl apply -f prometheus-rabbitmq-k8s-monitoring.yaml

模版是获取的官网新增了namespaces变量,这样就方便多了。
至于规则告警,可以根据自己想要监测的数据来进行报警就不多说了。
prometheus-operator 监控 Rabbitmq集群的更多相关文章
- 使用Prometheus和Grafana监控RabbitMQ集群 (使用RabbitMQ自带插件)
配置RabbitMQ集群 官方文档:https://www.rabbitmq.com/prometheus.html#quick-start 官方github地址:https://github.com ...
- prometheus operator(Kubernetes 集群监控)
一.Prometheus Operator 介绍 Prometheus Operator 是 CoreOS 开发的基于 Prometheus 的 Kubernetes 监控方案,也可能是目前功能最全面 ...
- Rancher2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群
目录 1.Prometheus & Grafana 介绍 2.环境.软件准备 3.Rancher 2.x 应用商店 4.一键式部署 Prometheus 5.验证 Prometheus + G ...
- zabbix3.2监控rabbitmq集群
监控模板和脚本github地址:https://github.com/jasonmcintosh/rabbitmq-zabbix/tree/master/scripts/rabbitmq .将rabb ...
- 【集群监控】JMX exporter+Prometheus+Grafana监控Hadoop集群
下载jmx_exporter的jar包 https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.3.1/ ...
- k8s中安装rabbitmq集群
官方文档地址:https://www.rabbitmq.com/kubernetes/operator/quickstart-operator.html 要求 1.k8s版本要1.18及其以上 2.能 ...
- 基于prometheus监控k8s集群
本文建立在你已经会安装prometheus服务的基础之上,如果你还不会安装,请参考:prometheus多维度监控容器 如果你还没有安装库k8s集群,情参考: 从零开始搭建基于calico的kuben ...
- Kubernetes之利用prometheus监控K8S集群
prometheus它是一个主动拉取的数据库,在K8S中应该展示图形的grafana数据实例化要保存下来,使用分布式文件系统加动态PV,但是在本测试环境中使用本地磁盘,安装采集数据的agent使用Da ...
- Kubernetes集群部署史上最详细(二)Prometheus监控Kubernetes集群
使用Prometheus监控Kubernetes集群 监控方面Grafana采用YUM安装通过服务形式运行,部署在Master上,而Prometheus则通过POD运行,Grafana通过使用Prom ...
随机推荐
- 【bzoj4543】[POI2014]Hotel加强版
题目 抄题解.jpg 发现原来的\(O(n^2)\)的换根\(dp\)好像行不通了呀 我们考虑非常牛逼的长链剖分 我们设\(f[x][j]\)表示在\(x\)的子树中距离\(x\)为\(j\)的点有多 ...
- centos6.5添加阿里docker加速器
1. 配置阿里docker加速器 vi /etc/sysconfig/docker 在文件末尾追加下面两行 other_args="--registry-mirror=https://pl8 ...
- week3编程作业: Logistic Regression中一些难点的解读
%% ============ Part : Compute Cost and Gradient ============ % In this part of the exercise, you wi ...
- git +maven+java+jenkins自动化代码持续集成
1.安装JDK JDK下载: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 新 ...
- VUE 生命周期 详解
beforeCreate vue中的第一个生命周期,在vue实列被完全创建出来之前会执行.注意:在beforeCreate生命周期函数执行时,data.methods.中的数据都还没有初始化. cra ...
- 简单利用Clover四叶草安装U盘安装黑苹果
配置是I5-7600K+技嘉Z270X-UD3+GTX 1050+简单利用Clover四叶草安装U盘安装黑苹果 <ignore_js_op><ignore_js_op> 成功黑 ...
- 达梦数据库DM7小结
除了很多主流的数据库,我们很熟悉之外,越来越多的国产数据库也涌现出来. 这次就小结一些有关武汉的达梦数据库7这个开发版数据库的有别或者需要注意的地方进行一个简单备注吧. 1.第一件大事就是下载.数据库 ...
- leetcode-53-Maximum Subarray(动态规划详解)
题目描述: Given an integer array nums, find the contiguous subarray (containing at least one number) whi ...
- 补交课下测试(ch12并发编程) 08.第八周
有关线程图,下面说法正确的是() A .图的原点表示没有任何线程完成一条指令的初始状态 B . 向右向上是合法的转换 C .向左向下是合法的转换 D .对角线是合法的转换 E .一个程序执行的历史被模 ...
- 2017-2018-1 20155317 《信息安全系统设计基础》课堂实践——实现mypwd
2017-2018-1 20155317 <信息安全系统设计基础>课堂实践——实现mypwd 1 . 学习使用pwd 很显然pwd命令的意思是打印出该文件当前的绝对路径 2 . 了解pwd ...