使用 kubernetes 集群进行动态 rest api 调用的 Springboot 应用程序

Posted

技术标签:

【中文标题】使用 kubernetes 集群进行动态 rest api 调用的 Springboot 应用程序【英文标题】:Springboot application with dynamic rest api calls using kubernetes cluster 【发布时间】:2021-03-06 03:31:18 【问题描述】:

我的 spring boot 应用程序需要调用或使用另一个 spring boot 应用程序的 rest api。 我想使用 Kubernetes 来管理我的应用程序及其多个实例。但我正在努力获得另一项服务的休息端点。 可以说.... app1 调用 app2, app2消费app3, app4 调用 app1 和 app2。 在这里,我应该如何让 app1、app2 .. app4 端点相互通信。 谁能帮我解决这个问题。

【问题讨论】:

【参考方案1】:

通常您会使用Kubernetes Services 进行此通信。每个服务都可以通过其在集群中的名称(<service_name>.<namespace>.svc.cluster.local)进行访问。

因此解决方案是为您的每个应用程序定义一个 Kubernetes ClusterIP 服务,然后通过这些服务访问它们。例如,如果任何应用程序想要访问“默认”命名空间中名为“app2”的 HTTP 服务,它会调用 http://app2.default.svc.cluster.local

【讨论】:

谢谢.. 我在运行应用程序时面临的唯一挑战是默认端口,例如.. 对于 app1,http 目标端口应为 80,https 应为 443。其他目标端口不允许。

以上是关于使用 kubernetes 集群进行动态 rest api 调用的 Springboot 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

kubernetes集群的认证授权准入控制

#yyds干货盘点# Kubernetes 集群权限管理那些事儿(17)

在同一个 kubernetes 集群中从一个 pod 调用一个 rest api 到另一个 pod

Kubernetes_14_静态Pod网关apiserver底层都是restful接口

Kubernetes_14_静态Pod网关apiserver底层都是restful接口

Kubernetes 19 梳理出UserAccount用户账号一条线