wureka
wureka

Reputation: 865

ActiveMQ Artemis: messages not forwarded to another node with a consumer connected to queue

I have a cluster composed of two nodes. The two broker.xml are as below

node1 (broker_1067):

<?xml version='1.0'?>

<configuration xmlns="urn:activemq"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:xi="http://www.w3.org/2001/XInclude"
               xsi:schemaLocation="urn:activemq /schema/artemis-configuration.xsd">

   <core xmlns="urn:activemq:core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="urn:activemq:core ">

      <name>broker_1067</name>

      <persistence-enabled>true</persistence-enabled>
      
      <!-- .... skip some configs ... -->

      <connectors>
         <connector name="cluster-connect">tcp://192.168.10.67:61616</connector>
      </connectors>

      <disk-scan-period>5000</disk-scan-period>
      <max-disk-usage>90</max-disk-usage>
      <critical-analyzer>true</critical-analyzer>
      <critical-analyzer-timeout>120000</critical-analyzer-timeout>
      <critical-analyzer-check-period>60000</critical-analyzer-check-period>
      <critical-analyzer-policy>HALT</critical-analyzer-policy>
      <page-sync-timeout>1008000</page-sync-timeout>    
      <global-max-messages>-1</global-max-messages>

      <acceptors>
         <!-- Acceptor for every supported protocol -->
         <acceptor name="artemis">tcp://192.168.10.67:61616?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;amqpMinLargeMessageSize=102400;protocols=CORE,AMQP,STOMP,HORNETQ,MQTT,OPENWIRE;useEpoll=true;amqpCredits=1000;amqpLowCredits=300;amqpDuplicateDetection=true;supportAdvisory=false;suppressInternalManagementObjects=false</acceptor>

         <!-- AMQP Acceptor.  Listens on default AMQP port for AMQP traffic.-->
         <acceptor name="amqp">tcp://192.168.10.67:5672?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpLowCredits=300;amqpMinLargeMessageSize=102400;amqpDuplicateDetection=true</acceptor>
      </acceptors>

      <cluster-user>alt_cluster</cluster-user>
      <cluster-password>alt_cluster</cluster-password>

      <broadcast-groups>
         <broadcast-group name="bg-group1">
            <group-address>231.7.7.6</group-address>
            <group-port>9876</group-port>
            <broadcast-period>5000</broadcast-period>
            <connector-ref>cluster-connect</connector-ref>
         </broadcast-group>
      </broadcast-groups>

      <discovery-groups>
         <discovery-group name="dg-group1">
            <group-address>231.7.7.6</group-address>
            <group-port>9876</group-port>
            <refresh-timeout>10000</refresh-timeout>
         </discovery-group>
      </discovery-groups>

      <cluster-connections>
          <cluster-connection name="my-cluster">
            <address>test.TestQueue</address>
            <connector-ref>cluster-connect</connector-ref>
            <message-load-balancing>ON_DEMAND</message-load-balancing>
            <max-hops>0</max-hops>
            <discovery-group-ref discovery-group-name="dg-group1"/>
         </cluster-connection>
      </cluster-connections>

      <security-settings>
         <security-setting match="#">
            <permission type="createNonDurableQueue" roles="amq"/>
            <permission type="deleteNonDurableQueue" roles="amq"/>
            <permission type="createDurableQueue" roles="amq"/>
            <permission type="deleteDurableQueue" roles="amq"/>
            <permission type="createAddress" roles="amq"/>
            <permission type="deleteAddress" roles="amq"/>
            <permission type="consume" roles="amq"/>
            <permission type="browse" roles="amq"/>
            <permission type="send" roles="amq"/>
            <!-- we need this otherwise ./artemis data imp wouldn't work -->
            <permission type="manage" roles="amq"/>
         </security-setting>
         <security-setting match="ActiveMQ.Advisory.#">
            <permission type="createNonDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="deleteNonDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="createDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers"/>
            <permission type="deleteDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers"/>
            <permission type="createAddress" roles="amq,topicadmin,mdmsusers"/>
            <permission type="deleteAddress" roles="amq,topicadmin,mdmsusers"/>
            <permission type="consume" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="browse"  roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="send"    roles="amq,topicadmin,mdmsusers,tpcusers"/>
            <!-- we need this otherwise ./artemis data imp wouldn't work -->
            <permission type="manage" roles="amq"/>
         </security-setting>
         <security-setting match="test.TestQueue">
            <permission type="createNonDurableQueue" roles="amq,topicadmin"/>
            <permission type="deleteNonDurableQueue" roles="amq,topicadmin"/>
            <permission type="createDurableQueue" roles="amq,topicadmin"/>
            <permission type="deleteDurableQueue" roles="amq,topicadmin"/>
            <permission type="createAddress" roles="amq"/>
            <permission type="deleteAddress" roles="amq"/>
            <permission type="consume" roles="amq,topicadmin"/>
            <permission type="browse" roles="amq,topicadmin"/>
            <permission type="send" roles="amq,topicadmin"/>
            <!-- we need this otherwise ./artemis data imp wouldn't work -->
            <permission type="manage" roles="amq"/>
         </security-setting>
      </security-settings>

      <address-settings>
         <!-- if you define auto-create on certain queues, management has to be auto-create -->
         <address-setting match="activemq.management#">
            <dead-letter-address>DLQ</dead-letter-address>
            <expiry-address>ExpiryQueue</expiry-address>
            <redelivery-delay>0</redelivery-delay>
            <!-- with -1 only the global-max-size is in use for limiting -->
            <max-size-bytes>-1</max-size-bytes>
            <message-counter-history-day-limit>10</message-counter-history-day-limit>
            <address-full-policy>PAGE</address-full-policy>
            <auto-create-queues>true</auto-create-queues>
            <auto-create-addresses>true</auto-create-addresses>
         </address-setting>
         <!--default for catch all-->
         <address-setting match="#">
            <dead-letter-address>DLQ</dead-letter-address>
            <expiry-address>ExpiryQueue</expiry-address>
            <redelivery-delay>0</redelivery-delay>
            <!-- if max-size-bytes and max-size-messages were both enabled, the system will enter into paging
                 based on the first attribute to hits the maximum value -->
            <!-- limit for the address in bytes, -1 means unlimited -->
            <max-size-bytes>-1</max-size-bytes>
            <!-- limit for the address in messages, -1 means unlimited -->
            <max-size-messages>-1</max-size-messages>           
            <page-size-bytes>10M</page-size-bytes>            
            <max-read-page-messages>1000</max-read-page-messages>            
            <max-read-page-bytes>1M</max-read-page-bytes>
            <message-counter-history-day-limit>10</message-counter-history-day-limit>
            <address-full-policy>PAGE</address-full-policy>
            <auto-create-queues>false</auto-create-queues>
            <auto-create-addresses>false</auto-create-addresses>
            <auto-delete-queues>false</auto-delete-queues>
            <auto-delete-addresses>false</auto-delete-addresses>
            <redistribution-delay>0</redistribution-delay>
         </address-setting>
         <address-setting match="test.TestQueue">
            <redelivery-delay>0</redelivery-delay>
            <max-size-bytes>-1</max-size-bytes>       
            <max-size-messages>-1</max-size-messages>
            <page-size-bytes>10M</page-size-bytes>
            <max-read-page-messages>1000</max-read-page-messages>
            <max-read-page-bytes>1M</max-read-page-bytes>
            <message-counter-history-day-limit>10</message-counter-history-day-limit>
            <address-full-policy>PAGE</address-full-policy>
            <auto-create-queues>true</auto-create-queues>
            <auto-create-addresses>false</auto-create-addresses>
            <auto-delete-queues>false</auto-delete-queues>
            <auto-delete-addresses>false</auto-delete-addresses>
            <redistribution-delay>0</redistribution-delay>
         </address-setting>

      </address-settings>

      <addresses>
         <address name="DLQ">
            <anycast>
               <queue name="DLQ" />
            </anycast>
         </address>
         <address name="ExpiryQueue">
            <anycast>
               <queue name="ExpiryQueue" />
            </anycast>
         </address>
         <address name="test.TestQueue">
            <anycast>
               <queue name="test.TestQueue" />
            </anycast>
         </address>
      </addresses>
   </core>
