RabbitMQ简单概述
RabbitMQ是一个开源的遵循AMQP协议实现的基于Erlang语言编写,支持多种语言,用于在分布式系统中存储消息、转发消息、具有高可用、高扩展性、易用性的消息队列。
RabbitMQ官网https://www.rabbitmq.com/
RabbitMQ安装
- Ubuntu18.0版本安装-------自己的虚拟机版本
- 安装Erlang(RabbitMQ需要erlang语言的支持)
sudo apt-get install erlang-nox #安装完后查看erlang是否安装成功 erl -v erl
- 更新源
sudo apt-get update
- 安装RabbitMQ RabbitMQ下载地址
初次安装出现 ERROR: node with name “rabbit” already running on ****sudo apt-get install rabbitmq-server
在Terminal中输入 sudo rabbitmqctl stop 并执行。 - 启动RabbitMQ服务
#启动服务 sudo rabbitmq-server start systemctl start rabbitmq-server #停止服务 sudo rabbitmq-server stop systemctl stop rabbitmq-server #重启服务 sudo rabbitmq-server restart systemctl restart rabbitmq-server #查看服务状态 sudo rabbitmqctl status systemctl status rabbitmq-server
- 安装web管理工具(地址:http://localhost:15672/)
先到rabbitmq目录下然后执行
sudo rabbitmq-plugins enable rabbitmq_management
注:rabbitmq有一个默认的账号密码,都为guest,默认情况下只能在本机localhost下访问,所以远程访问需要添加用户。lyl-3052@lyl3052-virtual-machine:/etc/rabbitmq$ sudo rabbitmq-plugins enablerabbitmq_management The following plugins have been enabled: amqp_client cowlib cowboy rabbitmq_web_dispatch rabbitmq_management_agent rabbitmq_management Applying plugin configuration to rabbit@lyl3052-virtual-machine... started 6 plugins. lyl-3052@lyl3052-virtual-machine:/etc/rabbitmq$
- 安装Erlang(RabbitMQ需要erlang语言的支持)
RabbitMQ授权、用户操作
操作描述 | 相关命令 | 说明 |
---|---|---|
新增用户 | sudo rabbitmqctl add_user admin admin | 新增一个账号密码均为admin的用户 |
分配权限 | sudo rabbitmqctl set_user_tags admin administrator | 为admin用户分配administrator权限 |
修改密码 | sudo rabbitmqctl change_password admin admin123 | 更改admin用户的密码为admin123 |
新增用户 | sudo rabbitmqctl delete_user admin | 删除admin的用户 |
查看用户清单 | sudo rabbitmqctl list_users | |
为用户添加资源权限 | sudo rabbitmqctl.bat set_permissions -p / admin “." ".” ".*" |
RabbitMQ角色分类
-
none 其他(无法登录web图形页面)
不能访问 management plugin -
management 普通管理员(只能查看自己的节点信息)
用户可以通过AMQP做的任何事外加:
列出自己可以通过AMQP登入的virtual hosts
查看自己的virtual hosts中的queues, exchanges 和 bindings
查看和关闭自己的channels 和 connections
查看有关自己的virtual hosts的“全局”的统计信息,包含其他用户在这些virtual hosts中的活动。 -
policymaker 策略制定者(只能创建 、查看自己的节点信息)
management可以做的任何事外加:
查看、创建和删除自己的virtual hosts所属的policies和parameters -
monitoring 监控者(查看别人的节点信息,不能删)
management可以做的任何事外加:
列出所有virtual hosts,包括他们不能登录的virtual hosts
查看其他用户的connections和channels
查看节点级别的数据如clustering和memory使用情况
查看真正的关于所有virtual hosts的全局的统计信息 -
administrator 超级管理员
policymaker和monitoring可以做的任何事外加:
创建和删除virtual hosts
查看、创建和删除users
查看创建和删除permissions
关闭其他用户的connections