ActiveMQ MulticastDiscoveryAgent fails with IOException saying the network is down

Solution Verified - Updated -

Environment

  • Fuse Message Broker all versions
  • using multicast discovery

Issue

ActiveMQ MulticastDiscoveryAgent fails with IOException saying the network is down

ERROR MulticastDiscoveryAgent - Failed to advertise our service: default.ActiveMQ-4.alive....:61616 java.io.IOException: Network is down
ERROR LocalAgentServiceImpl - java.lang.InternalError: Unsupported VMGlobal Type 0

Resolution

The network administrator for the broker's network needs to configure the network to allow the broker's host to broadcast. This will allow auto discovery of other brokers on the network.

Alternatively, a quick solution would be to turn off (comment out) your network connector and comment out the discovery uri in the transport connector.

Root Cause

This is caused when he multicast discovery fails due to the fact that the broker's host is not allowed do this on the network.

The following stack trace will be observed:

java.io.IOException: Network is down
at java.net.PlainDatagramSocketImpl.send(Native Method)
at java.net.DatagramSocket.send(DatagramSocket.java:612)
at org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.doAdvertizeSelf(MulticastDiscoveryAgent.java:383)
at org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.doTimeKeepingServices(MulticastDiscoveryAgent.java:367)
at org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.run(MulticastDiscoveryAgent.java:329)
at java.lang.Thread.run(Thread.java:637)

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Comments