Я настроил кластер RabbitMQ с 3 узлами в докере, используя следующее:
docker run -d --rm --net кролики `
-v ${PWD}/config/кролик-1/:/config/ `
-e RABBITMQ_CONFIG_FILE=/config/rabbitmq `
-e RABBITMQ_ERLANG_COOKIE=WIWVHCDTCIUAWANLMQAW `
--hostname кролик-1 `
--name кролик-1 `
-p 8081:15672 `
-p 8084:5672 `
rabbitmq:3.8-управление
Имя моей сети докеров кролики. Я пытаюсь настроить балансировщик нагрузки Docker HAProxy для этого кластера.Я полный новичок как в докере, так и в балансировке нагрузки, поэтому файл конфигурации не имеет для меня особого смысла. Ниже приведен мой текущий haproxy.config,
Глобальный
отлаживать
значения по умолчанию
журнал глобальный
режим TCP
тайм-аут подключения 5000
тайм-аут клиента 50000
тайм-аут сервера 50000
главный интерфейс
привязать *:8089
default_backend приложение
серверное приложение
круговой баланс
режим http
сервер кролик-1 172.18.0.2:8084
сервер кролик-2 172.18.0.3:8085
сервер кролик-3 172.18.0.4:8086
172.18.0.* - это IP-адрес моего узла RabbitMQ, я не уверен, должен ли я указывать IP-адрес или имя сети в бэкэнд-приложении. И насчет режима тоже не уверен. Я пытаюсь добиться того, чтобы мое клиентское микросервисное приложение с 3 узлами отправляло/получало сообщения через amqp://гость:гость@loadbalancer:5672 URL. Пожалуйста, помогите мне.