第三章 RabbitMQ安装

目录

[一、Mac RabbitMQ安装](#一、Mac RabbitMQ安装)

[1.1. 安装Homebrew](#1.1. 安装Homebrew)

[1.2. 安装RabbitMQ](#1.2. 安装RabbitMQ)

[1.3. 启动RabbitMQ服务](#1.3. 启动RabbitMQ服务)

[1.4. 访问RabbitMQ管理界面](#1.4. 访问RabbitMQ管理界面)

[1.5. 停止RabbitMQ](#1.5. 停止RabbitMQ)

[二、Linux RabbitMQ安装](#二、Linux RabbitMQ安装)

[2.1. 安装仓库和依赖包](#2.1. 安装仓库和依赖包)

[2.2. 安装RabbitMQ](#2.2. 安装RabbitMQ)

[2.3. 启动RabbitMQ](#2.3. 启动RabbitMQ)

[2.4. 设置RabbitMQ服务开机自启](#2.4. 设置RabbitMQ服务开机自启)

[2.5. 添加RabbitMQ用户并设置密码(如果需要)](#2.5. 添加RabbitMQ用户并设置密码(如果需要))

[2.6. 安装web客户端插件](#2.6. 安装web客户端插件)

[2.7. 检查RabbitMQ状态](#2.7. 检查RabbitMQ状态)

[2.8. 确认防火墙设置是否允许15672端口的访问](#2.8. 确认防火墙设置是否允许15672端口的访问)

[2.9. 访问RabbitMQ管理界面](#2.9. 访问RabbitMQ管理界面)

[2.10. 停止RabbitMQ](#2.10. 停止RabbitMQ)


RabbitMQ官网地址:
https://www.rabbitmq.com/docs

RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,而集群和故障转移是构建在开放电信平台框架上的。所有主要的编程语言均有与代理接口通讯的客户端库,由以高性能、健壮以及可伸缩性出名的 Erlang 写成。

一、Mac RabbitMQ安装

在Mac上安装RabbitMQ,你可以使用Homebrew,这是一个在Mac上常用的包管理器。

1.1. 安装Homebrew

如果你还没有安装Homebrew,请在终端(iTerm)中运行以下命令来安装Homebrew:

bash 复制代码
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
bash 复制代码
# 更新Homebrew的本地数据库:
brew update

1.2. 安装RabbitMQ

bash 复制代码
brew install rabbitmq

1.3. 启动RabbitMQ服务

bash 复制代码
brew services start rabbitmq

或者

bash 复制代码
sudo ./rabbitmq-server -detached

1.4. 访问RabbitMQ管理界面

(可选)启动RabbitMQ管理界面

bash 复制代码
rabbitmq-plugins enable rabbitmq_management

默认情况下,它在本地服务器的15672端口上运行,用户名和密码都是 guest

你可以使用以下命令来访问它,或者直接浏览器访问http://localhost:15672

bash 复制代码
open http://localhost:15672

1.5. 停止RabbitMQ

1. 使用RabbitMQctl命令:

首先,你需要确保你在有sudo权限的用户下,或者你可以直接使用root用户。然后,你可以使用rabbitmqctl控制台命令来停止RabbitMQ服务。

bash 复制代码
sudo ./rabbitmqctl stop

2. 使用系统服务命令:

如果你的系统使用systemd管理服务,你可以使用systemctl命令来停止RabbitMQ服务。

bash 复制代码
sudo systemctl stop rabbitmq-server

注意:以上命令假设RabbitMQ服务在你的系统中是以服务的形式运行的。如果你是以其他方式运行RabbitMQ(例如,使用nohup或screen在后台),那么你可能需要找到该进程并手动终止它。

二、Linux RabbitMQ安装

2.1. 安装仓库和依赖包

在CentOS系统上安装RabbitMQ,可以按照以下步骤进行:

首先,确保您的系统已经安装了EPEL仓库,如果没有安装,可以使用以下命令来安装EPEL仓库:

bash 复制代码
sudo yum install epel-release

安装RabbitMQ的依赖包:

bash 复制代码
sudo yum install socat

2.2. 安装RabbitMQ

bash 复制代码
sudo yum install rabbitmq-server

2.3. 启动RabbitMQ

bash 复制代码
sudo systemctl start rabbitmq-server

2.4. 设置RabbitMQ服务开机自启

bash 复制代码
sudo systemctl enable rabbitmq-server

2.5. 添加RabbitMQ用户并设置密码(如果需要)

bash 复制代码
sudo rabbitmqctl add_user admin StrongPassword

sudo rabbitmqctl set_user_tags admin administrator

sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

sudo rabbitmqctl set_user_tags admin administrator

2.6. 安装web客户端插件

bash 复制代码
rabbitmq-plugins enable rabbitmq_management 

2.7. 检查RabbitMQ状态

bash 复制代码
sudo systemctl status rabbitmq-server

2.8. 确认防火墙设置是否允许15672端口的访问

如果系统使用的是firewalld,执行以下命令:

bash 复制代码
firewall-cmd --permanent --add-port=15672/tcp

firewall-cmd --reload

如果系统使用的是iptables,执行以下命令:

bash 复制代码
iptables -I INPUT -p tcp --dport 15672 -j ACCEPT

service iptables save

service iptables restart

2.9. 访问RabbitMQ管理界面

您可以通过访问 http://your_server_ip:15672 使用Web管理界面,其中默认用户和密码都是 guest。如果您在安装过程中添加了新的用户(如上面的 admin),您可以使用该用户登录。

2.10. 停止RabbitMQ

1. 使用RabbitMQctl命令:

首先,你需要确保你在有sudo权限的用户下,或者你可以直接使用root用户。然后,你可以使用rabbitmqctl控制台命令来停止RabbitMQ服务。

bash 复制代码
sudo rabbitmqctl stop

2. 使用系统服务命令:

如果你的系统使用systemd管理服务,你可以使用systemctl命令来停止RabbitMQ服务。

bash 复制代码
sudo systemctl stop rabbitmq-server

注意:以上命令假设RabbitMQ服务在你的系统中是以服务的形式运行的。如果你是以其他方式运行RabbitMQ(例如,使用nohup或screen在后台),那么你可能需要找到该进程并手动终止它。

相关推荐
Java 码思客12 小时前
【Redis分布式缓存实战】第4章 单机Redis部署、配置与基础优化
redis·分布式·缓存
卷毛迷你猪12 小时前
快速实验篇(A3)基于 Hive 的气象数据数仓构建与干旱指标初步分析
大数据·hadoop·分布式
卷毛迷你猪12 小时前
快速实验篇(A4)Hive 数据仓库进阶:全站点干旱事件识别与多维统计分析
数据仓库·hive·hadoop·分布式
RingWu13 小时前
高并发三板斧-异步
分布式·微服务·架构
Xzh042313 小时前
RabbitMQ 核心原理与实战指南:从入门到生产级应用
rabbitmq·rabbit·java-rabbitmq
搞科研的小刘选手1 天前
【中山大学主办】第六届计算机科学与区块链国际学术会议(CCSB 2026)
分布式·神经网络·计算机视觉·区块链·计算机科学·共识算法·自然语言
小饼干在学嘎瓦1 天前
本地缓存和分布式缓存如何选择?
分布式·缓存
XLYcmy1 天前
全链路验证测试系统:一个针对智能代理(Agent)系统全链路能力的自动化验证脚本
分布式·python·http·网络安全·ai·llm·agent
phltxy1 天前
HAProxy安装与RabbitMQ负载均衡配置
分布式·rabbitmq·负载均衡
jiayong231 天前
Kafka 高吞吐消息链路常见面试问题及详细解答
分布式·面试·kafka