Am configurat un cluster RabbitMQ cu 3 noduri în docker folosind următoarele,
docker run -d --rm --net rabbits `
-v ${PWD}/config/rabbit-1/:/config/ `
-e RABBITMQ_CONFIG_FILE=/config/rabbitmq `
-e RABBITMQ_ERLANG_COOKIE=WIWVHCDTCIUAWANLMQAW `
--hostname rabbit-1 `
--nume iepure-1 `
-p 8081:15672 `
-p 8084:5672 `
rabbitmq:3.8-management
Numele meu de rețea docker este iepuri. Mă chinui să configurez un echilibrator de încărcare docker HAProxy pentru acest cluster.Sunt un începător complet atât în docker, cât și în echilibrarea încărcăturii, așa că fișierul de configurare nu are prea mult sens pentru mine. Următoarele este actualul meu haproxy.config,
global
depanare
implicite
jurnal global
modul tcp
timeout connect 5000
timeout client 50000
server timeout 50000
principalul frontend
lega*:8089
aplicația default_backend
aplicația backend
echilibru roundrobin
modul http
server rabbit-1 172.18.0.2:8084
server rabbit-2 172.18.0.3:8085
server rabbit-3 172.18.0.4:8086
172.18.0.* este adresa mea IP a nodurilor RabbitMQ, nu sunt sigur dacă ar trebui să dau adresa IP sau numele rețelei în aplicația backend. Și nu sunt sigur nici de modul. Ceea ce încerc să obțin este ca aplicația mea de microserviciu client 3 nod să trimită/primi mesaje prin intermediul amqp://guest:guest@loadbalancer:5672 URL. Te rog ajuta-ma.