先去这个http://www.rabbitmq.com/releases/下载erlang环境和rpm(erlang的尽量高点,rabbitmq版本差不多就可以了,)
erlang-19.0.4-1.el6.x86_64
rabbitmq-server-3.6.10-1.el6.noarch
注意centos6和centos7是不同的
要看他的版本el6还是el7
yum install erlang-19.0.4-1.el6.x86_64
选择 y
然后安装
rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc
然后
yum install rabbitmq-server-3.6.10-1.el6.noarch
启动rabbitmq
service rabbitmq-server start 或者 /etc/init.d/rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server restart
启用RabbitMQWeb管理插件
rabbitmq-plugins enable rabbitmq_management
出于安全的考虑,guest这个默认的用户只能通过http://localhost:15672 来登录,其他的IP无法直接使用这个账号。 这对于服务器上没有安装桌面的情况是无法管理维护的,除非通过在前面添加一层代理向外提供服务,这个又有些麻烦了,这里通过配置文件来实现这个功能
只要编辑 /etc/rabbitmq/rabbitmq.config 文件,添加以下配置就可以了。
[
{rabbit, [{tcp_listeners, [5672]}, {loopback_users, ["admin"]}]}
].
现在添加了一个新授权用户admin,可以通过外网使用这个用户名和密码访问.(记得要先用命令添加这个命令才行, #rabbitmqctl add_user admin admin)我是通过在管理平台里直接添加的用户和密码的,我的测试环境装有桌面的。
1
|
#
rabbitmqctl add_user admin admin |
1
2
3
4
|
#
rabbitmqctl list_users Listing users ... admin guest
[administrator] |
Setting permissions for user "admin" in vhost "/" ...
1
|
#
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" |
1
2
3
4
|
#
rabbitmqctl list_permissions -p / Listing
permissions in vhost "/" ... admin
.* .* .* guest
.* .* .* |
可以看到添加用户成功了,但不是administrator角色,这里我们也将asdf用户设置为administrator角色.
在docker环境中配置rabbitmq时
rabbitmq的数据库名称规则是,[email protected],docker每次从docker image启动容器的时候会自动生成hostname,这样一来,你保存在主机上的数据库就会没用了,包括之前创建的用户也会没有了。所以在创建容器的时候必须指定--hostname=rabbitmqhostone,这样docker环境启动后rabbitmq就会一直读取固定目录中的数据了