使用 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,您必须参阅服务网格产品的文档。Anthos Service Mesh 的 ROTATION_FREQUENCY 默认为每 12 小时一次,即转换为每秒轮替频率时为 1/(12×60×60) 或 1/43200。

示例

我们来看一个相对稳定的集群的示例,该集群具有长期运行的工作负载和很少的临时工作负载。

变量名称 说明
ACTIVE_WORKLOADS 10000 预计在任何给定时间都会运行 10,000 个工作负载。
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 池所需数量为 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 监控资源

后续步骤