</configuration>

node2 (broker_1167):

<?xml version='1.0'?>

<configuration xmlns="urn:activemq"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:xi="http://www.w3.org/2001/XInclude"
               xsi:schemaLocation="urn:activemq /schema/artemis-configuration.xsd">

   <core xmlns="urn:activemq:core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="urn:activemq:core ">

      <name>broker_1167</name>

      <persistence-enabled>true</persistence-enabled>

      <!-- .... skip some configs ... -->

      <connectors>
         <!-- Connector used to be announced through cluster connections and notifications -->
         <connector name="cluster-connect">tcp://192.168.11.67:61616</connector>
      </connectors>

      <disk-scan-period>5000</disk-scan-period>
      <max-disk-usage>90</max-disk-usage>
      <critical-analyzer>true</critical-analyzer>
      <critical-analyzer-timeout>120000</critical-analyzer-timeout>
      <critical-analyzer-check-period>60000</critical-analyzer-check-period>
      <critical-analyzer-policy>HALT</critical-analyzer-policy>
      <page-sync-timeout>600000</page-sync-timeout>
      <global-max-messages>-1</global-max-messages>

      <acceptors>
         <acceptor name="artemis">tcp://192.168.11.67:61616?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;amqpMinLargeMessageSize=102400;protocols=CORE,AMQP,STOMP,HORNETQ,MQTT,OPENWIRE;useEpoll=true;amqpCredits=1000;amqpLowCredits=300;amqpDuplicateDetection=true;supportAdvisory=false;suppressInternalManagementObjects=false</acceptor>

         <!-- AMQP Acceptor.  Listens on default AMQP port for AMQP traffic.-->
         <acceptor name="amqp">tcp://192.168.11.67:5672?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpLowCredits=300;amqpMinLargeMessageSize=102400;amqpDuplicateDetection=true</acceptor>
      </acceptors>

      <cluster-user>alt_cluster</cluster-user>
      <cluster-password>alt_cluster</cluster-password>

      <broadcast-groups>
         <broadcast-group name="bg-group1">
            <group-address>231.7.7.6</group-address>
            <group-port>9876</group-port>
            <broadcast-period>5000</broadcast-period>
            <connector-ref>cluster-connect</connector-ref>
         </broadcast-group>
      </broadcast-groups>

      <discovery-groups>
         <discovery-group name="dg-group1">
            <group-address>231.7.7.6</group-address>
            <group-port>9876</group-port>
            <refresh-timeout>10000</refresh-timeout>
         </discovery-group>
      </discovery-groups>

      <cluster-connections>
         <cluster-connection name="my-cluster">
            <address>test.TestQueue</address>
            <connector-ref>cluster-connect</connector-ref>
            <message-load-balancing>ON_DEMAND</message-load-balancing>
            <max-hops>0</max-hops>
            <discovery-group-ref discovery-group-name="dg-group1"/>
         </cluster-connection>
      </cluster-connections>


      <security-settings>
         <security-setting match="#">
            <permission type="createNonDurableQueue" roles="amq"/>
            <permission type="deleteNonDurableQueue" roles="amq"/>
            <permission type="createDurableQueue" roles="amq"/>
            <permission type="deleteDurableQueue" roles="amq"/>
            <permission type="createAddress" roles="amq"/>
            <permission type="deleteAddress" roles="amq"/>
            <permission type="consume" roles="amq"/>
            <permission type="browse" roles="amq"/>
            <permission type="send" roles="amq"/>
            <!-- we need this otherwise ./artemis data imp wouldn't work -->
            <permission type="manage" roles="amq"/>
         </security-setting>

         <security-setting match="ActiveMQ.Advisory.#">
            <permission type="createNonDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="deleteNonDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="createDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers"/>
            <permission type="deleteDurableQueue" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers"/>
            <permission type="createAddress" roles="amq,topicadmin,mdmsusers,tpcusers"/>
            <permission type="deleteAddress" roles="amq,topicadmin,mdmsusers,tpcusers"/>
            <permission type="consume" roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="browse"  roles="amq,topicadmin,mdmsusers,tpcusers,bdusers,nondurableusers"/>
            <permission type="send"    roles="amq,topicadmin,mdmsusers,tpcusers"/>
            <!-- we need this otherwise ./artemis data imp wouldn't work -->
            <permission type="manage" roles="amq"/>
         </security-setting>


         <security-setting match="test.TestQueue">
            <permission type="createNonDurableQueue" roles="amq,topicadmin"/>
            <permission type="deleteNonDurableQueue" roles="amq,topicadmin"/>
            <permission type="createDurableQueue" roles="amq,topicadmin"/>
            <permission type="deleteDurableQueue" roles="amq,topicadmin"/>
            <permission type="createAddress" roles="amq"/>
            <permission type="deleteAddress" roles="amq"/>
            <permission type="consume" roles="amq,topicadmin"/>
            <permission type="browse" roles="amq,topicadmin"/>
            <permission type="send" roles="amq,topicadmin"/>
            <!-- we need this otherwise ./artemis data imp wouldn't work -->
            <permission type="manage" roles="amq"/>
         </security-setting>
      </security-settings>

      <address-settings>
         <!-- if you define auto-create on certain queues, management has to be auto-create -->
         <address-setting match="activemq.management#">
            <dead-letter-address>DLQ</dead-letter-address>
            <expiry-address>ExpiryQueue</expiry-address>
            <redelivery-delay>0</redelivery-delay>
            <!-- with -1 only the global-max-size is in use for limiting -->
            <max-size-bytes>-1</max-size-bytes>
            <message-counter-history-day-limit>10</message-counter-history-day-limit>
            <address-full-policy>PAGE</address-full-policy>
            <auto-create-queues>true</auto-create-queues>
            <auto-create-addresses>true</auto-create-addresses>
         </address-setting>
         <!--default for catch all-->
         <address-setting match="#">
            <dead-letter-address>DLQ</dead-letter-address>
            <expiry-address>ExpiryQueue</expiry-address>
            <redelivery-delay>0</redelivery-delay>
            <max-size-bytes>-1</max-size-bytes>
            <max-size-messages>-1</max-size-messages>
            <page-size-bytes>10M</page-size-bytes>

            <max-read-page-messages>1000</max-read-page-messages>
            <max-read-page-bytes>1M</max-read-page-bytes>
            <message-counter-history-day-limit>10</message-counter-history-day-limit>
            <address-full-policy>PAGE</address-full-policy>
            <auto-create-queues>false</auto-create-queues>
            <auto-create-addresses>false</auto-create-addresses>
            <auto-delete-queues>false</auto-delete-queues>
            <auto-delete-addresses>false</auto-delete-addresses>
            <redistribution-delay>0</redistribution-delay>
         </address-setting>

         <address-setting match="test.TestQueue">
            <redelivery-delay>0</redelivery-delay>
            <max-size-bytes>-1</max-size-bytes>

            <max-size-messages>-1</max-size-messages>
            <page-size-bytes>10M</page-size-bytes>
            <max-read-page-messages>1000</max-read-page-messages>
            <max-read-page-bytes>1M</max-read-page-bytes>
            <message-counter-history-day-limit>10</message-counter-history-day-limit>
            <address-full-policy>PAGE</address-full-policy>
            <auto-create-queues>true</auto-create-queues>
            <auto-create-addresses>false</auto-create-addresses>
            <auto-delete-queues>false</auto-delete-queues>
            <auto-delete-addresses>false</auto-delete-addresses>
            <redistribution-delay>0</redistribution-delay>
         </address-setting>
      </address-settings>

      <addresses>
         <address name="DLQ">
            <anycast>
               <queue name="DLQ" />
            </anycast>
         </address>
         <address name="ExpiryQueue">
            <anycast>
               <queue name="ExpiryQueue" />
            </anycast>
         </address>
         <address name="test.TestQueue">
            <anycast>
               <queue name="test.TestQueue" />
            </anycast>
         </address>
      </addresses>
   </core>
