Centos7安装rabbitmq

发布于:2025-07-28 ⋅ 阅读:(13) ⋅ 点赞:(0)

一、创建工作文件夹

mkdir -vp /usr/local/software/rabbitmq
cd /usr/local/software/rabbitmq

二、Erlang和Rabbitmq的版本对应关系

重要的事情说三遍
rabbitmq和erlang的版本一定要匹配,不然安装会出各种问题!!!
rabbitmq和erlang的版本一定要匹配,不然安装会出各种问题!!!
rabbitmq和erlang的版本一定要匹配,不然安装会出各种问题!!!

rabbitmq和erlang的对应关系

erlang对应版本下载
rabbitmq对应版本下载

  • 本人使用的erlang的版本是23.3.4.1-1.el7,rabbitmq的版本是3.9.13-1.el7
    如果你是centos7,一定要下载对应的e17版本,如果是centos8 ,下载对应的el8,千万别下载错了

三、安装Erlang

#下载工具
yum install wget
#下载对应版本的erlang
wget https://github.com/rabbitmq/erlang-rpm/releases/download/v23.3.4.1/erlang-23.3.4.1-1.el7.x86_64.rpm
#安装
rpm -ivh erlang-23.3.4.1-1.el7.x86_64.rpm --force --nodeps
#4、检查 Erlang 版本
erl -version

四、安装、启动RabbitMQ

  • yum源的更新(可不执行,根据自己系统是否提示来执行)
#备份原有的yum源配置
sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#下载阿里云yum源配置文件centos7
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
#centos6
#sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
#centos8
#sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
#清理缓存并更新yum
sudo yum clean all
sudo yum makecache
#验证更换是否成功
sudo yum install tree

其他下载地址 RabbitMQ其他版本

1、下载 RabbitMQ

#4.1.1
#wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v4.1.1/rabbitmq-server-4.1.1-1.el8.noarch.rpm
#4.1.0
#wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v4.1.0-rc.2/rabbitmq-server-4.1.0.rc.2-1.el8.noarch.rpm
#4.0.4
#wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v4.0.4/rabbitmq-server-4.0.4-1.el8.noarch.rpm
#3.13.6
#wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.13.6/rabbitmq-server-3.13.6-1.el8.noarch.rpm
#最新的el7的是3.9.16
#https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.16/rabbitmq-server-3.9.16-1.el7.noarch.rpm
#下载
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.13/rabbitmq-server-3.9.13-1.el7.noarch.rpm
#安装
rpm -ivh rabbitmq-server-3.9.13-1.el7.noarch.rpm --force --nodeps

3、启动 RabbitMQ 服务

systemctl start rabbitmq-server # 启动服务
systemctl status rabbitmq-server # 查看服务状态
systemctl stop rabbitmq-server # 停止服务
systemctl enable rabbitmq-server # 开启启动服务

4、开启管理界面插件

rabbitmq-plugins enable rabbitmq_management

4、开放 5672 和 15672 端口

firewall-cmd --zone=public --add-port=5672/tcp --permanent && firewall-cmd --reload
firewall-cmd --zone=public --add-port=15672/tcp --permanent && firewall-cmd --reload

在这里插入图片描述

五、添加远程登录用户

# 一、创建账号和密码
rabbitmqctl add_user 用户名 密码
#eg: 添加 admin admin123
#eg: rabbitmqctl add_user admin admin123

# 二、修改用户密码
rabbitmqctl change_password 用户名 新密码
#eg: rabbitmqctl change_password admin admin

# 三、删除用户
rabbitmqctl delete_user 用户名
#eg: rabbitmqctl delete_user guest

#四、清除密码
rabbitmqctl clear_password username
#eg: rabbitmqctl clear_password guest

#五、用户校验
rabbitmqctl authenticate_user 用户名 密码
#eg: rabbitmqctl authenticate_user guest guest
#验成功则返回success,否则出现错误信息。

#六、查询用户
rabbitmqctl list_users

#七、设置用户标签
rabbitmqctl set_user_tags 用户名 角色
#eg:给admin设置administrator角色
#eg: rabbitmqctl set_user_tags admin administrator

  • 用户标签类型包括:rabbitmqctl set_user_tags 用户名 角色
用户标签类型 权限说明
management 访问 management plugin
policymaker 访问 management plugin 和管理自己 vhosts 的策略和参数
monitoring 访问 management plugin 和查看所有配置、通道以及节点信息
administrator 拥有所有权限
None 无任何配置

六、添加虚拟主机并赋予权限

虚拟主机不是指vm虚拟机,而是指一个通过逻辑进行资源隔离和分区的机制,类似于一个独立的“逻辑服务器”,通过虚拟主机,可以在同一个 RabbitMQ
实例中为不同团队、项目或客户提供独立的环境

#1、创建虚拟主机
rabbitmqctl add_vhost 虚拟主机名称
 
#2、删除虚拟主机
rabbitmqctl delete_vhost 虚拟主机名称
#rabbitmqctl delete_vhost /dev
#rabbitmqctl delete_vhost /prod

# 三、为用户添加访问虚拟机 资源权限,添加配置、写、读权限
rabbitmqctl set_permissions -p "/" 用户名 ".*" ".*" ".*"
#eg:给 admin 赋予访问/dev_vhost的权限
#eg: rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
#eg: rabbitmqctl set_permissions -p "/dev_vhost" admin ".*" ".*" ".*"
#eg: rabbitmqctl set_permissions -p "/prod_vhost" admin ".*" ".*" ".*"

在这里插入图片描述

  • rabbitmqctl set_permissions -p “/” 用户名 “." ".” “.*”
    此配置很重要,当程序访问改虚拟机的时候,需要对应的用户有访问权限。

七、卸载

#卸载erlang
yum list | grep erlang
yum -y remove erlang-*
rm -rf /usr/lib64/erlang

#卸载RabbitMQ
yum list | grep rabbitmq
yum -y remove rabbitmq-server.noarch

find / -name rabbit*
rm -rf 依次删除


网站公告

今日签到

点亮在社区的每一天
去签到