Configurar o Policy Controller para alta disponibilidade

É possível definir configurações no nível de implantação para o Policy Controller que substituem os requisitos de recursos e configuram parâmetros para alta disponibilidade.

Esta página é destinada a administradores e operadores de TI que querem garantir que todos os recursos executados na plataforma de nuvem atendam a requisitos de conformidade organizacional, fornecendo e mantendo automação para auditar ou aplicar, e que gerenciam o ciclo de vida da infraestrutura de tecnologia subjacente. Para saber mais sobre papéis comuns e tarefas de exemplo referenciados no conteúdo do Google Cloud, consulte Tarefas e funções de usuário comuns do GKE Enterprise.

Para conferir uma lista de todas as opções de configuração, execute gcloud container fleet policycontroller deployment set --help.

Os comandos nesta página usam a flag --all-memberships para aplicar uma configuração a todos os clusters registrados em uma frota. Para aplicar um comando a um único cluster registrado, use --membership=MEMBERSHIP_NAME, substituindo MEMBERSHIP_NAME pelo nome de associação do cluster registrado.

Configurar contagens de réplicas

É possível configurar as implantações do Policy Controller para um ReplicaSet definindo uma contagem de réplicas.

Para definir uma contagem de réplicas, execute o seguinte comando:

gcloud container fleet policycontroller deployment set DEPLOYMENT_TYPE replica-count QUANTITY \
  --all-memberships

Substitua:

  • DEPLOYMENT_TYPE: o tipo de implantação para o qual você quer definir uma contagem de réplicas. O valor é mutation ou admission.
  • QUANTITY: o número de réplicas que você quer definir, por exemplo, 3.

Para remover uma contagem de réplicas, execute o seguinte comando:

gcloud container fleet policycontroller deployment remove DEPLOYMENT_TYPE replica-count \
  --all-memberships

Substitua DEPLOYMENT_TYPE pelo tipo de implantação em que você está removendo as réplicas. Esse valor é mutation ou admission.

Definir requisitos de recursos

É possível especificar limites e solicitações para memória e CPU.

Definir limites e solicitações de memória

Para definir um limite de memória, execute o seguinte comando:

gcloud container fleet policycontroller deployment set DEPLOYMENT_TYPE memory-limit QUANTITY \
  --all-memberships

Substitua:

  • DEPLOYMENT_TYPE: o tipo de implantação em que você quer definir um limite de memória. Um dos seguintes valores: audit, mutation ou admission.
  • QUANTITY: a quantidade que você quer definir com um sufixo de quantidade, por exemplo, 4Gi.

Para definir uma solicitação de memória, execute o seguinte comando:

gcloud container fleet policycontroller deployment set DEPLOYMENT_TYPE memory-request QUANTITY \
  --all-memberships

Substitua:

  • DEPLOYMENT_TYPE: o tipo de implantação em que você quer definir uma solicitação de memória. Um dos seguintes valores: audit, mutation ou admission.
  • QUANTITY: a quantidade que você quer definir com um sufixo de quantidade, por exemplo, 2Gi.

Definir limites e solicitações de CPU

Para definir um limite de CPU, execute o seguinte comando:

gcloud container fleet policycontroller deployment set DEPLOYMENT_TYPE cpu-limit QUANTITY \
  --all-memberships

Substitua:

  • DEPLOYMENT_TYPE: o tipo de implantação em que você quer definir um limite de CPU. Um dos seguintes valores: audit, mutation ou admission.
  • QUANTITY: a quantidade de CPU que você quer definir, por exemplo, 500m.

Para definir uma solicitação de CPU, execute o seguinte comando:

gcloud container fleet policycontroller deployment set DEPLOYMENT_TYPE cpu-request QUANTITY \
  --all-memberships

Substitua:

  • DEPLOYMENT_TYPE: o tipo de implantação em que você quer definir uma solicitação de CPU. Um dos seguintes valores: audit, mutation ou admission.
  • QUANTITY: a quantidade que você quer definir, por exemplo, 250 m.

Remover limites e solicitações

Para remover uma configuração, execute o seguinte comando:

gcloud container fleet policycontroller deployment remove DEPLOYMENT_TYPE RESOURCE_TYPE \
  --all-memberships

Substitua:

  • DEPLOYMENT_TYPE: o tipo de implantação em que você está removendo a solicitação ou o limite. Um dos seguintes valores: audit, mutation ou admission.
  • RESOURCE_TYPE: o tipo de recurso que você quer remover. Um dos seguintes valores: memory-limit, memory-request, cpu-limit e cpu-request

Configurar tolerâncias

É possível definir tolerâncias nas implantações do Policy Controller.

É possível definir uma tolerância com um dos seguintes métodos:

  • Para definir uma tolerância com uma chave, execute o seguinte comando:

    gcloud container fleet policycontroller deployment set admission toleration KEY \
      --all-memberships
    

    Substitua KEY pelo valor da chave, por exemplo, key1.

  • Para definir uma tolerância com uma chave e um valor, execute o seguinte comando:

    gcloud container fleet policycontroller deployment set admission toleration KEY=VALUE \
      --all-memberships
    

    Substitua:

    • KEY: o valor da chave, por exemplo, key1.
    • VALUE: o valor da chave, por exemplo, value1.
  • Para definir uma tolerância com uma chave e um valor e o efeito NoSchedule, execute o seguinte comando:

    gcloud container fleet policycontroller deployment set admission toleration KEY=VALUE \
      --all-memberships \
      --effect=NoSchedule
    

    Substitua:

    • KEY: o valor da chave, por exemplo, key1.
    • VALUE: o valor da chave, por exemplo, value1.

Se você precisar editar uma tolerância, remova a tolerância atual e defina uma nova com um dos comandos anteriores. Para remover uma tolerância, execute o comando anterior com remove em vez de set, por exemplo:

gcloud container fleet policycontroller deployment remove admission toleration KEY=VALUE \
  --all-memberships

Configurar afinidade

É possível definir a afinidade de pod nas implantações do Policy Controller. As configurações disponíveis são anti (correspondente à antiafinidade) e none (correspondente à não afinidade). Para a implantação de admissions, anti é o padrão. Para todas as outras implantações, none é o padrão.

Para definir a antiafinidade do pod, execute o seguinte comando:

gcloud container fleet policycontroller deployment set mutation pod-affinity anti \
  --all-memberships

Para remover a afinidade de pod, execute o seguinte comando:

gcloud container fleet policycontroller deployment set mutation pod-affinity none \
  --all-memberships