Namespaces aus Policy Controller ausschließen

Auf dieser Seite wird beschrieben, wie Sie ausgenommene Namespaces in Policy Controller konfigurieren.

Wird ein Namespace als “ausgenommen” bestimmt, so wird er aus der Zulassungs-Webhook-Erzwingung mit Policy Controller entfernt. Verstöße werden jedoch weiterhin in Audit vermerkt. Wenn Sie keine Namespaces konfigurieren, ist nur der Namespace gatekeeper-system als von der Erzwingung des Policy Controller-Zulassungs-Webhooks ausgenommen präkonfiguriert.

Ausnahmefähige Namespaces konfigurieren

Wenn Sie einen ausnahmefähigen Namespace konfigurieren, wird das Label admission.gatekeeper.sh/ignore angewendet, wodurch der Namespace von der Erzwingung des Policy Controller-Zulassungs-Webhooks ausgenommen wird. Wenn Sie später einen ausnahmefähigen Namespace entfernen, wird von Policy Controller das Label admission.gatekeeper.sh/ignore nicht aus dem Namespace entfernt.

Namespaces von der Erzwingung ausnehmen

Sie können Namespaces während der Installation von Policy Controller oder nach der Installation ausschließen. Im folgenden Verfahren wird gezeigt, wie Sie Namespaces nach der Installation ausschließen.

Console

  1. Rufen Sie in der Google Cloud Console im Abschnitt Statusverwaltung die Seite Richtlinie auf.

    Zur Richtlinie

  2. Wählen Sie auf dem Tab Einstellungen in der Clustertabelle in der Spalte Konfiguration bearbeiten die Option Bearbeiten aus.
  3. Maximieren Sie das Menü Policy Controller-Konfiguration bearbeiten.
  4. Geben Sie im Feld Ausnahmefähige Namespaces eine Liste gültiger Namespaces an. Objekte in diesen Namespaces werden von allen Richtlinien ignoriert. Die Namespaces müssen noch nicht vorhanden sein.
  5. Wählen Sie Änderungen speichern aus.

gcloud

Führen Sie den folgenden Befehl aus, um Namespaces der Liste der Namespaces hinzuzufügen, die vom Admission-Webhook von der Erzwingung ausgenommen werden können:

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

Ersetzen Sie Folgendes:

  • MEMBERSHIP_NAME: Name der Mitgliedschaft des registrierten Clusters, für den Namespaces ausgenommen werden sollen. Sie können mehrere Mitgliedschaften durch Kommas getrennt angeben.
  • NAMESPACE_LIST: Kommagetrennte Liste der Namespaces, für die Policy Controller von der Erzwingung ausgenommen werden soll.

Mit diesem Befehl werden Ressourcen nur vom Admission-Webhook ausgenommen. Die Ressourcen werden noch geprüft. Wenn Sie Namespaces stattdessen von der Prüfung ausnehmen möchten, legen Sie die Ausnahme auf der Ebene des Richtlinien-Bundles fest:

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

Ersetzen Sie Folgendes:

  • BUNDLE_NAME durch den Namen des Richtlinienpakets, das Sie mit ausgenommenen Namespaces aktualisieren möchten.
  • MEMBERSHIP_NAME: Name der Mitgliedschaft des registrierten Clusters, für den Namespaces ausgenommen werden sollen. Sie können mehrere Mitgliedschaften durch Kommas getrennt angeben.
  • NAMESPACE_LIST: Kommagetrennte Liste der Namespaces, für die Policy Controller von der Erzwingung ausgenommen werden soll.

Namespaces, die von der Erzwingung ausgenommen werden sollen

In der folgenden Liste sind gängige System-Namespaces aufgeführt, die Sie möglicherweise von der Erzwingung ausschließen möchten, um unerwünschtes Verhalten wie das Blockieren von Upgrades zu vermeiden. Diese Liste ist nicht vollständig:

- 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