一、系统架构

二、监控

本指南涵盖了使用两个流行工具进行 RabbitMQ 监控: Prometheus,一个监控工具包;和Grafana,一个指标可视化系统。这些工具共同构成了一个强大的工具包,用于 RabbitMQ 集群的长期指标收集和监控。虽然RabbitMQ 管理 UI也提供了对指标子集的访问,但它的设计并没有试图成为一个长期的指标收集解决方案。

1、开启监控

rabbitmq-plugins enable rabbitmq_prometheus

2、健康指标

仪表板顶部的单个统计指标捕获单个 RabbitMQ 集群的运行状况。在这种情况下,只有一个 RabbitMQ 集群 rabbitmq-overview,如仪表板标题正下方的集群下拉菜单中所示。

所有 RabbitMQ Grafana 仪表板上的面板使用不同的颜色来捕获以下指标状态:

  • 绿色表示指标值在健康范围内
  • 蓝色表示未充分利用或某种形式的退化
  • 红色表示指标值低于或高于健康范围

3、grafana图标

名称

备注

Unacknowledged messages

未确认消息数量

Incoming messages/s

每秒消费量

Publishers

生产者数量

Connections

总连接数量

Ougoing messsages/s

每秒生产量

Consumers

消费者数量

Channels

通道数量

Nodes

节点数量(Ivan加的)

存活时间

存活时间(Ivan加的)

Ready messages

消息总量

Queues

队列总数量

File descriptors available

可用文件句柄 kernel参数设置

TCP sockets available

可用socket  kernel参数设置

   

指标的速率变化:

4、rabbmit 管理页面监控

需要开启rabbitmq_top

rabbitmq-plugins enable rabbitmq_top

5、命令行故障排查

rabbitmqctl cluster_status

rabbitmq-diagnostics check_running

rabbitmq-diagnostics -q status

rabbitmq-diagnostics -q check_local_alarms

rabbitmq-diagnostics -q memory_breakdown

rabbitmq-diagnostics -q check_virtual_hosts

rabbitmq-diagnostics node_health_check

三、运维

1、用户权限管理

对于生产环境,删除默认用户 ( guest )。默认情况下,默认用户只能从本地主机连接,因为它具有众所周知的凭据。考虑创建一个具有管理权限和生成密码的单独用户,而不是启用远程连接。建议为每个应用程序使用一个单独的用户。例如,如果您有一个移动应用程序、一个 Web 应用程序和一个数据聚合系统,那么您将有 3 个独立的用户。

rabbitmqctl add_user admin

rabbitmqctl add_user_tags admin administrator

#设置权限

rabbitmqctl set_permissions --vhost / admin ".*" ".*" ".*"

#修改密码

rabbitmqctl change_password admin newpass

2、内存调整

vm_memory_high_watermark.relative=0.4 默认是0.4

vm_memory_high_watermark.absolute = 2GB

如果定义了相对值,那么绝对值就会失效

修改配置文件/etc/rabbitmq/rabbitmq.conf

listeners.tcp.default = 5672

management.tcp.port = 15672

vm_memory_high_watermark.relative=0.4

3、rabbitmq关闭和启动

systemctl stop rabbitmq-server

systemctl start rabbitmq-server

4、备份和还原

rabbitmq-management管理页面,备份的是定义不包含具体的消息。

export导出,import导入,适合环境迁移时使用

5、更改集群类型

rabbitmqctl change_cluster_node_type  disc #硬盘,数据安全

rabbitmqctl change_cluster_node_type  ram #内存,重启,数据丢失

