Назад | Перейти на главную страницу

Кластер RabbitMQ: узел сообщается как неработающий при проверке на других узлах

После присоединения узла RabbitMQ к кластеру мы заметили, что другие узлы в кластере пометили его как неработающий, под предупреждениями:

root@rabbit2:# rabbitmqctl cluster_status
Cluster status of node 'rabbit@rabbit2' ...
[{nodes,[{disc,['rabbit@rabbit1','rabbit@rabbit2',
                'rabbit@rabbit3']}]},
 {running_nodes,['rabbit@rabbit1','rabbit@rabbit3','rabbit@rabbit2']},
 {cluster_name,<<"rabbit@rabbit2.domain.local">>},
 {partitions,[]},
 {alarms,[{'rabbit@rabbitmq-1',[nodedown]},
          {'rabbit@rabbitmq-3',[]},
          {'rabbit@rabbitmq-2',[]}]}]

Проверяя рассматриваемый кивок, нет никаких проблем:

root@rabbit1:# rabbitmqctl cluster_status

Cluster status of node 'rabbit@rabbitmq-1' ...
[{nodes,[{disc,['rabbit@rabbit1','rabbit@rabbit2',
                'rabbit@rabbit3']}]},
{running_nodes,['rabbit@rabbit2','rabbit@rabbit3','rabbit@rabbit1']},
{cluster_name,<<"rabbit@rabbit2.domain.local">>},
{partitions,[]},
{alarms,[{'rabbit@rabbit2',[]},
         {'rabbit@rabbit3',[]},
         {'rabbit@rabbit1',[]}]}]

Мы попытались очистить установку rabbitmq и всех его компонентов erlang и начать заново, но узел по-прежнему дает ту же проблему.

Я столкнулся с той же проблемой. Единственный способ очистить тревогу - удалить узел из кластера и снова присоединиться к нему. Но сигнал тревоги появляется снова через некоторое время, всегда на том же узле. Странно выглядит этот узел, который работает нормально, даже если установлен этот сигнал тревоги.

Я исследую глубже и, вероятно, нашел решение:

  • убедитесь, что имена хостов rabbit1, rabbit2 и rabbit3 разрешаются на всех хостах кластера.
  • Я отключил ipv6 на одном узле кластера (который был отключен). Настройки IPv6 (включен / выключен) должны быть одинаковыми на всех хостах.