Excluir namespaces do Policy Controller

Esta página descreve como configurar namespaces isentos no Controlador de Políticas.

Namespaces isentos removem um namespace da aplicação do webhook de admissão com o Controlador de Políticas, mas qualquer violação ainda é informada na auditoria. Se você não configurar namespaces, apenas o namespace gatekeeper-system estará, como pré-configuração, isento da aplicação do webhook de admissão do Controlador de Políticas.

Configurar namespaces isentos

A configuração de um namespace isento aplica o rótulo admission.gatekeeper.sh/ignore, que isenta o namespace da aplicação obrigatória do webhook de admissão do Controlador de Políticas. Se você remover um namespace isento posteriormente, o Controlador de políticas não removerá o identificador admission.gatekeeper.sh/ignore do namespace.

Como isentar namespaces da aplicação

É possível isentar namespaces durante a instalação do Controlador de Políticas ou após a instalação. O processo a seguir mostra como isentar namespaces após a instalação.

Console

  1. No console do Google Cloud , acesse a página Política na seção Gerenciamento de postura.

    Acessar a política

  2. Na guia Configurações, na tabela em cluster, selecione Editar na coluna Editar configuração.
  3. Expanda o menu Editar configuração do Controlador de Políticas.
  4. No campo Namespaces isentos, forneça uma lista de namespaces válidos. Os objetos nesses namespaces são ignorados por todas as políticas. Os namespaces ainda não precisam existir.
  5. Selecione Salvar alterações.

gcloud

Para adicionar namespaces à lista de namespaces que podem ser isentos da aplicação pelo webhook de admissão, execute o seguinte comando:

  gcloud container fleet policycontroller update \
    --memberships=MEMBERSHIP_NAME \
    --exemptable-namespaces=NAMESPACE_LIST

Substitua:

  • MEMBERSHIP_NAME: o nome de assinatura do cluster registrado para isentar namespaces. Você pode especificar várias associações separadas por uma vírgula.
  • NAMESPACE_LIST: uma lista separada por vírgulas de namespaces que você quer que o Controlador de Políticas isente da aplicação.

Este comando isenta recursos somente do webhook de admissão. Os recursos ainda são auditados. Para isentar namespaces da auditoria, defina a isenção no nível do pacote de políticas:

  gcloud container fleet policycontroller content bundles set BUNDLE_NAME \
    --memberships=MEMBERSHIP_NAME \
    --exempted-namespaces=NAMESPACE_LIST

Substitua:

  • BUNDLE_NAME pelo nome do bundle que você quer atualizar com namespaces isentos.
  • MEMBERSHIP_NAME: o nome de assinatura do cluster registrado para isentar namespaces. Você pode especificar várias associações separadas por uma vírgula.
  • NAMESPACE_LIST: uma lista separada por vírgulas de namespaces que você quer que o Controlador de Políticas isente da aplicação.

Namespaces que serão isentos da aplicação

A lista a seguir mostra namespaces comuns do sistema que você pode querer isentar da aplicação para evitar comportamentos indesejados, como o bloqueio de upgrades. Esta não é uma lista completa:

- anthos-creds
- anthos-identity-service
- apigee
- apigee-system
- asm-system
- capi-kubeadm-bootstrap-system
- capi-system
- cert-manager
- cnrm-system
- config-management-monitoring
- config-management-system
- gke-connect
- gke-gmp-system
- gke-managed-cim
- gke-managed-filestorecsi
- gke-managed-metrics-server
- gke-managed-system
- gke-system
- gmp-public
- gmp-system
- hnc-system
- istio-system
- kube-node-lease
- kube-public
- kube-system
- poco-trial
- resource-group-system
- vm-system
- krmapihosting-system
- krmapihosting-monitoring