CentOS 7 下安装RabbitMQ教程

CentOS 7 下安装RabbitMQ教程

一、做准备(VMWare 虚拟机上的 CentOS 7 镜像 上安装的)

(1)准备RabbitMQ的安装包(rabbitmq-server-3.8.5-1.el7.noarch)下载地址mq

(2)还得准备erlang语言(erlang-21.3.8.16-1.el7.x86_64)erlang下载地址

(3)这两个软件的对应版本 地址

也可以使用下载好的离线安装包
离线安装包,公开免费的,如遇收费请下方留言

二、可用mobaxterm上传离线文件到虚拟机

三、安装rabbitmq

(1)先在linux上创建一个rabbitmq文件夹用来存放离线文件,示例路径:/opt/rabbitmq
(2)上传文件到目录/opt/rabbitmq
(3)安装erlang语言
bash 复制代码
rpm -ivh erlang-21.3.8.16-1.el7.x86_64.rpm
(4)安装socat
bash 复制代码
rpm -ivh socat-1.7.3.2-2.el7.x86_64.rpm
(5)安装rabbitmq
bash 复制代码
rpm -ivh rabbitmq-server-3.8.5-1.el7.noarch.rpm

现在已经安装完毕!

(6)开机启动,如果你需要的话就添加开机启动(不添加开机启动的不要添加了)
bash 复制代码
systemctl enable rabbitmq-server
(7)启动rabbitmq
bash 复制代码
# 启动rabbitmq
systemctl start rabbitmq-server
# 查看rabbitmq状态
systemctl status rabbitmq-server
# 停止rabbitmq
systemctl stop rabbitmq-server
(8)开始配置web管理端,首先停掉mq
bash 复制代码
# 停止rabbitmq
systemctl stop rabbitmq-server
# 停止开启web管理端
rabbitmq-plugins enable rabbitmq_management
# 然后启动rabbitmq就可以访问管理页面
systemctl start rabbitmq-server
(9)访问页面

在浏览器上面输入你的ip加上15672

ip:15672 就可以访问,如果无法访问,则需要开放15672端口或者直接关闭防火墙

bash 复制代码
# 查看防火墙状态
systemctl status firewalld
# 关闭防火墙
systemctl stop firewalld
# 开启防火墙
systemctl start firewalld
# 永久关闭防火墙
systemctl disable firewalld

只要关闭了防火墙就可以访问rabbitmq的管理页面

现在远程登录 使用guest账户是登录不上的,因为guest只允许localhost访问。

(10)修改权限,即增加新用户并授权的方式
bash 复制代码
# 这个是查看rabbitmq下面有多少用户
rabbitmqctl list_users

# 增加账户admin并在设置admin的密码
rabbitmqctl add_user admin 密码

# 设置admin的角色为管理员
rabbitmqctl set_user_tags admin administrator

# 设置admin的权限
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

现在可以输入新增的账号和密码就可以访问

附录:

rabbitmq3.8版本默认用户guest访问报错User can only log in via localhost解决方案

在centos7系统上搭建的rabbitmq3.8版本,但是发现跟其他的版本明显有些区别,比如web访问入口guest用户登录问题,报错是只允许通过localhost访问,解决方法是rabbitmq其他版本是修改sbin/rabbitmq.app文件,把其中的一行直接修改成[{rabbit, [{loopback_users, []}]}].再重启rabbitmq即可,但是这里的版本不行,因为没有rabbitmq.app文件。看样子网上大多数都是低版本的rabbitmq的解决方法,于是研究了一下其他的解决方法供参考。

第一种

创建/etc/rabbitmq/rabbitmq.config文件并添加以下内容

bash 复制代码
[{rabbit, [{loopback_users, []}]}].
BASH 复制 全屏

然后重启rabbitmq服务即可

第二种

只能本机通过localhost方式访问了,一般不安装图形界面,所以这个基本不会选择

第三种

再添加个用户即可,如下所示:

bash 复制代码
[root@rabbitmq1 ebin]# rabbitmqctl add_user admin 111111
Adding user "admin" ...
[root@rabbitmq1 ebin]# rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
Setting permissions for user "admin" in vhost "/" ...
[root@rabbitmq1 ebin]# rabbitmqctl set_user_tags admin administrator
Setting tags for user "admin" to [administrator] ...

不用重启服务,直接访问即可。

相关推荐
P.H. Infinity2 小时前
【RabbitMQ】03-交换机
分布式·rabbitmq
Diamond技术流8 小时前
从0开始学习Linux——远程连接工具
linux·学习·centos·ssh·xshell·ftp
孤蓬&听雨10 小时前
RabbitMQ自动发送消息工具(自动化测试RabbitMQ)
分布式·测试工具·自动化·rabbitmq·自动发送消息
呼啦啦啦啦啦啦啦啦10 小时前
RabbitMQ 七种工作模式介绍
分布式·rabbitmq
qq_2037694910 小时前
win11安装最新rabbitmq
分布式·rabbitmq·ruby
Amagi.10 小时前
RabbitMQ的解耦、异步、削峰是什么?
分布式·rabbitmq
小码哥呀15 小时前
RabbitMQ设置消息过期时间
分布式·rabbitmq
斑驳竹影16 小时前
rabbitMQ RabbitTemplate 发送消息
java·rabbitmq·java-rabbitmq
188_djh16 小时前
# Python基础到实战一飞冲天(一)--linux基础(一)
linux·开发语言·python·ubuntu·centos·os·operationsystem
陈奕迅本讯17 小时前
rabbitMQ
分布式·rabbitmq