设为首页 收藏本站
查看: 4811|回复: 0

[经验分享] 使用Zabbix监控RabbitMQ

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-2-29 09:02:25 | 显示全部楼层 |阅读模式
一 应用场景描述
线上业务使用RabbitMQ作为消息队列中间件,那么作为运维人员对RabbitMQ的监控就很重要,本文就针对如何从头到尾使用Zabbix来监控RabbitMQ进行说明。

二 RabbitMQ监控要点

RabbitMQ官方提供两种方法来管理和监控RabbitMQ。
1.使用rabbitmqctl管理和监控

Usage:
rabbitmqctl [-n <node>] [-q] <command> [<command options>]

查看虚拟主机
# rabbitmqctl list_vhosts

查看队列
# rabbitmqctl list_queues

查看exchanges

# rabbitmqctl list_exchanges

查看用户
# rabbitmqctl list_users

查看连接

# rabbitmqctl list_connections

查看消费者信息

# rabbitmqctl list_consumers

查看环境变量

# rabbitmqctl environment

查看未被确认的队列

# rabbitmqctl list_queues  name messages_unacknowledged

查看单个队列的内存使用

# rabbitmqctl list_queues name memory

查看准备就绪的队列
# rabbitmqctl list_queues name messages_ready


2.使用RabbitMQ Management插件来监控和管理
开启Management插件

# rabbitmq-plugins enable rabbitmq_management

http://172.28.2.157:15672/
通过这样的网址访问可以看到RabbitMQ的状态
http://172.28.2.157:15672/cli/rabbitmqadmin
下载rabbitmqadmin管理工具

获取vhost列表
# curl -i -u guest:guest http://localhost:15672/api/vhosts


获取频道列表,限制显示格式

# curl -i -u guest:guest "http://localhost:15672/api/channels?sort=message_stats.publish_details.rate&sort_reverse=true&columns=name,message_stats.publish_details.rate,message_stats.deliver_get_details.rate"

显示概括信息
# curl -i -u guest:guest "http://localhost:15672/api/overview"
management_version  管理插件版本
cluster_name     整个RabbitMQ集群的名称,通过rabbitmqctl set_cluster_name 进行设置
publish        发布的消息总数
queue_totals     显示准备就绪的消息,未确认的消息,未提交的消息等

statistics_db_event_queue    显示还未必数据库处理的事件数量
consumers       消费者个数
queues         队列长度
exchanges       队列交换机的数量

connections     连接数

channels       频道数量



显示节点信息
# curl -i -u guest:guest "http://localhost:15672/api/nodes"

disk_free   磁盘剩余空间,以字节表示
disk_free_limit    磁盘报警的阀值
fd_used    使用掉的文件描述符数量

fd_total   可用的文件描述符数量
io_read_avg_time      读操作平均时间,毫秒为单位
io_read_bytes        总共读入磁盘数据大小,以字节为单位
io_read_count        总共读操作的数量

io_seek_avg_time      seek操作的平均时间,毫秒单位
io_seek_count        seek操作总量
io_sync_avg_time      fsync操作的平均时间,毫秒为单位
io_sync_count        fsync操作的总量
io_write_avg_time      每个磁盘写操作的平均时间,毫秒为单位
io_write_bytes       写入磁盘数据总量,以字节为单位
io_write_count       磁盘写操作总量
mem_used           内存使用字节
mem_limit          内存报警阀值,默认是总的物理内存的40%

mnesia_disk_tx_count   需要写入到磁盘的Mnesia事务的数量
mnesia_ram_tx_count    不需要写入到磁盘的Mnesia事务的数量
msg_store_write_count  写入到消息存储的消息数量
msg_store_read_count   从消息存储读入的消息数量
proc_used         Erlang进程的使用数量
proc_total        Erlang进程的最大数量
queue_index_journal_write_count    写入到队列索引日志的记录数量。每条记录表示一个被发布到队列,从消息队列中被投递出或者在消息队列中被q确认的消息
queue_index_read_count     从队列索引读出的记录数量
queue_index_write_count    写入到队列索引的记录数量

sockets_used        以socket方式使用掉的文件描述符数量

partitions         

uptime           自从Erlang VM启动时,运行的时间,单位好毫秒

run_queue         等待运行的Erlang进程数量
processors        检测到被Erlang进程使用到的内核数量
net_ticktime       当前设置的内核tick time


查看频道信息
# curl -i -u guest:guest "http://localhost:15672/api/channels"

查看交换机信息
# curl -i -u guest:guest "http://localhost:15672/api/exchanges"

查看队列信息
# curl -i -u guest:guest "http://localhost:15672/api/queues"


查看vhosts信息
# curl -i -u guest:guest "http://localhost:15672/api/vhosts/?name=/"






三 编写监控脚本和添加Zabbix配置文件



四 添加Zabbix监控模板






参考文档:

http://blog.thomasvandoren.com/m ... es-with-zabbix.html
http://www.rabbitmq.com/how.html#management
https://github.com/alfss/zabbix-rabbitmq
https://cdn.rawgit.com/rabbitmq/ ... /www/api/index.html
https://github.com/jasonmcintosh/rabbitmq-zabbix
http://chase-seibert.github.io/b ... ge-with-nagios.html



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-184177-1-1.html 上篇帖子: Zabbix 3.0 趋势预测,预警故障 下篇帖子: zabbix通过api批量添加web监控 监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表