Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En esta página, se describe cómo configurar espacios de nombres exentos en Policy Controller.
Los espacios de nombres exentos quitan un espacio de nombres de la aplicación del webhook de admisión con Policy Controller, pero cualquier incumplimiento se informa en la auditoría. Si no configuras ningún espacio de nombres, solo el espacio de nombres gatekeeper-system estará preconfigurado como exento de la aplicación del webhook de admisión de Policy Controller.
Configura espacios de nombres exentos
Configurar un espacio de nombres que se pueda eximir te permite aplicar la etiqueta admission.gatekeeper.sh/ignore para eximirlo de la aplicación del webhook de admisión de Policy Controller. Si luego quitas un espacio de nombres exento, Policy Controller no quitará la etiqueta admission.gatekeeper.sh/ignore del espacio de nombres.
Exime espacios de nombres de la aplicación
Puedes eximir espacios de nombres durante la instalación de Policy Controller o después de ella. En el siguiente proceso, se muestra cómo eximir los espacios de nombres después de la instalación.
Console
En la consola de Google Cloud, ve a la página Política de GKE Enterprise en la sección Administración de postura.
En la pestaña Configuración, en la tabla del clúster, selecciona Editaredit en la columna Editar configuración.
Expande el menú Editar configuración de Policy Controller.
En el campo Eximir espacios de nombres, proporciona una lista de espacios de nombres válidos.
Todas las políticas ignoran los objetos de estos espacios de nombres. No es necesario que los espacios de nombres existan.
Selecciona Save changes.
Policy Controller de gcloud
Para agregar espacios de nombres a la lista de espacios de nombres que el webhook de admisión puede eximir de la aplicación, ejecuta el siguiente comando:
MEMBERSHIP_NAME: Es el nombre de membresía del clúster registrado en el que se eximen los espacios de nombres. Puedes especificar varias membresías separadas por comas.
NAMESPACE_LIST: Es una lista separada por comas de los espacios de nombres que deseas que Policy Controller exima de la aplicación forzosa.
Este comando exime a los recursos solo del webhook de admisión. Los recursos aún se auditan. En su lugar, para eximir los espacios de nombres de la auditoría, configura la exención a nivel del paquete de políticas:
BUNDLE_NAME por el nombre del paquete de políticas que deseas actualizar con espacios de nombres exentos.
MEMBERSHIP_NAME: Es el nombre de membresía del clúster registrado en el que se eximen los espacios de nombres. Puedes especificar varias membresías separadas por comas.
NAMESPACE_LIST: Es una lista separada por comas de los espacios de nombres que deseas que Policy Controller exima de la aplicación forzosa.
gcloud ConfigManagement
Para eximir un espacio de nombres de la aplicación, agrega el nombre del espacio de nombres en spec.policyController.exemptableNamespaces:
# apply-spec.yamlapplySpecVersion:1spec:# Set to true to install and enable Policy ControllerpolicyController:enabled:trueexemptableNamespaces:["NAMESPACE_NAME"]...
Reemplaza NAMESPACE_NAME por el nombre del espacio de nombres que deseas exentar de la aplicación forzosa.
También puedes eximir varios espacios de nombres. Por ejemplo, para eximir los espacios de nombres not-applicable y also-not-applicable, debes aplicar el siguiente manifiesto:
# apply-spec.yamlapplySpecVersion:1spec:# Set to true to install and enable Policy ControllerpolicyController:enabled:trueexemptableNamespaces:["not-applicable","also-not-applicable"]...
MEMBERSHIP_NAME: Agrega el clúster registrado al que deseas aplicar esta configuración. Si registraste el clúster en la consola de Google Cloud, el nombre de la membresía es el mismo que el de tu clúster.
CONFIG_YAML: Agrega la ruta de acceso a tu archivo apply-spec.yaml.
PROJECT_ID: Agrega el ID del proyecto.
Etiqueta tu espacio de nombres exento para que el webhook de admisión de Policy Controller no aplique su contenido:
Reemplaza NAMESPACE_NAME por el nombre del espacio de nombres que deseas exentar de la aplicación forzosa.
Espacios de nombres que se eximen de la aplicación
Estos son algunos espacios de nombres que podrían crear Google Kubernetes Engine (GKE)
y productos relacionados. Te recomendamos que los eximas de la aplicación forzosa para evitar un impacto no deseado:
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-04-14 (UTC)"],[],[],null,["This page describes how to configure exempt namespaces in Policy Controller.\n| **Caution:** Namespace exemption from the admission webhook is possible only on Standard clusters. For Autopilot clusters, you can [define exemptions on the constraint](/kubernetes-engine/enterprise/policy-controller/docs/how-to/creating-policy-controller-constraints#constraint) instead.\n\nExempt namespaces remove a namespace from admission webhook enforcement with\nPolicy Controller, but any violations are still reported in\n[audit](/kubernetes-engine/enterprise/policy-controller/docs/how-to/auditing-constraints). If you don't configure any\nnamespaces, only the `gatekeeper-system` namespace is pre-configured as exempt\nfrom the Policy Controller admission webhook enforcement.\n\nConfigure exempt namespaces\n\nConfiguring an exemptable namespace applies the\n`admission.gatekeeper.sh/ignore` label, which exempts the namespace from Policy Controller\nadmission webhook enforcement. If you later remove an exemptable namespace,\nPolicy Controller does not remove the `admission.gatekeeper.sh/ignore` label\nfrom the namespace.\n\nExempt namespaces from enforcement\n\nYou can exempt namespaces either\n[during Policy Controller installation](/kubernetes-engine/enterprise/policy-controller/docs/how-to/installing-policy-controller#installing),\nor after installation. The following process shows you how to exempt namespaces\nafter installation. \n\nConsole\n\n1. In the Google Cloud console, go to the **Policy** page under the **Posture Management** section.\n\n \u003cbr /\u003e\n\n [Go to Policy](https://console.cloud.google.com/kubernetes/policy_controller)\n2. Under the **Settings** tab, in the cluster table, select **Edit** *edit* in the **Edit configuration** column.\n3. Expand the **Edit Policy Controller configuration** menu.\n4. In the **Exempt namespaces** field, provide a list of valid namespaces. Objects in these namespaces are ignored by all policies. The namespaces don't need to exist yet.\n5. Select **Save changes**.\n\ngcloud\n\nTo add namespaces to the list of namespaces that may be exempted from\nenforcement by the admission webhook, run the following command: \n\n gcloud container fleet policycontroller update \\\n --memberships=\u003cvar translate=\"no\"\u003eMEMBERSHIP_NAME\u003c/var\u003e \\\n --exemptable-namespaces=[\u003cvar translate=\"no\"\u003eNAMESPACE_LIST\u003c/var\u003e]\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eMEMBERSHIP_NAME\u003c/var\u003e: the membership name of the registered cluster to exempt namespaces on. You can specify multiple memberships separated by a comma.\n- \u003cvar translate=\"no\"\u003eNAMESPACE_LIST\u003c/var\u003e: a comma-separated list of namespaces that you want Policy Controller to exempt from enforcement.\n\nThis command exempts resources only from the admission webhook. The resources\nare still audited. To instead exempt namespaces from audit, set the\nexemption at the policy bundle level instead: \n\n gcloud container fleet policycontroller content bundles set \u003cvar translate=\"no\"\u003eBUNDLE_NAME\u003c/var\u003e \\\n --memberships=\u003cvar translate=\"no\"\u003eMEMBERSHIP_NAME\u003c/var\u003e \\\n --exempted-namespaces=[\u003cvar translate=\"no\"\u003eNAMESPACE_LIST\u003c/var\u003e]\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eBUNDLE_NAME\u003c/var\u003e with the name of the policy bundle that you want to update with exempted namespaces.\n- \u003cvar translate=\"no\"\u003eMEMBERSHIP_NAME\u003c/var\u003e: the membership name of the registered cluster to exempt namespaces on. You can specify multiple memberships separated by a comma.\n- \u003cvar translate=\"no\"\u003eNAMESPACE_LIST\u003c/var\u003e: a comma-separated list of namespaces that you want Policy Controller to exempt from enforcement.\n\nNamespaces to exempt from enforcement\n\nThese are some namespaces which could be created by Google Kubernetes Engine (GKE)\nand related products. You may want to exempt them from enforcement to avoid\nundesired impact: \n\n - anthos-creds\n - anthos-identity-service\n - apigee\n - apigee-system\n - asm-system\n - capi-kubeadm-bootstrap-system\n - capi-system\n - cert-manager\n - cnrm-system\n - config-management-monitoring\n - config-management-system\n - gke-connect\n - gke-gmp-system\n - gke-managed-cim\n - gke-managed-filestorecsi\n - gke-managed-metrics-server\n - gke-managed-system\n - gke-system\n - gmp-public\n - gmp-system\n - hnc-system\n - istio-system\n - kube-node-lease\n - kube-public\n - kube-system\n - poco-trial\n - resource-group-system\n - vm-system"]]