不同环境下安装 RabbitMQ

本文提供了在Windows、Linux(CentOS7)和Docker中安装RabbitMQ的详细步骤,包括Erlang环境配置、服务启动以及管理插件启用。对于Windows,涉及系统环境变量设置;在Linux中,需手动下载安装Erlang和RabbitMQ;而在Docker中,通过拉取镜像快速部署。
摘要由CSDN通过智能技术生成


提示:以下是本篇文章正文内容,RabbitMQ 系列学习将会持续更新

在这里插入图片描述

我提供了 3 种方案,针对不同环境安装 RabbitMQ,自行选择

一、Windows 安装

RabbitMQ 是一个开源的遵循 AMQP协议实现的基于 Erlang语言编写,即需要先安装部署 Erlang 环境再安装 RabbitMQ 环境

🍌1.1 下载安装包

①进入官网,点击 Get Started
在这里插入图片描述
②点击 Download + Installation 进入
在这里插入图片描述

③在新页面找到右侧,Install Windows 安装windows版本
在这里插入图片描述

④然后页面下拉,找到 Dependencies,下载 rabbitMQ 服务器
在这里插入图片描述
下载 OTP 环境:
在这里插入图片描述

下载完成:
在这里插入图片描述

回到目录…

🍌1.2 安装配置 Erlang 环境

①找到我们的 otp_win64_25.3.exe 安装包,一路傻瓜式安装 next 下一步,安装即可。

②找到安装目录的 bin 目录,D:\OTP\Erlang_OTP\bin
在这里插入图片描述

③打开系统高级环境变量 -> 系统变量 path
在这里插入图片描述

④添加刚刚的 bin 路径
在这里插入图片描述

回到目录…

🍌1.3 安装 RabbitMQ 并启动

找到我们的 rabbitmq-server-3.11.11.exe 安装包,一路傻瓜式安装 next 下一步,安装即可。
在这里插入图片描述
安装过程中,遇到弹窗点允许,没有弹窗则无视。

安装成功后,我们使用 win+R + cmd 进入 windows 控制台:

# 进入 rabbitmq 的 sbin 目录
C:\Users\14156>d:
D:\>cd D:\RabbitMQ\rabbitmq_server-3.11.11\sbin

# 启动 RabbitMQ 服务
rabbitmq-server.bat

# 启动 RabbitMQ 监控插件
rabbitmq-plugins enable rabbitmq_management

# 查看状态
rabbitmqctl status

在浏览器访问 http://localhost:15672,本地访问的用户名和密码都是 guest
在这里插入图片描述

注意事项:


回到目录…

二、Linux 安装 (CentOS7)

RabbitMQ 官网https://www.rabbitmq.com

🍓2.1 安装 Erlang

① 运行以下命令,安装 erlang 所需要的依赖

yum install -y make gcc gcc-c++ m4 openssl openssl-devel ncurses-devel unixODBC unixODBC-devel java java-devel

② 运行以下命令,下载 erlang 安装包。下载网速太慢可以直接用 百度网盘,提取码:t0e3

wget http://erlang.org/download/otp_src_21.1.tar.gz

③ 运行以下命令,解压 erlang 安装包

tar -zxvf otp_src_21.1.tar.gz

④ 运行以下命令,进入 erlang 安装包的解压路径,并为 erlang 创建一个新的目录

cd otp_src_21.1
mkdir -p /usr/local/erlang

⑤ 依次运行以下命令,编译并安装 erlang

./configure --prefix=/usr/local/erlang
make && make install

⑥ 安装完成后,运行以下命令,为 erlang 配置环境变量

echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile

⑦ 运行以下命令,使环境变量立即生效

source /etc/profile

⑧ 运行以下命令,返回系统的 /root 目录,然后查看 erlang 版本,确认是否安装成功

cd ~
erl -version

回到目录…

🍓2.2 安装 RabbitMQ

① 运行以下命令,下载 RabbitMQ 安装包。下载网速太慢可以直接用 百度网盘,提取码:bevb

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.8/rabbitmq-server-generic-unix-3.7.8.tar.xz