</configuration>

From each node's broker diagram I can see two brokers connecting.

Now I have a consumer subscribing test.TestQueue on broker_1067, and have another producer producing messages to test.TestQueue on broker_1167.

However, my consumer can not get anything. From the web console of broker_1067, the attributes "Message count" and "Message added" of queue test.TestQueue are all zero.

If I produce messages to broker_1067 then my consumer connecting to broker_1067 can get messages. Same situation to broker_1167.

Here's my consumer code and producer code as below.

Consumer:

public static final String amqUrl = "amqp://192.168.10.67:5672";
public static final String queueName = "test.TestQueue";
public static final String amqUser   = "FET";
public static final String amqPasswd = "1QAZ2WSX";
public static final String clientId  = "Tester-1";
public static final boolean useTransactionMode = false;
public static final int WAIT_SECONDS = 1200; // seconds
private ConnectionFactory connectionFactory;
private Connection amqConnection;
private Session amqSession;
private Topic subscribedTopic, producedTopic;
private MessageConsumer messageSubscriber;
private MessageProducer messageProducer;
private Queue queue;

System.out.printf("Connect to %s\n ", amqUrl);
connectionFactory = new JmsConnectionFactory(amqUser, amqPasswd, amqUrl);
amqConnection     =  connectionFactory.createConnection();
amqConnection.setClientID(clientId);
amqConnection.start();

