【问题标题】:Dynamic SSL allocation in GCP HTTP(s) Layer 7 Load balancerGCP HTTP(s) 第 7 层负载平衡器中的动态 SSL 分配
【发布时间】:2021-05-19 02:42:10
【问题描述】:

我正在探索 GCP,我喜欢它让开发人员使用如此昂贵的基础设施的方式。到现在为止我学到了很多很多东西。我不再是初学者,我遇到了这个案例,我无法找到文档或示例,或者我可能想错了方向。

我想构建一个自动扩展的托管解决方案,让用户可以:

  1. 创建帐户
  2. 创建多个网站[这些网站基本上是模板,用户可以定义某些字段并以特定方式呈现网站|不允许用户上传文件,只能上传一些数据条目]
  3. 在网站中,用户可以连接域 [在其域中放置“A”记录 DNS 条目]
  4. 之后,平台会自动配置一个 SSI,网站就会启动并运行。 [有点像火力基地]

我可以使用以下配置在一台服务器上轻松创建这样的项目[跳过了用户身份验证等简单步骤]:

  1. 我使用 ubunutu 16.04 作为具有 4GB 内存和 10GB 持久磁盘的机器类型
  2. 然后我安装nvm [管理node.js的包]
  3. 之后我使用nvm安装特定版本的node.js
  4. 我编写了一个简单的 javascript 包,在其中我使用 express 服务器通过一些 html 响应客户端请求
  5. 为了管理 ssl,我使用了letsencrypt 的certbot
  6. 我使用pm2 在后台运行 javascipt 文件作为服务

在能够完成这件事后,我可以看到一切都按照我想要的方式进行。

然后我开始探索 GCP 的负载均衡器,在那里我了解了 4 层和 7 层 LB,并在所有可能的配置中实现了一些 hello world 测试 [使用启动脚本],例如

  • 7层http
  • 7层https
  • 4层内部tcp
  • 4层内部ssl

这是我面临的主要问题: 我找不到将 SSL 动态分配给负载平衡器的传入请求的方法

在我的情况下,请求可能来自任何域,因此 GCP 负载平衡器必须具有某种配置来为特定域提供 SSL [我已经读到它可以为多达 100 个域分配 SSL,但我怎样才能使事情自动化]或者是否有一种方法可以代替代理请求[LB向内部服务器生成新的请求],而只是重定向请求,以便内部服务器可以自己处理SSL管理

我对这些概念的理解可能有误。请帮我解决问题。我想自己构建firebase-hosting clone。欢迎任何回应????????????

【问题讨论】:

    标签: google-cloud-platform load-balancing gcp-load-balancer


    【解决方案1】:

    一种方法是更新您的 JS 脚本以通过 gcloud 为每个新域生成 Google 管理的证书:

    gcloud compute ssl-certificates create CERTIFICATE_NAME \
        --description=DESCRIPTION \
        --domains=DOMAIN_LIST \
        --global
    

    然后将其应用到负载均衡器:

    gcloud compute target-https-proxies update TARGET_PROXY_NAME \
        --ssl-certificates SSL_CERTIFICATE_LIST \
        --global-ssl-certificates \
        --global
    

    请注意,负载均衡器可能需要 5 到 20 分钟才能开始使用新证书。

    您可以找到更多信息here

    【讨论】:

    • 我认为您需要证明您是 DNS 的所有者,不是吗?注册一个新域名应该很容易。
    • 感谢您的回答?,但它对数百万个域是可行的
    • @guillaumeblaquiere 可以通过要求域所有者更新其 DNS 来完成
    • @guillaumeblaquiere 我将如何使用 javascript 来做到这一点?我无法为此获得任何 npm 库。如果您对此有所了解,请告诉我
    猜你喜欢
    • 2022-01-10
    • 1970-01-01
    • 2022-06-13
    • 2020-06-09
    • 1970-01-01
    • 2023-03-14
    • 2021-08-12
    • 2017-05-22
    • 1970-01-01
    相关资源
    最近更新 更多