kubernetes - Kubernetes 上的 ActiveMQ 代理 URL
问题描述
我已经在 Kubernetes 上部署了我的 ActiveMQ,但是如何配置代理以使用端口 61616 连接队列?如果我使用 POD IP,那么它将不是静态 IP,并且每次 pod recreate 都会创建新 IP。无论如何获取静态 IP 或使用入口我们可以在端口 61616 上设置代理吗?
解决方案
这是一个社区 Wiki 答案,因此请随时对其进行编辑并添加您认为重要的任何其他详细信息。
为了在外部或内部公开你在 Kubernetes 中的任何微服务,你有一个Service
正如David Maze在他的评论中所说:
应该有一个匹配的服务,它有一个已知的 DNS 名称;用那个。– 大卫迷宫昨天
您无需担心静态 IP。Services
还分配了动态 IP,但它们提供了一种可靠的方式来Pods
通过稳定的 DNS 名称访问您的后端。还可以查看官方码头中的此部分。
在您的情况下,它足以创建一个简单的ClusterIP
Service
(这是默认Service
类型)。它可能如下所示:
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
selector:
app: MyApp
ports:
- protocol: TCP
port: 61616
targetPort: 61616
前提是您的应用程序正在侦听 TCP 端口61616
,并且您希望Service
公开与您的 ( ) 相同的端口port
( Pods
) targetPort
。