amqSession = amqConnection.createSession(useTransactionMode, Session.AUTO_ACKNOWLEDGE);
System.out.printf("Subscribe QUEUE: [%s]\n", queueName);
queue      = amqSession.createQueue(queueName);
messageSubscriber = amqSession.createConsumer(queue);

System.out.printf("Wait message coming in from [%s] for %d seconds\n", queueName, WAIT_SECONDS);
Message queueMessage = messageSubscriber.receive(WAIT_SECONDS*1000); // Wait some time
System.out.println("Timeout!");
if (queueMessage == null) {
    System.out.println("No message comes in!");
} else {
    System.out.printf(String.format("topic: [%s] Some message comes in....", queueName));
    TextMessage textMessage = (TextMessage) queueMessage;
    System.out.printf("Message content is: %s\n", textMessage.getText());
}
messageSubscriber.close();
amqSession.close();
amqConnection.stop();
amqConnection.close();

Producer code:

public static final String amqUrl = "amqp://192.168.10.67:5672";
public static final String queueName = "test.TestQueue";
public static final String amqUser   = "FET";
public static final String amqPasswd = "1QAZ2WSX";
public static final String clientId  = "Tester-2";
public static final boolean useTransactionMode = false;
public static final int WAIT_SECONDS = 1200; // seconds
private ConnectionFactory connectionFactory;
private Connection amqConnection;
private Session amqSession;
private Topic subscribedTopic, producedTopic;
private MessageConsumer messageSubscriber;
private MessageProducer messageProducer;
private Queue queue;

