使用 CA 池提高证书创建吞吐量

本页面介绍了如何使用证书授权机构 (CA) 池提高证书创建速率。如需了解 CA 池,请参阅 CA 池概览

概览

证书创建吞吐量以每秒查询次数 (QPS) 来衡量。在服务网格中,证书创建吞吐量可使用以下公式进行近似计算:

THROUGHPUT = (ACTIVE_WORKLOADS × ROTATION_FREQUENCY) + NEW_WORKLOADS_PER_SECOND

请替换以下内容:

  • ACTIVE_WORKLOADS:在任何给定时间运行的工作负载总数
  • ROTATION_FREQUENCY:证书每秒轮替的频率
  • NEW_WORKLOADS_PER_SECOND:创建新工作负载的速率

您可以在 Google Cloud 控制台的 Google Kubernetes Engine 信息中心内找到 ACTIVE_WORKLOADSNEW_WORKLOADS_PER_SECOND 的值。如需确定服务网格的 ROTATION_FREQUENCY,您必须参阅服务网格产品的文档。Cloud Service Mesh 的 ROTATION_FREQUENCY 默认为每 12 小时一次,转换为每秒轮替频率时为 1/(12×60×60) 或 1/43200。

示例

考虑一个相对稳定的集群示例,该集群具有长期有效的工作负载和少量临时工作负载。

变量名称 价值 说明
ACTIVE_WORKLOADS 10000 预计在任何给定时间都会运行 10000 个工作负载。
NEW_WORKLOADS_PER_SECOND 1 每秒创建 1 个新工作负载。
ROTATION_FREQUENCY 1/43200 证书每 12 小时轮替一次。

在计算证书创建速率的公式中代入这些值后,QPS 值为 1.23。

吞吐量 = (10,000 / 43,200) + 1 = 1.23 QPS

临时工作负载较多和工作负载生命周期较短的其他集群的 NEW_WORKLOADS_PER_SECOND 值可能较高。较高的 ROTATION_FREQUENCY 值会使比例 (ACTIVE_WORKLOADS / ROTATION_FREQUENCY) 的值变得非常小,从而使 NEW_WORKLOADS_PER_SECOND 成为公式中最重要的变量。

准备工作

在所需的位置设置 CA 池。如需查看完整的位置列表,请参阅位置

如果您希望以始终高的吞吐量颁发证书,我们建议您在 DevOps 层创建 CA 池,从而提高性能并降低费用。CA 池中的每个 CA 都有最大吞吐量,并且任何给定项目都有可实现的有效吞吐量。例如,如果 DevOps 层的最大吞吐量对 CA 而言为 25 QPS,项目的最大吞吐量为 100 QPS,您必须在 CA 池中创建 4 个 CA 才能达到最高 100 QPS 的总有效吞吐量。如需了解具体的 QPS 数据并详细了解配额,请参阅配额和限制

过程

  1. 在 CA 池中创建足够的 CA 以实现所需的 QPS。DevOps 层级中的 CA 池要求的 CA 数量为 4,企业层级的 CA 池需要 15 个。下面这组说明适用于 DevOps 层级中的 CA 池:

    1. 如需在 CA 池中创建名为 root-1 的根 CA,请使用以下 gcloud 命令。

       gcloud privateca roots create root-1 --pool POOL_NAME --subject="CN=root-1,O=google"
      

      此阶段 CA 池的总有效 QPS 为 25 QPS。如需将 CA 池的总有效 QPS 提高到 100 QPS,您必须在 CA 池中再创建 3 个 CA。

    2. 如需创建名为 root-2 的根 CA,请使用以下 gcloud 命令。

        gcloud privateca roots create root-2 --pool POOL_NAME --subject="CN=root-2,O=google"
      
    3. 如需创建名为 root-3 的根 CA,请使用以下 gcloud 命令。

        gcloud privateca roots create root-3 --pool POOL_NAME --subject="CN=root-3,O=google"
      
    4. 如需创建名为 root-4 的根 CA,请使用以下 gcloud 命令。

        gcloud privateca roots create root-4 --pool POOL_NAME --subject="CN=root-4,O=google"
      

      在此阶段,CA 池的总有效 QPS 为 100 QPS。

  2. 当 CA 处于 STAGED 状态时,创建和测试证书。完成后,启用 CA。如需了解如何启用 CA,请参阅启用 CA。如需了解如何测试 CA,请参阅测试 CA

  3. 通过获取有关跨 CA 的负载均衡的审核报告,验证 CA 池的健康状况。理想情况下,每个 CA 颁发的证书数量应保持一致。

    您可以使用 Cloud Monitoring 来监控 CA 池的负载均衡指标,例如给定时间段内每个 CA 颁发的证书数量。如需了解详情,请参阅使用 Cloud Monitoring 监控资源

后续步骤