第一、下载erlang和rabbitmq-server的rpm:
wget http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm
注:如果遇到下载缓慢,可以尝试使用百度云盘的离线下载
然后,把下载的rpm文件都放到一个文件夹中,方便安装
第二、安装erlang:
rpm -ivh erlang-19.0.4-1.el7.centos.x86_64.rpm
测试是否安装成功:
第三、安装rabbitmq:
rpm -ivh rabbitmq-server-3.6.6-1.el7.noarch.rpm
在安装rabbitmq时提示依赖socat
yum install socat
然后再次安装rabbitmq
第四、启动和关闭:
#启动
/sbin/service rabbitmq-server start
#状态
/sbin/service rabbitmq-server status
#关闭
/sbin/service rabbitmq-server stop
第五、cd 到/sbin目录下:
./rabbitmq-plugins list
./rabbitmqctl status
第六、添加web管理插件
rabbitmq-plugins enable rabbitmq_management
启用了rabbitmq的管理插件,会有一个web管理界面,默认监听端口15672,将此端口在防火墙上打开,则可以访问web界面:
使用默认的用户 guest / guest (此也为管理员用户)登陆,会发现无法登陆,报错:User can only log in via localhost。那是因为默认是限制了guest用户只能在本机登陆,也就是只能登陆localhost:15672。可以通过修改配置文件rabbitmq.conf,取消这个限制: loopback_users这个项就是控制访问的,如果只是取消guest用户的话,只需要loopback_users.guest = false 即可。
注意:
{loopback_users, [<<"guest">>]}
这个是erlang格式的原配置,后面是一个列表,可以自定义添加多个用户。是用来定义需要被限制登录的用户。默认是只有guest这一个用户。我们这里只需要设置loopback_users.guest = false 就可以解除guest的限制了。如图:
然后,就能登陆到web控制界面:
OK,到此rabbitmq就算是装好了,rabbitmq的webui功能比较齐全,可以做到很多东西,包括常见的用户管理,权限管理,vhost管理等等。如图
点击自身用户,可以设置用户的权限
第七、解析
总的来说,使用webui已经非常方便了,可以实现基本常用的管理操作。当然除了用web ui,还有用命令行:下面列举一下常用的一些命令行操作:
服务启动停止:
启动:
rabbitmq-server -detached
停止:
rabbitmqctl stop
插件管理:
插件列表: rabbitmq-plugins list
启动插件: rabbitmq-plugins enable XXX (XXX为插件名)
停用插件: rabbitmq-plugins disable XXX
添加用户管理
rabbitmqctl add_user admin admin
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
权限管理:
列出所有用户权限: rabbitmqctl list_permissions
查看制定用户权限: rabbitmqctl list_user_permissions username
清除用户权限: rabbitmqctl clear_permissions [-p vhostpath] username
设置用户权限: rabbitmqctl set_permissions [-p vhostpath] username conf write read
conf: 一个正则匹配哪些资源能被该用户访问
write:一个正则匹配哪些资源能被该用户写入
read:一个正则匹配哪些资源能被该用户读取