Windows 安装

Windows 安装

Windows 安装

概述​

本指南涵盖了在 Windows 上安装 RabbitMQ。它侧重于两个推荐的安装选项:

使用 Chocolatey

作为管理员用户 使用官方安装程序

本指南还涵盖了在 Windows 环境下的几个安装后主题:

基本 节点配置

CLI 工具认证

RabbitMQ Windows 服务

节点管理

防火墙和安全工具 的影响

文件和套接字句柄监控依赖:handle.exe

日志文件位置

默认用户限制

等等。这些主题将在 其余文档指南 中更详细地介绍。

另一份独立的配套指南涵盖了已知的 Windows 配置 问题及其规避方法。

使用 Chocolatey​

RabbitMQ 的软件包 通过 Chocolatey 分发。新版本可能需要一段时间(有时是几周)才能通过审批,因此此选项不能保证提供最新版本。但是,它会管理所需的依赖项。

要使用 Chocolatey 安装 RabbitMQ,请在命令行或 PowerShell 中运行以下命令:

choco install rabbitmq

对于许多用例,Chocolatey 是最佳安装方法。

Chocolatey RabbitMQ 包是开源的,可以在 GitHub 上找到。

使用安装程序​

官方 RabbitMQ 安装程序适用于 每个 RabbitMQ 版本。

与 通过 Chocolatey 安装 相比,此选项为 Windows 用户提供了最大的灵活性,但也要求他们了解安装程序中的某些假设和要求:

一次只能安装一个 Erlang 版本。

Erlang 必须 **使用管理员帐户** 安装。

**强烈建议** RabbitMQ 也作为管理员帐户安装。

安装路径只能包含 ASCII 字符。**强烈建议** 路径中的任何目录名都不包含空格。

可能需要手动复制 CLI 工具使用的 共享密钥 文件。

CLI 工具需要在 UTF-8 模式下运行 Windows 控制台。

当这些条件不满足时,Windows 服务和 CLI 工具可能需要重新安装或其他手动步骤才能使其按预期工作。

这将在 Windows 配置 指南中更详细地介绍。

依赖项​

RabbitMQ 需要安装 64 位 支持版本的 Erlang for Windows。

可以从 Erlang/OTP 版本树 页面获取近期 Erlang for Windows 的二进制构建版本。

Erlang **必须使用管理员帐户** 安装,否则 RabbitMQ Windows 服务将无法发现它。安装了支持版本的 Erlang 后,下载 RabbitMQ 安装程序 rabbitmq-server-{version}.exe 并运行它。它会将 RabbitMQ 安装为 Windows 服务并使用默认配置启动它。

直接下载​

描述下载签名Windows 系统安装程序(来自 GitHub)rabbitmq-server-4.2.0.exe签名

运行 RabbitMQ Windows 服务​

安装完 Erlang 和 RabbitMQ 后,可以作为 Windows 服务启动 RabbitMQ 节点。RabbitMQ 服务会自动启动。RabbitMQ Windows 服务可以通过“开始”菜单进行管理。

CLI 工具​

RabbitMQ 节点通常使用 CLI 工具 在 PowerShell 中进行管理、检查和操作。

在 Windows 上,CLI 工具与其它平台相比,有一个 .bat 后缀。例如,Windows 上的 rabbitmqctl 调用方式为 rabbitmqctl.bat。

为了使这些工具正常工作,它们必须能够使用一个名为 Erlang cookie 的共享密钥文件 与 RabbitMQ 节点进行身份验证。

主要的 CLI 工具指南 涵盖了与命令行工具使用相关的大部分主题。

要查看各种 RabbitMQ CLI 工具提供的命令,请使用 help 命令。

# lists commands provided by rabbitmqctl.batrabbitmqctl.bat help# lists commands provided by rabbitmq-diagnostics.batrabbitmq-diagnostics.bat help# ...you guessed it!rabbitmq-plugins.bat help

要了解特定命令,请将其名称作为参数传递给 help。

rabbitmqctl.bat help add_user

Cookie 文件位置​

在 Windows 上,cookie 文件位置 取决于 HOMEDRIVE 和 HOMEPATH 环境变量是否已设置。

如果使用非管理员帐户安装 RabbitMQ,那么节点和 CLI 工具使用的 共享密钥 文件将不会放在正确的位置,从而导致在使用 rabbitmqctl.bat 和其他 CLI 工具时出现 身份验证失败。

可以使用以下选项之一来解决此问题:

使用管理员用户重新安装 RabbitMQ。

手动将 .erlang.cookie 文件从 %SystemRoot% 或 %SystemRoot%\system32\config\systemprofile 复制到 %HOMEDRIVE%%HOMEPATH%。

节点配置​

服务使用其默认的 设置 启动,监听 默认接口 和 端口 上的连接。

节点配置主要通过 配置文件 完成。可以使用一系列可用的 环境变量 来控制节点的 数据位置、配置文件路径等。

这将在 配置指南 中更详细地介绍。

Windows 上的环境变量更改​