System.out.printf("Connect to %s\n ", amqUrl);
connectionFactory = new JmsConnectionFactory(amqUser, amqPasswd, amqUrl);
amqConnection     =  connectionFactory.createConnection();
amqConnection.setClientID(clientId);
amqConnection.start();

amqSession = amqConnection.createSession(useTransactionMode, Session.AUTO_ACKNOWLEDGE);
System.out.println("Be a producer for putting message to queue:" + queueName);
queue      = amqSession.createQueue(queueName);
messageProducer = amqSession.createProducer(queue);

TextMessage textMessage = amqSession.createTextMessage();
String text = "AAAAAAAAAAAAAAAAAAAAAA";
textMessage.setText(text);
System.out.println("Before sending text message :["+ text+"]");
messageProducer.send(textMessage);
System.out.println("After sending text message");

messageProducer.close();
amqSession.close();
amqConnection.stop();
amqConnection.close();

Consumer runs logs:

Connect to amqp://192.168.10.67:5672
Subscribe QUEUE: [test.TestQueue]
Wait message coming in from [test.TestQueue] for 1200 seconds

Producer runs log:

Connect to amqp://192.168.11.67:5672
Be a producer for putting message to queue:test.TestQueue
Before sending text message :[AAAAAAAAAAAAAAAAAAAAAA]
After sending text message

When two MQ runs, their logs whow as below.

broler_1067 runs first:

