【问题标题】:Rabbit MQ changing hostname while preserving rabbitMQ artifacts and messagesRabbitmq 更改主机名,同时保留 rabbitMQ 工件和消息
【发布时间】:2021-11-30 16:33:37
【问题描述】:

这个问题是关于rabbitmq config 我希望这个问题适用于 stackoverflow 论坛。 如果不是,请指出我正确的论坛

我需要将 linux 服务器的主机名从“thishost”更改为“thathost”的问题陈述 主机“thishost”上安装了 RabbitMQ,其中包含大量工件和消息 当主机名更改为“thathost”时,我需要能够保留所有 RabbitMQ 工件,例如队列、交换和消息

我正在考虑更改配置以启用rabbitmq 查看旧主机名(thishost),尽管Linux 的名称已更改

为了确保rabbitmq主机名保持不变,我通过在rabbitmq配置文件中配置以下两个参数将其与原始主机名挂钩

/etc/rabbitmq/rabbitmq-env.conf
...
HOSTNAME=thishost
NODENAME=rabbit@thishost

在 rabbitmq 配置中完成了这个更改后,我将 linux 主机名更改为“thathost”并尝试启动 rabbitmq 服务。

rabbitmq服务现在拒绝启动,错误信息如下

service rabbitmq-server start
Job for rabbitmq-server.service failed because the control process exited with error code.
See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.

journalctl -xe
Nov 30 11:20:07 ubuntula1 systemd[1]: Failed to start RabbitMQ Messaging Server.
Nov 30 11:20:18 ubuntula1 systemd[1]: rabbitmq-server.service: Failed with result 'exit-code'.

日志文件 /var/log/rabbitq 显示以下错误

/var/log/rabbitq 
 ERROR: epmd error for host thishost: nxdomain (non-existing domain)

有什么想法

  • 如何修复 rabbitmq 配置
  • 使rabbitmq 与主机名无关的任何替代方法
  • 是否有更好的办法跨主机名保留 rabbitmq 工件

请注意我尝试关注

  1. 使用 rabbitmqctl export__definitions/import_definitions 导出导入工件
  2. 使用 rabbitio 存储和加载消息 然而,正如我所提到的,我有大量的工件和消息,并且该方法所涉及的严格性使其容易出错,因此我正在寻找一种不太严格的方法

非常感谢各位

【问题讨论】:

标签: linux rabbitmq


【解决方案1】:

查看日志文件中的错误消息“主机此主机的 epmd 错误:nxdomain(不存在的域)”
我偶然发现了这篇文章How to resolve ERROR: epmd error for host nxdomain (non-existing domain)? 虽然这不是直接相关的,但它确实提供了一个提示,即需要 /etc/hosts 条目将旧主机名映射到相同的 IP 地址。

在 /etc/hosts 中添加旧主机名的别名后,我的问题就解决了 :-)

总结一下,如果你想更改你的 linux 主机的主机名 - 那么你需要做两件事来避免你的工件在主机名更改后变得不可用

  1. 如前所述,更改为 rabbitmq 配置 /etc/rabbitmq/rabbitmq-env.conf ... HOSTNAME=thishost

  2. 在我的 /etc/hosts 中创建一个别名,以将旧主机名映射添加到 ip 地址以及新主机名,如下所示

    /etc/hosts ... a.b.c.d thathost thishost

这解决了我的问题,并且 rabbitmq 在主机名更改后所有现有工件都完好无损地开始了

【讨论】:

    猜你喜欢
    • 2019-01-13
    • 1970-01-01
    • 1970-01-01
    • 2016-08-19
    • 2018-07-08
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多