【发布时间】:2013-01-17 12:50:16
【问题描述】:
我在我的 django 项目中使用 django-celery。昨天我更改了计算机的主机名(我使用的是 Ubuntu 12.04,编辑了文件 '/etc/hostname'),下次重新启动 django-celery 失败并出现错误
Consumer: Connection Error: [Errno 111] Connection refused. Trying again in 4 seconds...
在对此错误进行一些研究后,我发现,更改我的主机名导致了来自 here 的此错误。我的rabbitmq启动日志显示
文件:/var/log/rabbitmq/startup_log
Activating RabbitMQ plugins ...
********************************************************************************
********************************************************************************
0 plugins activated:
ERROR: epmd error for host "jinesh": nxdomain (non-existing domain)
我的 startup_err 文件是空的。
当我跑步时
root@jinesh:/home/jinesh# rabbitmqctl list_users
Listing users ...
Error: unable to connect to node rabbit@jinesh: nodedown
DIAGNOSTICS
===========
nodes in question: [rabbit@jinesh]
hosts, their running nodes and ports:
- unable to connect to epmd on jinesh: nxdomain
current node details:
- node name: rabbitmqctl4956@jinesh
- home dir: /var/lib/rabbitmq
- cookie hash: RGhmB2JR1LbZ57j7xWWTxg==
我希望更改节点名可以解决此问题。但我找不到这样做的方法。有人知道如何解决这个问题吗?
更新
在更改主机名时,您必须同时更改 /etc/hostname 和 /etc/hosts 文件。
我重新安装了rabbitmq并解决了这个问题,将回答这个问题。
【问题讨论】:
-
在 centos/rhel 上,如果您通过 /etc/udev/rules/70-persistant-net.rules 重命名网络接口并重新启动 --> 这样做也会导致您收到错误消息来自
rabbitmqctl status“无法连接到 epmd”。 --> 修复与the accepted answer by @RichardHFung for this question相同。 -
"systemctl restart rabbitmq-server.service" 解决了我遇到的同样问题。
-
如果在 Ubuntu 16.04 或 18.04 上,请勿通过存储库安装 RabbitMQ(它们已过时)。前往rabbitmq.com/install-debian.html 并通过从建议的存储库之一安装 Erlang 和 RabbitMQ 来省去一些麻烦。我前段时间从 erlang 解决方案安装了 Erlang,后来又通过它的 Ubuntu 存储库安装了 RabbitMQ,它最初工作时没有大惊小怪。最近一次升级后出现了问题,我花了 5 个小时试图修复它,但无济于事。我删除了这两个软件包并按照说明重新安装了 Bintray 的版本。固定。
标签: ubuntu rabbitmq django-celery