【发布时间】:2018-07-20 10:04:10
【问题描述】:
我的后端和前端部署在 Google Kubernetes Engine (GKE) 上。让我们考虑这些步骤 -
- 用户打开浏览器并指向
yyy.yyy.yyy:8080。 - 浏览器加载登录页面。
- 用户输入用户名/密码并按下“登录”按钮。
- 浏览器(ReactJS 应用)向 REST 后端
xxx.xxx.xxx:7070发送请求以进行验证。
现在我的问题是,我们如何注入后端(在本例中为 xxx.xxx.xxx)ip 前端 pod?因为这个 ip 不是静态的(我不想让它成为静态的),并且将由 GKE 提供。我也不想通过前端代理我的后端调用。我也不想使用nginx,原因是,多了一个POD,还有配置要维护。只是不想因为这个原因而拥有nginx。
我应该创建入口吗?我的意思是-
`/` <-- serves ReactJS app
`/api` <--- serves REST api
或者有办法注入后端POD的ip?
最好的方法是什么?
提前致谢。
【问题讨论】:
-
使用完全限定域名而不是静态 IP。将请求发送到后端 API 的 nginx 反向代理怎么样?
-
在 AWS 上有一个 Kubernetes 服务注释来分配 DNS 名称(通过 Route 53)并将其附加到负载均衡器。我很难找到与 GCP 等效的东西,但这是正确答案的核心。
-
@ImtiazMirza:在 kubernetes 中没有 FQDN。 POD IP 是动态的。唯一可能的方法是服务(我的意思是 LoadBalancer),无论如何它也不是静态的。在发这篇文章之前,我想到了 nginx。但问题是,nginx 意味着多了一个 POD 来部署、维护和配置维护。所以我有点在 Kubernetes 内部寻找解决方案(正如我提到的,可能是 Ingress)
-
@DavidMaze 我在 GCE 上,我的 DNS 也没有在 GCE 上注册。我的 DNS 已在某些本地 IPS 中注册
标签: kubernetes google-kubernetes-engine kubernetes-ingress