Spring boot应用无法连接到Kubernetes集群上的RabbitMQ

问题描述 投票:0回答:1

我在kubernetes集群上部署了RabbitMQ服务器,并且能够从浏览器访问管理UI。但是我的Spring Boot应用程序无法连接到端口5672,并且出现连接拒绝错误。如果我将我的application.yml属性从kuberntes主机替换为localhost并在我的机器上运行docker映像,则相同的代码有效。我不确定我在做什么错吗?

有人尝试过这种设置。请帮忙。谢谢!

spring-boot spring-mvc kubernetes rabbitmq
1个回答
0
投票

假设dns名为rabbitmq。如果要达到此目的,则必须确保Rabbitmq的部署中附带的服务带有正确的暴露端口。因此,您将定位到http://rabbitmq:5672

要确保存在类似内容,您可以调试k8s服务。运行kubectl get services | grep rabbitmq以确保该服务存在。如果确实如此,则通过运行'kubectl get service Rabbitmq-service-name -o yaml'获得服务yaml。最后,在spec.ports[]中检查允许您连接到Pod的端口。在spec.ports[].port中搜索“ 5672”以获取amqp。在某些情况下,端口可能已更改。例如,这意味着spec.ports[].port可能是3030,但是spec.ports[].targetPort是5672。

© www.soinside.com 2019 - 2024. All rights reserved.