Aumente o débito da criação de certificados através de conjuntos de ACs

Esta página descreve como pode aumentar a taxa de criação de certificados através de um conjunto de autoridades de certificação (AC). Para ver informações sobre os conjuntos de ACs, consulte o artigo Vista geral dos conjuntos de ACs.

Vista geral

O débito de criação de certificados é medido em consultas por segundo (CPS). Numa malha de serviços, a taxa de transferência de criação de certificados pode ser aproximada através da seguinte fórmula:

THROUGHPUT = (ACTIVE_WORKLOADS × ROTATION_FREQUENCY) + NEW_WORKLOADS_PER_SECOND

Substitua o seguinte:

  • ACTIVE_WORKLOADS: o número total de cargas de trabalho em execução em qualquer momento
  • ROTATION_FREQUENCY: a frequência com que os certificados são rodados por segundo
  • NEW_WORKLOADS_PER_SECOND: a taxa à qual são criadas novas cargas de trabalho

Pode encontrar os valores de ACTIVE_WORKLOADS e NEW_WORKLOADS_PER_SECOND nos painéis de controlo do Google Kubernetes Engine na Google Cloud consola. Para determinar a ROTATION_FREQUENCY de uma malha de serviços, tem de consultar a documentação do produto de malha de serviços. A ROTATION_FREQUENCY para a Cloud Service Mesh é, por predefinição, uma vez a cada 12 horas, o que equivale a 1/(12 × 60 × 60) ou 1/43200 quando convertida 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 em qualquer momento.
NEW_WORKLOADS_PER_SECOND 1 É criada 1 nova carga de trabalho a cada segundo.
ROTATION_FREQUENCY 1/43200 Os certificados são alternados a cada 12 horas.

A substituição destes valores na fórmula para calcular a taxa de criação de certificados dá um valor de QPS de 1,23.

Débito = (10 000 / 43 200) + 1 = 1,23 CPS

Um cluster diferente com cargas de trabalho mais efémeras e cargas de trabalho de menor duração pode ter um valor mais elevado para NEW_WORKLOADS_PER_SECOND. Um valor elevado de ROTATION_FREQUENCY torna o valor da fração (ACTIVE_WORKLOADS / ROTATION_FREQUENCY) bastante pequeno, o que faz com que NEW_WORKLOADS_PER_SECOND seja a variável mais importante na fórmula.

Antes de começar

Configure um conjunto de CA na localização necessária. Para ver a lista completa de localizações, consulte o artigo Localizações.

Se espera emitir certificados a um débito consistentemente elevado, recomendamos que crie o conjunto de ACs no nível DevOps, o que permite um desempenho melhorado e incorre em custos mais baixos. Existe um débito máximo para cada CA individual num conjunto de CAs e um débito efetivo máximo alcançável para qualquer projeto. Por exemplo, se o débito máximo para o nível DevOps for de 25 CPS para uma AC e 100 CPS para um projeto, tem de criar 4 ACs no conjunto de ACs para atingir um débito efetivo total de até 100 CPS. Para ver números de QPS específicos e mais informações sobre quotas, consulte o artigo Quotas e limites.

Procedimento

  1. Crie CAs suficientes no seu conjunto de CAs para atingir o QPS necessário. O número necessário de ACs é 4 para conjuntos de ACs nos níveis de DevOps e 15 para conjuntos de ACs no nível Enterprise. O seguinte conjunto de instruções destina-se a um conjunto de CA no nível DevOps:

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

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

      O total de CPS efetivas do conjunto de CA nesta fase é de 25 CPS. Para aumentar o total de CPS efetivas do conjunto de ACs para 100 CPS, tem de criar mais 3 ACs no conjunto de ACs.

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

        gcloud privateca roots create root-2 \
            --location LOCATION \
            --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 \
            --location LOCATION \
            --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 \
            --location LOCATION \
            --pool POOL_NAME \
            --subject="CN=root-4,O=google"
      

      Nesta fase, o QPS efetivo total do seu conjunto de CA é de 100 QPS.

  2. Enquanto as ACs estiverem no estado STAGED, crie e teste certificados. Quando terminar, ative as ACs. Para obter informações sobre como ativar ACs, consulte o artigo Ative uma AC. Para informações sobre como testar ACs, consulte o artigo Teste uma AC.

  3. Valide o estado do seu conjunto de ACs através de relatórios de auditoria sobre o equilíbrio de carga entre ACs. Idealmente, deve existir uniformidade no número de certificados emitidos por cada AC.

    Pode usar o Cloud Monitoring para monitorizar as métricas de equilíbrio de carga do seu conjunto de ACs, como o número de certificados emitidos por AC num determinado período. Para mais informações, consulte o artigo Monitorize recursos com o Cloud Monitoring.

O que se segue?