Aumente a capacidade de criação de certificados usando pools de CAs

Esta página descreve como você pode aumentar a taxa de criação de certificados usando uma de uma autoridade certificadora (CA, na sigla em inglês). Para informações sobre pools de CA, consulte Visão geral de pools de CA.

Visão geral

A capacidade de criação de certificados é medida em consultas por segundo (QPS, na sigla em inglês). Em um malha de serviço, a capacidade de processamento de criação de certificados pode ser aproximada usando o seguinte fórmula:

THROUGHPUT = (ACTIVE_WORKLOADS × ROTATION_FREQUENCY) + NEW_WORKLOADS_PER_SECOND

Substitua:

  • ACTIVE_WORKLOADS: o número total de cargas de trabalho em execução em um determinado momento
  • ROTATION_FREQUENCY: a frequência em que os certificados são alternados por segundo
  • NEW_WORKLOADS_PER_SECOND: a taxa em que novas cargas de trabalho são criadas

Você pode encontrar os valores para ACTIVE_WORKLOADS e NEW_WORKLOADS_PER_SECOND, no projeto do Google Kubernetes Engine painéis na console do Google Cloud. Para determinar a ROTATION_FREQUENCY de uma malha de serviço, consulte a documentação do produto da malha de serviço. A função ROTATION_FREQUENCY O padrão do Cloud Service Mesh é uma vez a cada 12 horas, ou seja, 1/(12×60×60) ou 1/43200 quando convertido em frequência de rotação por segundo.

Exemplo

Considere o exemplo de um cluster relativamente estável com cargas de trabalho de longa duração e poucas cargas de trabalho efêmeras.

Nome da variável Valor Descrição
ACTIVE_WORKLOADS 10000 Espera-se que 10.000 cargas de trabalho estejam em execução ao mesmo tempo.
NEW_WORKLOADS_PER_SECOND 1 Uma nova carga de trabalho é criada por segundo.
ROTATION_FREQUENCY 1/43200 Os certificados são alternados a cada 12 horas.

Substituir esses valores na fórmula para calcular a criação do certificado resulta em um valor de QPS de 1,23.

Capacidade = (10.000 / 43.200) + 1 = 1,23 QPS

Um cluster diferente com cargas de trabalho mais efêmeras e cargas de trabalho de curta duração podem ter um valor maior para NEW_WORKLOADS_PER_SECOND. Um alto valor de ROTATION_FREQUENCY torna o valor da fração (ACTIVE_WORKLOADS / ROTATION_FREQUENCY) é bem pequeno, fazendo com que NEW_WORKLOADS_PER_SECOND seja o mais uma variável importante na fórmula.

Antes de começar

Configure um pool de ACs na sua local necessário. Para ver a lista completa de locais, consulte Locais.

Se você pretende emitir certificados com uma capacidade de processamento alta e consistente, nós recomendamos que você crie o pool de ACs no nível DevOps, o que permite o desempenho aprimorado e resulta em custos mais baixos. Há uma capacidade máxima de processamento cada CA individual em um pool de ACs, e existe um limite máximo e a capacidade de processamento de qualquer projeto. Por exemplo, se a capacidade máxima o nível DevOps for de 25 QPS para uma CA e 100 QPS para um projeto, você deve criar 4 CAs no pool de ACs para alcançar uma capacidade de processamento efetiva total de até 100 QPS. Para obter números de QPS específicos e obter mais informações sobre cotas, consulte Cotas e limites.

Procedimento

  1. Crie ACs suficientes no pool de ACs para atingir o QPS necessário. O número necessário de ACs é quatro para pools de CAs nos níveis de DevOps e 15 para os pools de CAs no nível Enterprise. O conjunto de instruções a seguir é para um pool de ACs no nível DevOps:

    1. Para criar uma AC raiz com o nome root-1 no seu pool de ACs, use o seguinte comando gcloud.

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

      Neste estágio, o QPS efetivo total do pool de ACs é de 25 QPS. Para aumentar o QPS efetivo total do pool de CAs para 100 QPS, você precisa criar mais três CAs no pool de CAs.

    2. Para criar uma AC raiz com o nome root-2, use o seguinte comando gcloud.

        gcloud privateca roots create root-2 --pool POOL_NAME --subject="CN=root-2,O=google"
      
    3. Para criar uma AC raiz com o nome root-3, use o seguinte comando gcloud.

        gcloud privateca roots create root-3 --pool POOL_NAME --subject="CN=root-3,O=google"
      
    4. Para criar uma AC raiz com o nome root-4, use o seguinte comando gcloud.

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

      Nesta etapa, o QPS efetivo total do pool de ACs é de 100 QPS.

  2. Enquanto as CAs estiverem no estado STAGED, crie e teste certificados. Depois disso, ative as ACs. Para informações sobre como ativar ACs, consulte Ativar uma AC. Para informações sobre como testar ACs, consulte Testar uma AC.

  3. Verifique a integridade do pool de ACs recebendo relatórios de auditoria sobre balanceamento de carga entre ACs. O ideal é que haja uniformidade no número de certificados emitidos por cada CA.

    É possível usar o Cloud Monitoring para monitorar as métricas de balanceamento de carga do pool de ACs, como o número de certificados emitidos por AC em um determinado período. Para mais informações, consulte Monitorar recursos usando o Cloud Monitoring.

A seguir