我在rabbitmq上收到节点关闭错误,有时会发生这种情况。
执行时可以看到以下错误:sudo rabbitmqctl status
或sudo rabbitmqctl list_queues
Error: unable to connect to node : nodedown
connected to epmd (port 4369) on host-name
epmd reports node 'rabbit' running on port 25672
can't establish TCP connection, reason: timeout
suggestion: blocked by firewall?
version:{rabbit,“ RabbitMQ”,“ 3.6.9”}
操作系统:Ubuntu 16.04
我已经检查了可以接受的主机名,自安装以来未更改
也可以远程登录本地主机25672
此错误和可能的解决方案背后的原因是什么?
还有一个问题,我正在使用下面的API检查节点状态
curl -s GET http://edx:[email protected]:15672/api/healthchecks/node/
以上API是否可以检查节点的运行状况?请提出其他建议。我已经设置了一个外壳脚本,它将调用此API,如果状态不正常,它将重新启动Rabbitmq-server服务。脚本每分钟从cron执行一次。
看起来您的Rabbitmq节点已关闭。 rabbitmqctl
需要一个运行中的节点来执行这些命令。
如果使用的是systemd,则可以检查服务状态:
service rabbitmq-server status
或者只是尝试重新启动节点:
rabbitmqctl start_app
端口25672上的Telnet告诉您Rabbitmqctl正在运行,但是RabbitMQ本身不在该端口上运行(默认情况下,它在5672上进行监听)。