重要提示:设置环境变量后,必须 **重新安装** Windows 服务。仅仅重启服务是不够的。

管理 RabbitMQ 节点​

管理服务​

RabbitMQ 目录的链接可以在“开始”菜单中找到。

“开始”菜单中还有一个指向命令提示符窗口的链接,该窗口将在 sbin 目录中启动。这是运行 命令行工具 的最便捷方式。

请注意,CLI 工具必须 向目标 RabbitMQ 节点进行身份验证。

停止节点​

要停止代理或检查其状态,请在 sbin 目录中使用 rabbitmqctl.bat(作为管理员)。

rabbitmqctl.bat stop

检查节点状态​

以下 CLI 命令 运行基本的 健康检查,并在节点运行时显示有关节点的一些信息。

# A basic health check of both the node and CLI tool connectivity/authenticationrabbitmqctl.bat status

要使其正常工作,必须满足两个条件:

节点必须正在运行。

rabbitmqctl.bat 必须能够向节点进行身份验证。

请参阅 CLI 工具部分 和 监控和健康检查指南 以了解更多信息。

日志文件和管理​

服务器日志在故障排除和根本原因分析中至关重要。请参阅 日志记录 和 文件和目录位置 指南,了解日志文件位置、日志轮换等信息。

防火墙和安全工具​

防火墙和安全工具可能会阻止 RabbitMQ Windows 服务和 CLI 工具正常运行。

应将这些工具配置为允许访问 RabbitMQ 使用的端口。

可选:安装 handle.exe 进行文件句柄监控​

RabbitMQ 节点收集和提供的 指标 之一是节点使用的文件和套接字句柄的数量。

在 Windows 上,这些指标是从外部命令行工具 handle.exe 收集的。

在 Windows Server 2025 上需要版本 5,并且在大多数情况下强烈推荐。

默认用户访问​

代理创建一个用户 guest,密码为 guest。未配置的客户端通常会使用这些凭据。**默认情况下,这些凭据只能在连接到本地主机上的代理时使用**,因此在从任何其他计算机连接之前,您需要采取相应措施。

有关如何创建更多用户和删除 guest 用户的信息,请参阅访问控制文档。

端口访问​

RabbitMQ 节点绑定到端口(打开服务器 TCP 套接字)以接受客户端和 CLI 工具的连接。防病毒软件等其他进程和工具可能会阻止 RabbitMQ 绑定到端口。发生这种情况时,节点将无法启动。

CLI 工具、客户端库和 RabbitMQ 节点也打开连接(客户端 TCP 套接字)。防火墙可能会阻止节点和 CLI 工具之间的通信。确保以下端口可访问

4369:epmd,RabbitMQ 节点和 CLI 工具使用的对等发现服务

5672, 5671:用于 AMQP 0-9-1 和 1.0 客户端(带或不带 TLS)

25672:用于节点间和 CLI 工具通信(Erlang 分布服务器端口),并从动态范围分配(默认限制为单个端口,计算为 AMQP 端口 + 20000)。除非确实需要这些端口上的外部连接(例如,集群使用 联邦 或在子网之外的计算机上使用 CLI 工具),否则不应公开这些端口。有关详细信息,请参阅 网络指南。

35672-35682:用于 CLI 工具(Erlang 分布式客户端端口)与节点通信,并从动态范围分配(计算方式为服务器分布式端口 + 10000 到服务器分布式端口 + 10010)。有关详细信息,请参阅 网络指南。

15672:用于 HTTP API 客户端、管理 UI 和 rabbitmqadmin(仅当 管理插件 启用时)

61613、61614:STOMP 客户端(无 TLS 和带 TLS)(仅当 STOMP 插件 启用时)

1883、8883:MQTT 客户端(无 TLS 和带 TLS),如果 MQTT 插件 启用

15674:STOMP-over-WebSockets 客户端(仅当 Web STOMP 插件 启用时)

15675:MQTT-over-WebSockets 客户端(仅当 Web MQTT 插件 启用时)

可以 配置 RabbitMQ 以使用 不同的端口和特定的网络接口。

升级 Erlang VM​

如果您已有安装并且计划将 Erlang VM 从 32 位升级到 64 位,则必须在升级 VM 之前卸载代理。安装程序将无法停止或卸载使用不同架构 Erlang VM 安装的服务。

作为服务运行时转储文件位置​

如果 Erlang VM 在 RabbitMQ 作为服务运行时终止,则不会将崩溃转储写入当前目录(这对服务没有意义),而是将其写入 RabbitMQ 服务器 基目录 下的 erl_crash.dump 文件,默认情况下为 %APPDATA%\%RABBITMQ_SERVICENAME% - 通常是 %APPDATA%\RabbitMQ。

相关推荐

你在哪里造句 bt365网站

你在哪里造句

07-01 👁️ 5801
性能测试 CodeArts PerfTest 365英国上市网正规吗

性能测试 CodeArts PerfTest

09-20 👁️ 7362
王者荣耀铠的印记为什么抽不到 铠的印记为什么无法获取 博大365