下载rpm并安装:
rpm安装官网:http://www.rabbitmq.com/install-rpm.html
- CentOs:
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-3.6.1-1.noarch.rpm
rpm --import https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
yum install rabbitmq-server-3.6.1-1.noarch.rpm (安装完后会有一个提示 按 y 就好了,会提示下载和安装erlang等依赖包)
启动:
service rabbitmq-server start(stop/status是停止和查看)
注册为开机启动:chkconfig rabbitmq-server on
缺省的log路径:
/var/log/rabbitmq
查看状态:
rabbitmqctl status
可以查看到缺省监听端口:
{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
配置文件:
环境变量配置:vi /etc/profile
按i在后面加入
#rabbitmq
export PATH=$PATH:usr/lib/rabbitmq/lib/rabbitmq_server-3.6.1/sbin
(其中usr/lib/rabbitmq/lib/rabbitmq_server-3.6.1是rabbitmq的安装路径)
用户管理:
新建用户:rabbitmqctl add_user admin admin123 (admin是用户名,admin123是用户密码)
删除用户: rabbitmqctl delete_user admin
查看用户列表:rabbitmqctl list_users
设置用户角色:rabbitmqctl set_user_tags admin administrator
用户权限:
查看所有用户的权限:rabbitmqctl list_permissions
设置用户权限:rabbitmqctl set_permissions admin '.*' '.*' '.*' (<conf> <write> <read>,正则表达式,'.*'表示所有权限)
清除用户权限:rabbitmqctl clear_permissions admin
各类角色:
- none
- 不能访问 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
设置用户角色:rabbitmqctl set_user_tags <user> [administrator | monitoring | policymaker | management]
权限和角色参考:http://www.rabbitmq.com/access-control.html
启用RabbitMQWeb管理插件:
rabbitmq-plugins enable rabbitmq_management
访问:http://<server-name>:15672/
打开CentOS防火墙:
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload