【发布时间】:2019-01-10 15:59:47
【问题描述】:
我想使用我已经拥有的三个组件来设置网络应用程序:
- 在 domain.google.com 上注册的域名
- 在 Firebase 托管上托管并从
example.com提供服务的前端 Web 应用 - 负载均衡器后面的 Kubernetes 集群后端,外部静态 IP
1.2.3.4
我想从example.com/api 或api.example.com 为后端提供服务
我最好的猜测是使用 Cloud DNS 连接 IP 地址和子域(或 URL)
-
1.2.3.4->api.exmple.com -
1.2.3.4->example.com/api
问题在于 Cloud DNS 使用自定义名称服务器,如下所示:
ns-cloud-d1.googledomains.com
因此,如果我设置 Google 默认名称服务器,我只能访问 Firebase 托管,如果我使用自定义名称服务器,我只能访问 Kubernetes 后端。
访问 api.example.com 和 example.com 的正确方法是什么?
编辑: 作为一种临时解决方法,我将两个默认名称服务器和两个来自云 DNS 的自定义名称服务器组合在一起,如下所示:
-
ns-cloud-d1.googledomains.com(自定义) -
ns-cloud-d2.googledomains.com(自定义) -
ns-cloud-b1.googledomains.com(默认) -
ns-cloud-b2.googledomains.com(默认)
但如果有人知道正确的方法 - 请发布答案。
【问题讨论】:
-
我不完全确定,但您是否探索过使用指向 firebase 的
ExternalName服务,然后在 Kubernetes 中使用该服务指向 Firebase 的入口控制器和使用另一个服务的后端。 -
有趣,我需要考虑一下,谢谢。我对这种方法的第一个担忧是我将为 firebase cdn 和 kubernetes 入口流量支付两倍的费用。而且我需要为 SSL 证书找出一些东西,因为在我当前的解决方案中,Firebase 有免费的“真实”SSL,而 Kubernetes 有用于入口的自签名 SSL,当然用户不应该在浏览器中面对“不安全”的证书。
标签: firebase kubernetes firebase-hosting google-kubernetes-engine google-cloud-cdn