cluster_formation.classic_config.nodes не работает rabbitmq - PullRequest
0 голосов
/ 29 января 2019

У меня есть 2 узла rabbitmq.Их имена узлов: rabbit @ testhost1 и rabbit @ testhost2 Я бы хотел, чтобы они могли автоматически кластеризоваться.

На testhost1

# cat /etc/rabbitmq/rabbitmq.conf
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config
cluster_formation.classic_config.nodes.1 = rabbit@testhost1
cluster_formation.classic_config.nodes.2 = rabbit@testhost2

На testhost2

# cat /etc/rabbitmq/rabbitmq.conf
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config
cluster_formation.classic_config.nodes.1 = rabbit@testhost1
cluster_formation.classic_config.nodes.2 = rabbit@testhost2

Iсначала запустите rabbit @ testhost1, а затем rabbit@testhost2.

Второй узел не присоединился к кластеру первого узла.

Хотя узел rabbit @ testhost1 может присоединиться к rabbit @ testhost2 с помощью команды rabbitmqctl: rabbitmqctl join_cluster rabbit @ testhost2.Таким образом, сеть между ними не должна иметь проблем.

Не могли бы вы дать мне некоторое представление о том, почему нельзя объединить кластер?Конфигурация не правильная?

Я открыл журнал отладки, и информация, связанная с rabbit_peer_discovery_classic_config, очень мала:

2019-01-28 16:56:47.913 [info] <0.250.0> Peer discovery backend rabbit_peer_discovery_classic_config does not support registration, skipping registration.

Версия rabbitmq - 3.7.8

1 Ответ

0 голосов
/ 23 февраля 2019

Вы запускали узлы без конфигурации кластера до того, как пытались кластеризовать?

Я запустил отдельные одноранговые узлы с конфигурацией по умолчанию один раз, прежде чем добавил настройки формирования кластера в файл конфигурации.Запуская узел без конфигурации кластеризации, он, по-видимому, образует собственный кластер, и при дальнейшем запуске будет связываться только с последним известным кластером (self).

С https://www.rabbitmq.com/cluster-formation.html

Как работает одноранговое обнаружение

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

Вы сможете сбросить узел с помощью rabbitmqctl reset (Внимание! При этом удаляются все данные из базы данных управления, например:настраивает пользователей и vhosts, а также удаляет все постоянные сообщения вместе с информацией о кластеризации.), а затем использует конфигурацию кластеризации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...