У меня есть узел RabbitMQ, работающий на сервере Windows 2012 (rabbit @ my-server-1).
Я создаю второй узел (rabbit @ my-server-2) на отдельном сервере (также Windows 2012) и хочу кластеризовать его с существующим узлом. Развертывание второго узла осуществляется с помощью Octopus Deploy, и для облегчения жизни я бы хотел, чтобы кластеризация выполнялась автоматически при запуске узла.
Чтение документации (https://www.rabbitmq.com/clustering.html и https://www.rabbitmq.com/configure.html) заставляет меня поверить, что мне просто нужно добавить в файл rabbitmq.conf следующее:
cluster_nodes.disc.1 = rabbit@my-server-1
Однако при этом узел не запускается. Процесс erl.exe запускается с использованием 100% процессора, и я вижу следующее сообщение в файле erl_crash.dump:
Slogan: init terminating in do_boot (generate_config_file)
Я полагаю, что это является симптомом неверного файла конфигурации, и, действительно, удаление этих записей конфигурации позволяет мне нормально запустить узел.
Я могу кластеризовать существующий узел вручную с помощью соответствующих команд rabbitmqctl, но предпочел бы декларативное решение, если это возможно.
Я использую RabbitMQ v3.7.4 и Erlang v20.3
Итак, что я делаю не так? Я немного погуглил, но ничего не нашел.
EDIT
Файл конфигурации полностью:
listeners.ssl.default = 5671
ssl_options.cacertfile = e:/Rabbit/Certificates/cacert.pem
ssl_options.certfile = e:/Rabbit/Certificates/cert.pem
ssl_options.keyfile = e:/Rabbit/Certificates/key.pem
ssl_options.password = xxxxxxx
ssl_options.verify = verify_none
ssl_options.fail_if_no_peer_cert = false
ssl_options.versions.1 = tlsv1.2
web_stomp.ssl.port = 14879
web_stomp.ssl.backlog = 1024
web_stomp.ssl.certfile = e:/Rabbit/Certificates/cert.pem
web_stomp.ssl.keyfile = e:/Rabbit/Certificates/key.pem
web_stomp.ssl.cacertfile = e:/Rabbit/Certificates/cacert.pem
web_stomp.ssl.password = xxxxxxx
cluster_nodes.disc.1 = rabbit@my-server-1