Linux环境下 RabbitMQ 的下载与安装

原标题:Linux环境下 RabbitMQ 的下载与安装

0 环境

CentOS7

RabbitMQ 3.6.5

erlang 18.3

socat

rabbitmq是使用erlang语言编写的,所以需要先安装erlang,其次rabbitmq安装依赖于socat,所以三个安装包都需要下载。另外rabbitmq对于erlang的版本是有要求的,这个可以去官网查看。

0.1 Mac本地文件上传

通过ssh连接本地虚拟机中的CentOS 7 服务器,将所需安装文件上传至Linux服务器

c4f6a0c91e31088c6885f38ad1a0f5bc.png

b1bb030bfa81b359768df95638ee9c4c.png

8b62d78ba4ff3bfadeadb9506428154b.png

0.2 Linux服务器下直接执行下载命令

wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm

wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm

wget www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm

1 安装基础依赖

2 安装rpm包

一定要按顺序!!!

rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm

5dca2cb6a6d4149eecc686a3ee7f1d87.png

rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm

c245a703ec386bb307c62d2a8ab12a44.png

rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm

3 修改配置

99f3427fc6873e82863a2aa8a86035e5.png

RabbitMQ的核心配置文件(显然就是个JSON格式文件),在这里可以查看到rabbitmq默认监听的端口号是5672

6dcfcd6af2df4e90556da8341e27962f.png

找到loopback_users配置项,去除guest,然后保存退出

2e83e68449a2540e9f365c02288d6185.png

4 RabbitMQ 基本命令

启动服务

2f3c529a33bc206a552000ba1db4d9da.png

停止服务的

rabbitmqctl stop

查看进程:lsof -i:5672

管理插件:rabbitmq-plugins enable rabbitmq-management

5 RabbitMQ 管控台

启用管控台

3b11723cfb9bcb9c3566efdf6d703841.png

默认启用端口是15672,通过ip+端口进行访问,如

9e49886c4f65df07acaca57bfcca620b.png

最好先关闭下iptables规则

10651c4dab146ceda87e7baee04149d0.png

访问成功后需要输入用户名和密码进行登录,统一输入guest即可.

但是在该版本,发现网上此法并不行!

rabbitmq的web控制台使用默认账户guest登录失败——login failed

问题背景

rabbitmq的默认账户和密码都是guest,安装完rabbitmq之后可以使用guest/guest登录。

而通过web控制台登录有以下两种形式:

本地登陆(即在rabbitmq安装的机器上登陆——地址栏输入http://localhost:15672)

远程登陆(即在其他机器上通过指定IP地址登陆——地址栏输入http://:15672)

但是,在rabbitmq3.3.0之后,出于安全性考虑,默认情况下rabbitmq的guest/guest账户将不能实现远程登录,只能在本地登录.

解决方案

新建一个用户

默认的guest账户无法远程登陆,并不意味着其他用户也无法远程登录.

所以,可以通过如下命令新增用户、设定用户角色以及赋予用户权限实现远程登陆:

新增用户

$ rabbitmqctl add_user Username Password

设定用户administrator角色

用户角色可以分为超级管理员administrator、监控者monitoring、策略制定者policymaker、普通管理者management等

$ rabbitmqctl set_user_tags 用户名 administrator

修改密码

9b4c6949b44194d41439ec6b13561061.png

查看用户列表

删除账户

bd3e696e5915dfe950e8b013a8cd64ca.png

赋予用户权限

249af4dce5712fe2be6d92cb6eaf0bb8.png

用户权限包括配置权限、读权限和写权限

配置权限会影响到exchange、queue的声明和删除。读写权限会影响到从queue里取消息、向exchange发送消息以及queue和exchange的绑定操作

比如,将queue绑定到某个exchange上,需要具有queue的写权限以及exchange的读权限;向exchange发送消息需要具有exchange的写权限;从queue里取消息需要具有queue的读权限。

查看用户授权

6419b61f72ec6f40d94f79e95f035bf9.png

清除权限信息

rabbitmqctl clear_permissions [-p VHostPath] ymq

rabbitmqctl clear_permissions -p / JavaEdge

Clearing permissions for user JavaEdge in vhost /

此时,就可以通过你添加的新用户/密码来进行rabbitmq的远程登录了

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值