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] ...

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

相关推荐
落落落sss1 小时前
MybatisPlus
android·java·开发语言·spring·tomcat·rabbitmq·mybatis
程序员-珍1 小时前
虚拟机ip突然看不了了
linux·网络·网络协议·tcp/ip·centos
Ljubim.te5 小时前
Linux基于CentOS学习【进程状态】【进程优先级】【调度与切换】【进程挂起】【进程饥饿】
linux·学习·centos
Xua30556 小时前
MQ高级:RabbitMQ小细节
rabbitmq
苦逼IT运维6 小时前
YUM 源与 APT 源的详解及使用指南
linux·运维·ubuntu·centos·devops
niu_sama9 小时前
仿RabbitMQ实现消息队列三种主题的调试及源码
分布式·rabbitmq
鸡c9 小时前
rabbitMq------客户端模块
分布式·rabbitmq·ruby
wusam19 小时前
螺蛳壳里做道场:老破机搭建的私人数据中心---Centos下Docker学习04(环境准备)
学习·docker·centos
Uranus^21 小时前
rabbitMQ 简单使用
分布式·rabbitmq
攒了一袋星辰21 小时前
今日指数项目项目集成RabbitMQ与CaffienCatch
java·分布式·rabbitmq