首页 > 解决方案 > 如何在不为后端创建入口的情况下使前端应用程序与后端应用程序通信

问题描述

我已经使用 kops 部署了一个 Kubernetes 集群。当前集群使用一个 nginx 入口控制器,它在 AWS 中创建一个经典的负载均衡器。我有一些与前端应用程序对话的后端应用程序和一些只相互对话的后端服务。问题是,目前让前端应用程序与后端应用程序对话的唯一方法是为后端应用程序创建一个入口,因为前端通过域名发送请求,因为它不了解内部服务名称。对于后端来说,这很好,因为它们可以通过使用服务名称和它们各自的端口进行内部通信。我怎样才能在不必为后端创建入口的情况下实现这一点。是否可以使用应用程序负载均衡器来做到这一点,或者我需要为此使用 API 网关吗?我如何实现这种架构?添加架构图以显示我想要实现的目标。任何帮助表示赞赏。在此处输入图像描述

标签: amazon-web-serviceskuberneteskubernetes-ingressapi-gatewaykops

解决方案


从您的“架构图”看来,您的所有应用程序都在集群中。所以不需要入口。您可以只使用 Kubernetes 服务。

您的前端应用程序应该能够调用后端服务的端点,否则您在前端服务的配置中出错了。

如果您没有机会更改前端应用程序调用后端服务的 URL,您可以使用例如带有 CNAME 的 kubernetes 服务并重定向到您的内部服务。


推荐阅读