一、通过yum命令在线安装RabbitMQ
yum在线安装,简单、快捷、自动安装相关依赖包。
1.安装Erlang环境(RabbitMQ由Erlang语言开发)
1.1)下载rpm安装包
官方地址:http://www.erlang.org/downloads
wget -O erlang-20.3.4-1.el7.centos.x86_64.rpm https://bintray.com/rabbitmq/rpm/download_file?file_path=erlang%2F20%2Fel%2F7%2Fx86_64%2Ferlang-20.3.4-1.el7.centos.x86_64.rpm
1.2)安装Erlang
yum install -y erlang-20.3.4-1.el7.centos.x86_64.rpm
1.3)检查Erlang是否安装成功
1[root@localhost ~]# erl -version 2Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 9.3 3[root@localhost ~]#
2.安装RabbitMQ
2.1)下载rpm安装包
官方地址:http://www.rabbitmq.com/download.html
wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.4/rabbitmq-server-3.7.4-1.el7.noarch.rpm
2.2)安装RabbitMQ
yum install -y rabbitmq-server-3.7.4-1.el7.noarch.rpm
2.3)检查RabbitMQ是否安装成功
1[root@localhost ~]# rabbitmqctl status 2Status of node rabbit@localhost ... 3[{pid,14618}, 4 {running_applications, 5 [{rabbitmq_management,"RabbitMQ Management Console","3.7.4"}, 6 {rabbitmq_management_agent,"RabbitMQ Management Agent","3.7.4"}, 7 {amqp_client,"RabbitMQ AMQP Client","3.7.4"}, 8 {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.7.4"}, 9 {cowboy,"Small, fast, modern HTTP server.","2.2.2"}, 10 {cowlib,"Support library for manipulating Web protocols.","2.1.0"}, 11 {rabbit,"RabbitMQ","3.7.4"}, 12 {rabbit_common, 13 "Modules shared by rabbitmq-server and rabbitmq-erlang-client", 14 "3.7.4"}, 15 ...
3.关于服务
3.1)启动服务
service rabbitmq-server start
3.2)停止服务
service rabbitmq-server stop
3.3)设置开机启动
chkconfig rabbitmq-server on
4.用户管理
4.1)查看用户列表
1[root@localhost ~]# rabbitmqctl list_users 2Listing users ... 3guest [administrator] 4[root@localhost ~]#
4.2)添加用户
rabbitmqctl add_user 用户名 密码
1[root@localhost ~]# rabbitmqctl add_user admin 123456 2Adding user "admin" ... 3[root@localhost ~]#
4.3)删除用户
rabbitmqctl delete_user 用户名
1[root@localhost ~]# rabbitmqctl delete_user admin 2Deleting user "admin" ... 3[root@localhost ~]#
4.4)修改用户密码
rabbitmqctl change_password 用户名 新密码
1[root@localhost ~]# rabbitmqctl change_password admin 666666 2Changing password for user "admin" ... 3[root@localhost ~]#
5.角色管理
5.1)角色说明

1none(普通用户) 2没有控制台操作权限。 3 4management(普通管理员) 5可以查看当前用户的queues, exchanges和bindings。 6可以查看和关闭当前用户的channels和connections。 7可以查看当前用户的virtual hosts的统计信息。 8 9policymaker(策略管理员) 10具有management权限及查看、创建和删除当前用户的policies和parameters。 11 12monitoring(监控管理员) 13具有management权限 14查看所有virtual hosts及全局的统计信息 15查看所有用户的connections和channels 16查看所有节点数据,如clustering和memory使用情况 17 18administrator(超级管理员) 19具有policymaker、monitoring权限 20查看、创建、删除所有virtual hosts 21查看、创建、删除所有users 22查看、创建、删除所有permissions 23可以关闭所有用户的connections
View Code
5.2)查看用户角色
rabbitmqctl list_users 用户名
1[root@localhost ~]# rabbitmqctl list_users 2Listing users ... 3admin [administrator] 4guest [administrator] 5[root@localhost ~]#
5.3)设置用户角色
rabbitmqctl set_user_tags admin 角色名称(支持同时设置多个角色)
1[root@localhost ~]# rabbitmqctl set_user_tags admin administrator 2Setting tags for user "admin" to [administrator] ... 3[root@localhost ~]#
6.权限管理
用户权限是指用户对exchange,queue的操作权限,包括配置权限,读写权限。配置权限会影响到exchange,queue的声明和删除。读写权限会影响到queue的读写消息、exchange发送消息以及queue和exchange的绑定操作。
6.1)查看用户权限
rabbitmqctl list_user_permissions 用户名
1[root@localhost ~]# rabbitmqctl list_user_permissions guest 2Listing permissions for user "guest" ... 3/ .* .* .* 4[root@localhost ~]#
6.2)设置用户权限
rabbitmqctl set_permissions -p 虚拟主机名称 用户名 <conf> <write> <read>
1[root@localhost ~]# rabbitmqctl set_permissions -p / admin '.*' '.*' '.*' 2Setting permissions for user "admin" in vhost "/" ... 3[root@localhost ~]#
7.虚拟主机管理
为什么需要虚拟主机(vhost)?因为RabbitMQ只能在虚拟主机的粒度上进行权限控制。每个vhost本质上是一个mini版的RabbitMQ服务器,拥有自己的队列、交换器和绑定等。
7.1)查看虚拟主机
1[root@localhost ~]# rabbitmqctl list_vhosts 2Listing vhosts ... 3/ 4[root@localhost ~]#
7.2)添加虚拟主机
rabbitmqctl add_vhost 虚拟主机名称
1[root@localhost ~]# rabbitmqctl add_vhost coreSystem 2Adding vhost "coreSystem" ... 3[root@localhost ~]#
7.3)删除虚拟主机
rabbitmqctl delete_vhost 虚拟主机名称
1[root@localhost ~]# rabbitmqctl delete_vhost coreSystem 2Deleting vhost "coreSystem" ... 3[root@localhost ~]#
8.web后台管理
8.1)启用后台管理插件
1[root@localhost ~]# rabbitmq-plugins enable rabbitmq_management 2The following plugins have been configured: 3 rabbitmq_management 4 rabbitmq_management_agent 5 rabbitmq_web_dispatch 6Applying plugin configuration to rabbit@localhost... 7The following plugins have been enabled: 8 rabbitmq_management 9 rabbitmq_management_agent 10 rabbitmq_web_dispatch 11 12started 3 plugins. 13[root@localhost ~]#
8.2)登录
浏览器输入:http://服务器Ip:15672/
