作者:奶爸乳酪 | 来源:互联网 | 2023-08-23 17:47
一、安装
1. 安装erlang
yum install erlang
2.下载rpm包
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm
3. 安装rabbitmq
// 使用刚刚下载的包进行安装
yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm
//启动
service rabbitmq-server start
//查看状态
service rabbitmq-server status
//关闭
service rabbitmq-server stop
4. prometheus监控rabbitmq
4.1 exporter的安装
下载exporter
进入https://github.com/kbudde/rabbitmq_exporter/releases 选择适合自己的版本
复制下载链接地址,直接到服务器执行wget进行下载
wget https://github.com/kbudde/rabbitmq_exporter/releases/download/v0.20.0/rabbitmq_exporter-0.20.0.linux-amd64.tar.gz
解压
tar -xf rabbitmq_exporter-0.20.0.linux-amd64.tar.gz
运行exporter
RABBIT_USER=admin RABBIT_PASSWORD=sscfadmin OUTPUT_FORMAT=JSON PUBLISH_PORT=9099 RABBIT_URL=http://10.201.5.216:25672 nohup ./rabbitmq_exporter &
验证:
浏览器访问 http://10.201.5.216:9099/metrics 得到如下返回的话,说明exporter安装没有问题
4.2 配置prometheus进行监控
配置数据采集: vim /usr/local/prometheus/prometheus.yml 添加如下配置
- job_name: 'myRabbit_export'
scrape_interval: 60s
scrape_timeout: 60s
static_configs:
- targets: ['10.201.5.216:9099']
打开prometheus的web端就可以看到配置的targets
4.3 配置rabbitmq的告警文件
vim /usr/local/prometheus/rules/rabbitmq_alert.yml ( 因为rabbitmq运行很正常,所以这里只是测试告警作用,所以用运行状态这一项来作为监控项,如果需要监控多项指标,就配置多个规则即可)
groups:
- name: NodeStatus
rules:
- alert: "rabbitmq实例正常"
expr: rabbitmq_up == 1
for: 5s
labels:
group: sscfops
alertname: test_rabbitmq_monitor
severity: High
annotations:
description: "rabbitmq {{ $labels.instance }} is ok"
summary: "测试rabbitmq监控使用"
~
说明:当expr表达式为真时,说明满足了告警条件。prometheus就会把告警推送给alertmanger。alertmanger会对prometheus传过来的告警进行一些列的静默,分组,抑制处理后,再应用上模板以后,通过(wechat,email,message,webhook)等方式把告警发送给对应的人或者组。
4.4 结果验证
通过上面的步骤,告警邮件最终发送到邮箱,如下图