Reputation: 1
I have set up rabbitmq cluster with 3 node and set ha-mode to all and I connect my spring boot project to this cluster it's work find but when rabbitmq master node go down my spring boot project cannot process publish and consume message from another node
here is error I have got:
org.springframework.amqp.AmqpIOException: java.net.UnknownHostException: rabbitmq at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:71) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:504) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.createConnection(CachingConnectionFactory.java:628) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.createBareChannel(CachingConnectionFactory.java:578) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.getCachedChannelProxy(CachingConnectionFactory.java:552) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.getChannel(CachingConnectionFactory.java:534) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.access$1400(CachingConnectionFactory.java:99) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.connection.CachingConnectionFactory$ChannelCachingConnectionProxy.createChannel(CachingConnectionFactory.java:1213) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.core.RabbitTemplate.doExecute(RabbitTemplate.java:1847) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:1815) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:1796) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.core.RabbitAdmin.getQueueProperties(RabbitAdmin.java:345) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.redeclareElementsIfNecessary(AbstractMessageListenerContainer.java:1635) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:995) [spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] at java.lang.Thread.run(Thread.java:750) [na:1.8.0_412] Caused by: java.net.UnknownHostException: rabbitmq at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184) ~[na:1.8.0_412] at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_412] at java.net.Socket.connect(Socket.java:607) ~[na:1.8.0_412] at com.rabbitmq.client.impl.SocketFrameHandlerFactory.create(SocketFrameHandlerFactory.java:60) ~[amqp-client-5.4.3.jar!/:5.4.3] at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:1102) ~[amqp-client-5.4.3.jar!/:5.4.3] at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:1054) ~[amqp-client-5.4.3.jar!/:5.4.3] at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:994) ~[amqp-client-5.4.3.jar!/:5.4.3] at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:457) ~[spring-rabbit-2.0.12.RELEASE.jar!/:2.0.12.RELEASE] ... 13 common frames omitted
2024-06-25 07:38:37.023 INFO 1 --- [ntContainer#0-3] o.s.a.r.c.CachingConnectionFactory : Attempting to connect to: [rabbit1:5672, rabbit2:5673, rabbitmq:5674] 2024-06-25 07:39:02.058 INFO 1 --- [ntContainer#0-3] o.s.a.r.l.SimpleMessageListenerContainer : Restarting Consumer@54c27637: tags=[{}], channel=null, acknowledgeMode=AUTO local queue size=0 2024-06-25 07:39:02.064 INFO 1 --- [ntContainer#0-4] o.s.a.r.c.CachingConnectionFactory : Attempting to connect to: [rabbit1:5672, rabbit2:5673, rabbitmq:5674] 2024-06-25 07:39:22.149 ERROR 1 --- [ntContainer#0-4] o.s.a.r.l.SimpleMessageListenerContainer : Failed to check/redeclare auto-delete queue(s).
Here is my config:
@RequiredArgsConstructor
@Configuration
public class RabbitMQConfig {
@Bean
public Queue myQueue(){
return new Queue("q.example", true);
}
@Bean
public DirectExchange exchange(){
return new DirectExchange("e.direct-exchange");
}
@Bean
public Binding binding(){
return BindingBuilder.bind(this.myQueue()).to(this.exchange()).with("q-routing-key");
}
}
spring:
application:
name: rabbitmq-testing
rabbitmq:
username:
password:
virtual-host: /
addresses: rabbit1:5672,rabbit2:5673,rabbitmq:5674
Upvotes: 0
Views: 128