CentOS 7 安装 RabbitMQ 3.x

本文参考自RabbitMQ官方文档: Installing on RPM-based Linux

  1. 下载并安装RabbitMQ官方提供的Erlang语言(安装Erlang语言包括但不限于该种方法)。
// 下载Erlang语言
// a.Bintray托管站下载(推荐)
shell> wget https://bintray.com/rabbitmq-erlang/rpm/download_file?file_path=erlang%2F22%2Fel%2F7%2Fx86_64%2Ferlang-22.3.4.5-1.el7.x86_64.rpm
// b.GitHub托管站下载(没有代理的情况下,不推荐)
shell> wget https://github.com/rabbitmq/erlang-rpm/releases/download/v22.3.4.5/erlang-22.3.4.5-1.el7.x86_64.rpm

// 安装Erlang语言
shell> rpm -Uvh erlang-22.3.4.5-1.el7.x86_64.rpm

Erlang语言 Bintray托管站下载地址: https://bintray.com/rabbitmq-erlang/rpm/erlang
Erlang语言 GitHub托管站下载地址: https://github.com/rabbitmq/erlang-rpm/releases
自行根据环境选择合适版本下载
关于Erlang与RabbitMQ版本的兼容性情况,详情请参阅: https://www.rabbitmq.com/which-erlang.html

  1. 导入RabbitMQ RPM包签名密钥,下载并安装RabbitMQ。
// 导入RabbitMQ RPM包签名密钥(文件很小,2个导入速度都差不多)
// a.RabbitMQ官方导入
shell> rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
// b.GitHub托管站导入
shell> rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc

// 下载RabbitMQ
// a.Bintray托管站下载(推荐)
shell> wget https://bintray.com/rabbitmq/rpm/download_file?file_path=rabbitmq-server%2Fv3.8.x%2Fel%2F7%2Fnoarch%2Frabbitmq-server-3.8.6-1.el7.noarch.rpm
// b.GitHub托管站下载(没有代理的情况下,不推荐)
shell> wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.6/rabbitmq-server-3.8.6-1.el7.noarch.rpm

// 安装RabbitMQ
shell> yum -y install rabbitmq-server-3.8.6-1.el7.noarch.rpm

RabbitMQ Bintray托管站下载地址: https://bintray.com/rabbitmq/rpm/rabbitmq-server
RabbitMQ GitHub托管站下载地址: https://github.com/rabbitmq/rabbitmq-server/releases
自行根据环境选择合适版本下载(阿里镜像站也有RabbitMQ,但是版本不是最新的,请自行选择)

  1. 启动RabbitMQ服务器,启用RabbitMQ管理控制台插件。

注意:在启动RabbitMQ之前,请先检查你的主机名是否映射到RabbitMQ服务器的ip地址。如下图所示。

// 如上图所示,hosts文件第一行已经映射了localhost等主机名到127.0.0.1(第二行是ipv6相关的,如需了解自行百度)
// 此处我的主机名为myvm,则需要把映射关系写入hosts(上图hosts文件第三行是我执行下面这条命令才生成的)
shell> echo 127.0.0.1 myvm >> /etc/hosts

// 上面的主机名和ip映射关系配置对了,才能进行以下的启动步骤(否则会失败,我就踩了这个坑)
shell> systemctl start rabbitmq-server
// 设置开机自启
shell> systemctl enable rabbitmq-server
// 启用管理控制台插件
shell> rabbitmq-plugins enable rabbitmq_management
shell> systemctl restart rabbitmq-server
shell> systemctl status rabbitmq-server
  1. 添加新用户,分配权限和角色。
// 添加用户
shell> rabbitmqctl add_user username password
// 分配权限(针对交换机和队列等,详情参见文末附录)
shell> rabbitmqctl set_permissions -p "/" username ".*" ".*" ".*"
// 分配角色(针对管理控制台,详情参见文末附录)
shell> rabbitmqctl set_user_tags username administrator
// 查看用户
shell> rabbitmqctl list_users
  1. 开放firewall防火墙5672和15672端口。
// 开放5672端口
shell> firewall-cmd --add-port=5672/tcp --zone=public --permanent
// 开放15672端口
shell> firewall-cmd --add-port=15672/tcp --zone=public --permanent
// 重启防火墙
shell> firewall-cmd --reload

至此安装完成。

  1. 附录(以上安装过程用到语法的解释,非安装步骤)。
    部分语法解释参考自 @总要做些什么《RabbitMQ权限》 一文: https://www.cnblogs.com/shangpolu/p/8275126.html
// 启用插件
shell> rabbitmq-plugins enable 插件名
shell> rabbitmq-plugins enable rabbitmq_management
// 添加用户
shell> rabbitmqctl add_user 用户名 密码
shell> rabbitmqctl add_user username password
// 分配权限
shell> rabbitmqctl set_permissions -p "vhost路径" 用户名 "交换机和队列的配置权限" "消息写权限" "消息读权限"
shell> rabbitmqctl set_permissions -p "/" username ".*" ".*" ".*"
// 分配角色
shell> rabbitmqctl set_user_tags 用户名 角色
shell> rabbitmqctl set_user_tags username administrator
角色说明:
:  administrator:超级管理员(可以登录管理控制台,可以查看所有信息,可以进行所有操作。)
:  monitoring:监控者(可以登录管理控制台,可以查看RabbitMQ节点的相关信息。)
:  policymaker:决策者(可以登录管理控制台,可以查看策略并进行操作。)
:  management:管理员(可以登录管理控制台,但只能看一些全局的统计信息。)
:  none:最小权限(不能登录管理控制台,客户端使用。)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值