rabbitmq监控与运维的更多相关文章

  1. 无监控不运维——使用 Python 写一个小小的项目监控

    在公司里做的一个接口系统,主要是对接第三方的系统接口,所以,这个系统里会和很多其他公司的项目交互.随之而来一个很蛋疼的问题,这么多公司的接口,不同公司接口的稳定性差别很大,访问量大的时候,有的不怎么行 ...

  2. 基于Prometheus和Grafana的监控平台 - 运维告警

    通过前面几篇文章我们搭建好了监控环境并且监控了服务器.数据库.应用,运维人员可以实时了解当前被监控对象的运行情况,但是他们不可能时时坐在电脑边上盯着DashBoard,这就需要一个告警功能,当服务器或 ...

  3. rabbitmq集群运维一点总结

    说明:以下操作都以三节点集群为例,机器名标记为机器A.机器B.机器C,如果为双节点忽略机器C,如果为各多节点则与机器C操作相同 一.rabbitmq集群必要条件 1.1.绑定实体ip,即ip a所能查 ...

  4. 【Kafka】监控及运维——kafka-eagle

    目录 简单介绍 概述 安装部署 一.环境要求 二.下载源码包并解压 三.准备数据库 四.修改配置文件 五.配置环境变量 六.启动kafka-eagle 七.成功运行 简单介绍 概述 Kafka-eag ...

  5. Jenkins用HTTP Request Plugin插件进行网站的监控(运维监控)

    使用的插件: [HTTP Request Plugin] 思路: 说明:只能是网站是否正常打开,而不能是这个网站业务是否正常,如果是后者,则需要写特定的接口进行请求处理. 1.通过插件,发送GET请求 ...

  6. Redis缓存接入监控、运维平台CacheCloud

    改造RedisConnectionFactory /** * 根据缓存策略的不同,RedisConnectionFactory不同 * 示例是单机模式. * * @return */@Beanpubl ...

  7. 转-4年!我对OpenStack运维架构的总结

    4年!我对OpenStack运维架构的总结 原创: 徐超 云技术之家 今天 前言 应“云技术社区”北极熊之邀,写点东西.思来想去云计算范畴实在广泛,自然就聊点最近话题异常火热,让广大云计算从业者爱之深 ...

  8. [转] 运维知识体系 -v3.1 作者:赵舜东(赵班长)转载请注明来自于-新运维社区:https://www.unixhot.com

    [From]https://www.unixhot.com/page/ops [运维知识体系]-v3.1 作者:赵舜东(赵班长) (转载请注明来自于-新运维社区:https://www.unixhot ...

  9. 对OpenStack运维架构的总结(转)

    这里,仅从技术角度出发,谈谈OpenStack云平台在部署.架构和运维实施等方面的感想. 缘起,在2014年大二首次接触到OpenStack,当时国内外资料远没有当前这么丰富,为安装一个OpenSta ...

  10. (转) 关于成为linux运维工程师需要掌握的技能

    曾经在一年多前写了一篇关于要成为linux运维需要掌握哪些技能和工具的贴子,然后不小心被好几个网友抄袭转发到其它网站上,当然有些是认识的,最后还很幸运地被某些热心的学习者把那段内容剪下来当作圣经般的参 ...

随机推荐

  1. [数据结构]普里姆(Prim)算法生成最小生成树

    前提介绍:最小生成树概念 一个连通图的生成树是图的极小连通子图,它包含图中的所有定点,并且只含尽可能少的边,这意味着对于生成树来说,就砍去使生成树变成非连通图:若给它怎家一条边就会形成图中的一条回路. ...

  2. BatteryStatsHelper.java源码分析

    在分析PowerUsageSummary的时候,其实可以发现主要获取应用和服务电量使用情况的实现是在BatteryStatsHelper.java中 还是在线网站http://androidxref. ...

  3. (转载)零日攻击(Zero-Day Attacks)

    零日攻击是网络安全行业中十分常见的攻击方式之一,其具有很大的突发性与破坏性,那么零日攻击是什么?如何防范零日攻击?以下是详细的内容介绍. 零日攻击是什么? 零日漏洞或零时差漏洞通常是指还没有补丁的安全 ...

  4. 如何进行动态ip的域名解析设置?

    如何进行动态ip的域名解析设置?目前,有一部分域名客户出于节省成本.技术验证等因素,会把自己家里或是部门的电脑用来当做Web服务器.mail服务器或是ftp服务器.如果想提供给其他人长期浏览,一般都要 ...

  5. Blazor如何实现类似于微信的Tab切换?

    是否有小伙伴在使用tab的时候想进行滑动切换Tab? 并且有滑动左出左进,右出右进的效果 ,本文将讲解怎么在Blazor中去通过滑动切换Tab 本文中的UI组件使用的是MASA Blazor,您也可以 ...

  6. win32com操作word API精讲 第六集 Range(四)对齐和缩进

    本课程<win32com操作word API精讲&项目实战>同步在B站.今日头条.视频号及本公众号发布.其中本公众号以发布文字教程为主. 今天是大年初二,一灯在此祝愿各位朋友兔年吉 ...

  7. 千姿百态,瞬息万变,Win11系统NeoVim打造全能/全栈编辑器(前端/Css/Js/Vue/Golang/Ruby/ChatGpt)

    我曾经多次向人推荐Vim,其热情程度有些类似现在卖保险的,有的时候,人们会因为一些弥足珍贵的美好暗暗渴望一个巨大的负面,比如因为想重温手动挡的快乐而渴望买下一辆二十万公里的老爷车,比如因为所谓完美的音 ...

  8. Array list练习

    Array list练习 数据添加到集合 生成6个1~33之间的随机整数,添加到集合,并遍历 public class Test01ArrayList { public static void mai ...

  9. 宠物小精灵之收服(等级考试4级 2021-03 T1)

    题目: 此题目可转化为 01背包问题 dp[ i ] [ j ] [ l ] 表示i个精灵球.j点体力.l 个精灵时最多收复精灵的个数. 注意事项:开三维数组一定要贴着给的数据开,本题中开dp[100 ...

  10. Vue13 样式动态绑定

    1 class样式的动态绑定 1.1 说明 通过命令v-bind:class设置一个对象,动态切换class.可以简写为:class. class=""可以和:class=&quo ...