rabbitmq集群报错

Hostname mismatch: node "node1@localhost" believes its host is different. Please ensure that hostnames resolve the same way locally and on "node1@localhost"

修改 /etc/hosts
两台机添加
192.168.74.142 node1
192.168.74.179 node2

修改/etc/hostname
192.168.74.142 修改为 node1
192.168.74.179 修改为 node2

》export HOSTNAME=node1
》export HOSTNAME=node2

192.168.74.142启动命令

RABBITMQ_NODENAME=rabbimq1 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" rabbitmq-server -detached

192.168.74.179启动命令

RABBITMQ_NODENAME=rabbimq2 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" rabbitmq-server -detached

注意 :RABBITMQ_NODENAME不能写成node1和node2

### 解决 RabbitMQ 启动时端口 25672 被占用的问题 当遇到 `could not bind to distribution port 25672` 错误时,通常是因为该端口已被其他进程占用。以下是可能的原因以及解决方案: #### 原因分析 1. **端口冲突**:另一个应用程序正在使用 25672 端口。 2. **多个 RabbitMQ 实例运行在同一台机器上**:如果存在多个 RabbitMQ 节点实例,则可能会发生端口冲突[^1]。 #### 检查端口占用情况 可以通过以下命令检查是否有其他程序占用了 25672 端口: ```bash netstat -tuln | grep 25672 ``` 或者在某些操作系统中可以使用: ```bash lsof -i :25672 ``` 上述命令会显示当前绑定到 25672 的进程及其 PID。如果有其他服务占用了此端口,请停止这些服务或将它们配置为使用不同的端口。 #### 修改 RabbitMQ 配置文件 如果无法更改其他服务的端口号,可以选择修改 RabbitMQ 的默认分布端口设置。编辑 RabbitMQ 的配置文件(通常是 `/etc/rabbitmq/rabbitmq.conf` 或者 `rabbitmq.config`),并添加或更新以下参数来指定新的分布端口范围: ```ini kernel.distribution_port_range.min = 25673 kernel.distribution_port_range.max = 25680 ``` 这将把分布端口更改为一个新的范围 (例如, 25673 到 25680)。 完成修改后重启 RabbitMQ 服务以应用新配置: ```bash sudo systemctl restart rabbitmq-server ``` #### 使用 Erlang Cookie 进行集群验证 确保所有节点上的 `.erlang.cookie` 文件一致,并具有正确的权限。这是为了防止由于不匹配的 cookie 导致连接失败而引发类似的错误消息。 通过以上方法应该能够有效解决 RabbitMQ 分布式端口被占用的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值