【发布时间】:2021-02-20 03:21:48
【问题描述】:
我有两个使用 angular 开发的应用程序前端和使用 spring-boot 开发的后端。两个应用都在同一个命名空间中运行。
已经创建了两种服务类型:负载均衡器。
- 前端说
frontend-app-lb(暴露9001) - 后端说
backend-app-lb(暴露9000)。
我能够通过外部 IP 获得响应。使用 curl http://<External-ip>:900[0/1]/
在 Angular 应用程序中,我配置了 environment-prod.ts,baseurl 为 http://<External-ip-of-backend-app-lb>:9000/。在允许 CORS 的情况下,能够访问后端应用程序。
我也知道,如果应用程序在不同的命名空间中运行,我们可以使用 http://<service-name>.<namespace>.svc.cluster.local:port 从不同的命名空间访问应用程序/pod。
如何仅使用 baseurl 中的服务名称(如 http://backend-app-lb:9000)访问在同一命名空间中运行的后端应用程序。 - 这可能吗?
【问题讨论】:
-
您想从哪里连接?如果
backend-app-lb是服务的名称,您应该能够使用例如从另一个 Pod 中解析此名称。nslookup backend-app-lb. -
Connect.from 另一个在同一命名空间中运行的 pod..
标签: angular azure kubernetes azure-aks