程序员

阿里云ECS安装部署RabbitMQ3.7.x

作者:admin 2021-04-21 我要评论

RabbitMQ是一个开源的消息代理和队列服务器,通过Erlang编写,用来通过普通协议在完全不同的应用之间共享数据。并且RabbitMQ是基于高级消息队列(AMQP)协议的。...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

RabbitMQ是一个开源的消息代理和队列服务器,通过Erlang编写,用来通过普通协议在完全不同的应用之间共享数据。并且RabbitMQ是基于高级消息队列(AMQP)协议的。

当前以Centos7系统为例,部署RabbitMQ3.7.x,由于RabbitMQ需要Erlang支持,所以这里先安装Erlang,你可以通过epel源来安装(epel提供的版本过旧),也可以通过配置yum源来安装,我这里以yum源来安装。

安装Erlang

1、配置Erlang源

cat /etc/yum.repos.d/rabbitmq-erlang.repo EOF
[rabbitmq-erlang]
name=rabbitmq-erlang
baseurl=https://dl.bintray.com/rabbitmq-erlang/rpm/erlang/22/el/7
gpgcheck=1
gpgkey=https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
repo_gpgcheck=0
enabled=1
EOF

2、安装erlang和socat

yum install erlang socat -y

3、查看erlang版本

erl -version
Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.7.2

可以直接运行erl命令切换到Erlang shell

erl
Erlang/OTP 22 [erts-10.7.2] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1] [hipe]
Eshell V10.7.2 (abort with ^G)
1
按ctrl+c两次退出
安装RabbitMQ

1、配置rabbitmq源

cat /etc/yum.repos.d/rabbitmq.repo EOF
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/
gpgcheck=0
repo_gpgcheck=0
enabled=1
EOF

2、安装rabbitmq

yum install rabbitmq-server -y

3、启动RabbitMQ

注意:rabbitmq默认以系统用户rabbitmq身份运行,如果更改节点数据或日志的位置,确保文件权限是rabbitmq(并且还要更新环境变量)

systemctl start rabbitmq-server

4、设置开机自启

systemctl enable rabbitmq-server

5、启用rabbitmq的web控制台

rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node rabbit@whsir6:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@whsir6...
The following plugins have been enabled:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch

started 3 plugins.

6、刷新文件权限

chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/

注:rabbitmq默认账号密码为guest,但是guest用户只能通过localhost登录使用,所以我这里建议修改guest用户的密码及新建账号来管理rabbitmq

用户标签

在该版本的rabbitmq中默认有六种标签设置,默认新建的用户标签为none

administrator(超级管理员):无需解释,至高权限
monitoring(监控者):可以查看节点相关信息、内存、集群、统计等情况
policymaker(策略制定者):可以查看,创建和删除策略和参数,无法查看节点信息
management(普通管理者):可以查看队列、交换和绑定,无法查看节点信息,也无法对策略进行管理
impersonator(模拟者):允许应用程序伪造用户ID
none(无):无法访问管理插件

权限控制

rabbitmqctl set_permissions [-p ]

vhost被授予权限的主机
user被授予权限的用户
conf正则匹配用户在哪些资源具有配置权限
write正则匹配用户在哪些资源具有写权限
read正则匹配用户在哪些资源具有读权限

配置用户

添加rabbitmqWeb控制台管理用户(wuhao是你要添加的用户名,thisispw是该用户的密码)

rabbitmqctl add_user wuhao thisispw

查看当前用户列表

rabbitmqctl list_users

用户标签分配,我这里为了演示,将administrator分配给用户wuhao

rabbitmqctl set_user_tags wuhao administrator

设置wuhao用户在主机所有资源上可配置、可写、可读的权限

rabbitmqctl set_permissions -p / wuhao "." "." ".*"

访问http://IP:15672/,用户wuhao,密码thisispw,登录RabbitMQ


本文转自网络,原文链接:https://developer.aliyun.com/article/783693

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 阿里云ECS安装部署RabbitMQ3.7.x

    阿里云ECS安装部署RabbitMQ3.7.x

  • 浅析 Web Workers 及 应用

    浅析 Web Workers 及 应用

  • 看阿里云如何用云上技术创新,帮助哈啰

    看阿里云如何用云上技术创新,帮助哈啰

  • 清明节,致敬两位逝去的技术博主

    清明节,致敬两位逝去的技术博主

腾讯云代理商
海外云服务器