0

我们正在研究允许客户在我们的托管服务中使用他们的域名的最佳解决方案。托管服务基于 Google App Engine 标准。要求是:

  1. 客户可以通过 CNAME 或 A 记录将他们的域名指向我们的服务器
  2. 我们的服务器应该能够使用 Let's Encrypt 自动为它们生成 SSL 证书
  3. 我们的服务器应该能够处理客户上传的自定义 SSL 证书
  4. 在将新客户(新的 confs、SSL 证书等)添加到我们的服务器时应该是健壮和可靠的
  5. 应该是可扩展的,并且可以处理大量的自定义域和流量(例如从 0 到 10000)
  6. 最低运营成本(维护基础设施所需的时间越少越好)

看来 Google Kubernetes Engine(以前称为 Google Container Engine)将是前进的方向。是否有特定的、经过验证的方法来设置它?任何建议/经验分享将不胜感激。

4

1 回答 1

1

我建议通过此链接开始设置 GKE 集群。

出于您在 GKE 上使用 SSL 的目的,我建议您按照此链接中的说明创建一个入口,如果您使用默认的 GLBC 入口控制器,它将自动在 GCP 中创建一个负载均衡器资源。生成的 LB 的配置(端口、主机路径规则、证书、后端服务等)由 Ingress 对象本身的配置定义。您可以将域名指向负载均衡器的IP。

如果您想将 Ingress(以及由此产生的 LB)配置为使用由“Let's Encrypt”创建的证书,您将修改在入口的 YAML 中显示的配置。为了实际集成 Let's Encrypt for Kubernetes,实际上可以通过使用名为cert-manager的服务来自动化获取 TLS/SSL 证书并将它们存储在机密中的过程。此链接显示如何将 cert-managerGKE 一起使用。

如果您想使用自我管理的 SSL 证书,请参阅此链接以获取更多信息。GKE 可通过 GKE 的集群自动扩缩器进行扩缩,它会根据您要运行的工作负载的需求自动调整集群的大小。

于 2018-12-28T14:55:17.390 回答