Configure active-active setup for ActiveMQ Artemis

I am doing production setup for an ActiveMQ Artemis cluster, but I have few doubts.

  1. In active-active JGroups Artemis setup there are servers associated with one group-name (assume ha policy as replication)

Ex: master1, master2, master3

slave1, slave2, slave3

All the nodes are in one group. So when master1 goes down slave1 comes up as live. All the nodes in the cluster gets information that one node is disconnected, but if the master1-slave1 pair is down, none of the other master-slave node comes as leader. If there are multiple live servers then is there any communication between live servers or not? Why is active-active setup required? Is there any advantage of it?

  1. Should the username & password specified during broker creation also be used for cluster-user and cluster-password in broker.xml? I tried with different user credential for broker and cluster but when I tried logging artemis url with cluster credential it says access denied. But when I tried with broker credentials I logged in successfully.

  2. The application I am working on does not support UDP protocol to connect to the Artemis cluster so I am using TCP protocol to connect with active-active Artemis cluster with below connection string:


So when I bring the master1 down my slave1 connects to my application. But when I bring the slave1 down my application does not connect to next master (i.e. master2 or any other node).

From the documentation I am not able to check if I am doing proper active-active configuration. Please help me with this.

I have shared the broker.xml files of all 6 servers and test-jgroups-file_ping.xml here.