第三章 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在后台),那么你可能需要找到该进程并手动终止它。

相关推荐
茶杯梦轩3 天前
从零起步学习RabbitMQ || 第三章:RabbitMQ的生产者、Broker、消费者如何保证消息不丢失(可靠性)详解
分布式·后端·面试
回家路上绕了弯5 天前
深入解析Agent Subagent架构:原理、协同逻辑与实战落地指南
分布式·后端
用户8307196840825 天前
Spring Boot 集成 RabbitMQ :8 个最佳实践,杜绝消息丢失与队列阻塞
spring boot·后端·rabbitmq
用户8307196840827 天前
RabbitMQ vs RocketMQ 事务大对决:一个在“裸奔”,一个在“开挂”?
后端·rabbitmq·rocketmq
初次攀爬者8 天前
RabbitMQ的消息模式和高级特性
后端·消息队列·rabbitmq
初次攀爬者10 天前
ZooKeeper 实现分布式锁的两种方式
分布式·后端·zookeeper
让我上个超影吧11 天前
消息队列——RabbitMQ(高级)
java·rabbitmq
塔中妖11 天前
Windows 安装 RabbitMQ 详细教程(含 Erlang 环境配置)
windows·rabbitmq·erlang
断手当码农11 天前
Redis 实现分布式锁的三种方式
数据库·redis·分布式
初次攀爬者11 天前
Redis分布式锁实现的三种方式-基于setnx,lua脚本和Redisson
redis·分布式·后端