Cette page explique comment configurer les espaces de noms exemptés dans Policy Controller.
Les espaces de noms exemptés suppriment un espace de noms de l'application forcée du webhook d'admission avec
Policy Controller, mais les violations sont toujours signalées dans
audit. Si vous ne configurez aucun espace de noms, seul l'espace de noms gatekeeper-system est préconfiguré comme exempté de l'application forcée du webhook d'admission Policy Controller.
Configurer des espaces de noms exemptés
La configuration d'un espace de noms exemptable applique le libellé admission.gatekeeper.sh/ignore, qui exempte l'espace de noms de l'application forcée du webhook d'admission Policy Controller. Si vous supprimez ultérieurement un espace de noms exemptable, Policy Controller ne supprimera pas le libellé admission.gatekeeper.sh/ignore de l'espace de noms.
Exempter des espaces de noms de l'application forcée
Vous pouvez exempter des espaces de noms soit lors de l'installation de Policy Controller, soit après l'installation. La procédure suivante explique comment exempter des espaces de noms après l'installation.
Console
- Dans la Google Cloud console, accédez à la page Règle sous la section Gestion des stratégies.
- Sous l'onglet Paramètres, dans la table du cluster, sélectionnez Modifier edit dans la colonne Modifier la configuration.
- Développez le menu Modifier la configuration Policy Controller.
- Dans le champ Exempter les espaces de noms, fournissez la liste des espaces de noms valides. Les objets de ces espaces de noms sont ignorés par toutes les règles. Les espaces de noms n'ont pas besoin d'exister pour le moment.
- Sélectionnez Enregistrer les modifications.
gcloud
Pour ajouter des espaces de noms à la liste des espaces de noms pouvant être exemptés d'une application par le webhook d'admission, exécutez la commande suivante :
gcloud container fleet policycontroller update \
--memberships=MEMBERSHIP_NAME \
--exemptable-namespaces=NAMESPACE_LIST
Remplacez les éléments suivants :
MEMBERSHIP_NAME: nom de l'appartenance du cluster enregistré sur lequel exempter les espaces de noms. Vous pouvez spécifier plusieurs appartenances séparées par une virgule.NAMESPACE_LIST: liste d'espaces de noms, séparés par une virgule, que Policy Controller doit exempter de l'application forcée.
Cette commande exempte les ressources uniquement du webhook d'admission. Les ressources sont toujours auditées. Pour exclure à la place des espaces de noms de l'audit, définissez l'exception au niveau du groupe de règles :
gcloud container fleet policycontroller content bundles set BUNDLE_NAME \
--memberships=MEMBERSHIP_NAME \
--exempted-namespaces=NAMESPACE_LIST
Remplacez les éléments suivants :
BUNDLE_NAMEpar le nom du groupe de règles que vous souhaitez mettre à jour avec les espaces de noms exemptés.MEMBERSHIP_NAME: nom de l'appartenance du cluster enregistré sur lequel exempter les espaces de noms. Vous pouvez spécifier plusieurs appartenances séparées par une virgule.NAMESPACE_LIST: liste d'espaces de noms, séparés par une virgule, que Policy Controller doit exempter de l'application forcée.
Espaces de noms à exempter de l'application forcée
La liste suivante présente les espaces de noms système courants que vous pouvez exempter de l'application forcée pour éviter tout comportement indésirable, comme le blocage des mises à niveau. Cette liste n'est pas exhaustive :
- 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