我在 GCP 上构建的产品会创建微型网站。它们由连接到 GCP 负载均衡器的 Google Cloud Function 提供服务。我的客户希望将他们自己的域名指向我的产品的微型网站。
考虑到这可能涉及数十万到数百万个域名:在 GCP 上扩展的生成和管理 SSL 证书的最有效方法是什么?
通过阅读技术文档(如果我错了,请纠正我):
- 每个 Google 管理的 SSL 证书可以包含 100 个域。
- 每个负载均衡器前端可以有 15 个证书。
- 每个负载均衡器可以有 1 个静态 IP 地址和 1 个 https 前端。
因此每个 IP 地址在 15 个证书中被限制为 1,500 个域?
If I had 500,000 users, this would mean I would need:
1. 334 IP Addresses?
2. 334 Load Balancers?
3. 334 Frontends?
4. 5,000 Certs?
看起来 Google 并不支持那么多证书或 IP 地址。
我的问题是:
- 这是扩大 Google 管理证书数量的最佳方法吗?
- 我的估算和对配额的理解是否缺少了什么?
- Google 项目可以拥有的静态 IP 地址/证书/负载均衡器的数量是否有限制,从而阻止扩展到具有自定义域的用户数量?
- 是否存在另一种完全不同的方法?
答案1
回答您的问题:
生成和管理可在 GCP 上扩展的 SSL 证书的最有效方法是什么?
由于 GCP 没有某种“SSL 管理控制台”,因此管理证书的唯一方法是在每个负载均衡器上。
因此每个 IP 地址在 15 个证书中被限制为 1,500 个域?
是的,你是对的,并且不可能增加这个限制。
如果我有 500,000 名用户,这意味着我需要?
这是正确的,基于文档您已审阅过。
这是扩大 Google 管理证书数量的最佳方法吗?
是的,目前这是管理 GCP 上的 SSL 证书的唯一方法。
我对于配额的估算和理解是否缺少了什么?
不,您对 SSL 证书和 IP 地址配额的理解是正确的。
Google 项目可以拥有的静态 IP 地址/证书/负载均衡器的数量是否有限制,从而阻止扩展到具有自定义域的用户数量?
可用的静态 IP 地址也有配额限制,您需要申请增加配额。如需更多参考,请查看您的控制台区域静态 IP 地址和全局静态 IP 地址
是否存在另一种完全不同的方法?
目前没有。
答案2
我的情况和你类似。我还没有尝试为此创建 POC,但我想到了一个可行的方法:
您无需在负载均衡器上管理 SSL 证书,而是可以运行 nginx 服务器,这些服务器为您服务的每个域设置虚拟主机。nginx 支持名为 SNI 的标准。这样,您就可以从单个 IP 为多个主机名提供 SSL 证书。据我所知,您可以这样为多少个域提供服务没有硬性限制。唯一的限制是虚拟主机和 SSL 证书对 nginx 内存的要求。
您仍然需要弄清楚如何添加新的虚拟主机并将 SSL 证书加载到 nginx 服务器中。
如果您需要多个 nginx 服务器(您会需要的),我也不完全知道您需要做什么。
此外,如果需要,您仍然可以在 nginx 前面使用负载均衡器。您只需将它们设置为 TCP 负载均衡器而不是 HTTP 负载均衡器。
编辑-来自 nginx 的链接指出 v-hosts 或 ssl 证书没有限制:https://www.nginx.com/faq/虚拟主机或 SSL 证书数量是否存在限制?我可以配置 nginx-plus 吗?