② 运行以下命令,解压 RabbitMQ 安装包

tar -xvf rabbitmq-server-generic-unix-3.7.8.tar.xz

③ 解压完成后,运行以下命令,为 RabbitMQ 配置环境变量

echo 'export PATH=$PATH:/root/rabbitmq_server-3.7.8/sbin' >> /etc/profile

④ 运行以下命令,使环境变量立即生效

source /etc/profile

回到目录…

🍓2.3 启动 RabbitMQ

① 进程操作

# 后台启动
rabbitmq-server -detached
# 启动 RabbitMQ 监控插件,这样就可以在浏览器上进行实时访问和监控了
rabbitmq-plugins enable rabbitmq_management

# 停止服务器
rabbitmqctl stop

② 用户操作

# 创建新用户
rabbitmqctl add_user 用户名 密码

# 设置用户权限
rabbitmqctl set_permissions -p "/" 用户名 ".*" ".*" ".*"

# 修改用户角色为管理员
rabbitmqctl set_user_tags 用户名 administrator

# 查看用户列表
rabbitmqctl list_users

# 删除guest默认用户
rabbitmqctl delete_user guest

③ 查看服务器状态

rabbitmqctl status

开放的端口信息:AMQP 协议连接 5672集群化端口 25672HTTP 协议连接 15672

Listeners
Interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication
Interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0
Interface: [::], port: 15672, protocol: http, purpose: HTTP API

④ 测试访问:http://1.15.76.95:15672 使用新用户登录
在这里插入图片描述
进入了之后会显示当前的消息队列情况,包括版本号、Erlang版本等。。
在这里插入图片描述


回到目录......

三、Docker 中部署 (便捷)

在 Docker 上安装部署 RabbitMQ 方便快捷,不需要额外安装 Erlang 环境。

🌈3.1 拉取镜像

Docker 官网https://hub.docker.com,查询 rabbitmq 的版本,选择带 management 的,,包含 web 管理页面。
在这里插入图片描述

拉取镜像:

docker pull rabbitmq:management
docker images
REPOSITORY   TAG          IMAGE ID       CREATED         SIZE
rabbitmq     management   6c3c2a225947   15 months ago   253MB

🌈3.2 启动 rabbitmq 容器

①启动容器

docker run -d \
--name rabbitmq \
--restart always \
-v ~/docker-data/rabbitmq/data:/var/lib/rabbitmq \
-p 5672:5672 -p 15672:15672 \
rabbitmq:management

RabbitMQ 重要的端口

  • 1883: MQTT消息队列遥测传输
  • 4369: EPMD、RabbitMQ节点间、CLI工具使用的对等发现服务端口
  • 56715672: AMQP协议,客户端访问端口
  • 15671: 管理监听端口
  • 15672: web管理后台端口
  • 25672: rabbitmq集群的端口号

RabbitMQ 配置文件和日志信息
在这里插入图片描述

②查看 rabbitmq 运行日志:

docker logs rabbitmq

回到目录…

🌈3.3 进入容器

①进入容器

docker exec -it rabbitmq /bin/bash

②查看状态

rabbitmqctl status
Status of node rabbit@ebe207194e57 ...
Runtime

OS PID: 21
OS: Linux
Uptime (seconds): 641
Is under maintenance?: false
RabbitMQ version: 3.9.11
Node name: rabbit@ebe207194e57
Erlang configuration: Erlang/OTP 24 [erts-12.2] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1] [jit]
Erlang processes: 385 used, 1048576 limit
Scheduler run queue: 1
Cluster heartbeat timeout (net_ticktime): 60

Plugins

Enabled plugin file: /etc/rabbitmq/enabled_plugins
Enabled plugins:

 * rabbitmq_prometheus
 * prometheus
 * accept
 * rabbitmq_management
 * amqp_client
 * rabbitmq_web_dispatch
 * cowboy
 * cowlib
 * rabbitmq_management_agent