2022-09-16 22:35:24,773 INFO  [org.apache.activemq.artemis] AMQ241001: Embedded web server started at http://0.0.0.0:8161
2022-09-16 22:35:24,775 INFO  [org.apache.activemq.artemis] AMQ241002: Artemis Jolokia REST API available at http://0.0.0.0:8161/console/jolokia
2022-09-16 22:35:24,776 INFO  [org.apache.activemq.artemis] AMQ241004: Artemis Console available at http://0.0.0.0:8161/console
2022-09-16 22:35:24,909 INFO  [io.hawt.web.auth.LoginServlet] Hawtio login is using 1800 sec. HttpSession timeout
2022-09-16 22:35:27,835 INFO  [io.hawt.web.auth.keycloak.KeycloakServlet] Keycloak integration is disabled
2022-09-16 22:35:37,613 WARN  [org.apache.activemq.artemis.core.server] AMQ224091: Bridge ClusterConnectionBridge@27f20c06 [name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::name=broker_1067], temp=false]@55882f76 targetConnector=ServerLocatorImpl (identity=(Cluster-connection-bridge::ClusterConnectionBridge@27f20c06 [name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::name=broker_1067], temp=false]@55882f76 targetConnector=ServerLocatorImpl [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-11-67], discoveryGroupConfiguration=null]]::ClusterConnectionImpl@1418550995[nodeUUID=04384127-35bd-11ed-868f-00505694e058, connector=TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-10-67, address=, server=ActiveMQServerImpl::name=broker_1067])) [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-11-67], discoveryGroupConfiguration=null]] is unable to connect to destination. Retrying
2022-09-16 22:35:38,390 INFO  [org.apache.activemq.artemis.core.server] AMQ221027: Bridge ClusterConnectionBridge@27f20c06 [name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::name=broker_1067], temp=false]@55882f76 targetConnector=ServerLocatorImpl (identity=(Cluster-connection-bridge::ClusterConnectionBridge@27f20c06 [name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.feecdc06-35bd-11ed-a7c2-00505694586c, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::name=broker_1067], temp=false]@55882f76 targetConnector=ServerLocatorImpl [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-11-67], discoveryGroupConfiguration=null]]::ClusterConnectionImpl@1418550995[nodeUUID=04384127-35bd-11ed-868f-00505694e058, connector=TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-10-67, address=, server=ActiveMQServerImpl::name=broker_1067])) [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-11-67], discoveryGroupConfiguration=null]] is connected

broker_1167 (after broker_1167 runs successfully, broker_1167 runs):

2022-09-16 22:35:39,459 INFO  [io.hawt.web.servlets.JolokiaConfiguredAgentServlet] Jolokia overridden property: [key=policyLocation, value=file:/opt/250_broker_1167/etc/jolokia-access.xml]
2022-09-16 22:35:39,538 INFO  [org.apache.activemq.artemis] AMQ241001: Embedded web server started at http://0.0.0.0:8161
2022-09-16 22:35:39,540 INFO  [org.apache.activemq.artemis] AMQ241002: Artemis Jolokia REST API available at http://0.0.0.0:8161/console/jolokia
2022-09-16 22:35:39,540 INFO  [org.apache.activemq.artemis] AMQ241004: Artemis Console available at http://0.0.0.0:8161/console
2022-09-16 22:35:39,613 INFO  [org.apache.activemq.artemis.core.server] AMQ221027: Bridge ClusterConnectionBridge@5b2f8d02 [name=$.artemis.internal.sf.my-cluster.04384127-35bd-11ed-868f-00505694e058, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.04384127-35bd-11ed-868f-00505694e058, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::name=broker_1167], temp=false]@3218f4c5 targetConnector=ServerLocatorImpl (identity=(Cluster-connection-bridge::ClusterConnectionBridge@5b2f8d02 [name=$.artemis.internal.sf.my-cluster.04384127-35bd-11ed-868f-00505694e058, queue=QueueImpl[name=$.artemis.internal.sf.my-cluster.04384127-35bd-11ed-868f-00505694e058, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::name=broker_1167], temp=false]@3218f4c5 targetConnector=ServerLocatorImpl [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-10-67], discoveryGroupConfiguration=null]]::ClusterConnectionImpl@1954355506[nodeUUID=feecdc06-35bd-11ed-a7c2-00505694586c, connector=TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-11-67, address=, server=ActiveMQServerImpl::name=broker_1167])) [initialConnectors=[TransportConfiguration(name=artemis, factory=org-apache-activemq-artemis-core-remoting-impl-netty-NettyConnectorFactory) ?port=61616&host=192-168-10-67], discoveryGroupConfiguration=null]] is connected
2022-09-16 22:35:43,153 INFO  [io.hawt.web.auth.LoginServlet] Hawtio login is using 1800 sec. HttpSession timeout
2022-09-16 22:35:45,823 INFO  [io.hawt.web.auth.keycloak.KeycloakServlet] Keycloak integration is disabled

What configuration did I miss?

Upvotes: 0

Views: 687

Answers (1)

This problem is caused by max-hops equals 0. The default value for this parameter is 1, which means messages are only load balanced to other Apache ActiveMQ Artemis serves which are directly connected to this server, see the documentation for further details.

Upvotes: 1

Related Questions