Data directory

Node data directory: /var/lib/rabbitmq/mnesia/rabbit@ebe207194e57
Raft data directory: /var/lib/rabbitmq/mnesia/rabbit@ebe207194e57/quorum/rabbit@ebe207194e57

Config files

 * /etc/rabbitmq/conf.d/10-default-guest-user.conf

Log file(s)

 * /var/log/rabbitmq/rabbit@ebe207194e57_upgrade.log
 * <stdout>

Alarms

(none)

Memory

Total memory used: 0.1416 gb
Calculation strategy: rss
Memory high watermark setting: 0.4 of available memory, computed to: 0.7222 gb

reserved_unallocated: 0.0768 gb (54.25 %)
code: 0.0352 gb (24.85 %)
other_system: 0.0251 gb (17.74 %)
other_proc: 0.0184 gb (13.0 %)
other_ets: 0.0032 gb (2.25 %)
atom: 0.0014 gb (1.01 %)
plugins: 0.0012 gb (0.85 %)
metrics: 2.0e-4 gb (0.16 %)
mgmt_db: 2.0e-4 gb (0.14 %)
mnesia: 1.0e-4 gb (0.06 %)
binary: 1.0e-4 gb (0.06 %)
quorum_ets: 0.0 gb (0.02 %)
msg_index: 0.0 gb (0.02 %)
connection_other: 0.0 gb (0.0 %)
stream_queue_procs: 0.0 gb (0.0 %)
stream_queue_replica_reader_procs: 0.0 gb (0.0 %)
allocated_unused: 0.0 gb (0.0 %)
connection_channels: 0.0 gb (0.0 %)
connection_readers: 0.0 gb (0.0 %)
connection_writers: 0.0 gb (0.0 %)
queue_procs: 0.0 gb (0.0 %)
queue_slave_procs: 0.0 gb (0.0 %)
quorum_queue_procs: 0.0 gb (0.0 %)
stream_queue_coordinator_procs: 0.0 gb (0.0 %)

File Descriptors

Total: 2, limit: 1048479
Sockets: 0, limit: 943629

Free Disk Space

Low free disk space watermark: 0.05 gb
Free disk space: 25.1065 gb

Totals

Connection count: 0
Queue count: 0
Virtual host count: 1

Listeners

Interface: [::], port: 15672, protocol: http, purpose: HTTP API
Interface: [::], port: 15692, protocol: http/prometheus, purpose: Prometheus exporter API over HTTP
Interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication
Interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0

③用户操作:创建新用户,并修改用户角色为管理员

# 创建新用户
rabbitmqctl add_user 用户名 密码

# 设置用户权限
rabbitmqctl set_permissions -p "/" 用户名 ".*" ".*" ".*"

# 修改用户角色为管理员
rabbitmqctl set_user_tags 用户名 administrator

# 查看用户列表
rabbitmqctl list_users

# 删除guest默认用户
rabbitmqctl delete_user guest

④ 测试访问:http://1.15.76.95:15672 使用新用户登录
在这里插入图片描述

回到目录…

🌈3.4 服务端指令

# 查看环境变量
rabbitmqctl environment

# 查看exchanges
rabbitmqctl list_exchanges

# 查看用户
rabbitmqctl list_users

# 查看队列
rabbitmqctl list_queues

# 查看未被确认的队列
rabbitmqctl list_queues name messages_unacknowledged

# 查看准备就绪的队列
rabbitmqctl list_queues name messages_ready

# 查看单个队列的内存使用
rabbitmqctl list_queues name memory

# 查看连接
rabbitmqctl list_connections

# 查看消费者信息
rabbitmqctl list_consumers

回到目录…


总结:
提示:这里对文章进行总结:
本文是对RabbitMQ的学习,学习了在不同环境下安装 RabbitMQ,如windows11、Linux(centOS)、Docker中部署,我们在学习使用时可自选方案安装。之后的学习内容将持续更新!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只咸鱼。。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值