Cette rubrique explique comment supprimer un espace de noms de l'application forcée avec Policy Controller en configurant les espaces de noms exemptables.
Avant de commencer
Veillez à disposer d'Anthos Config Management et Policy Controller dans votre cluster.
Espaces de noms exemptés
La configuration d'un espace de noms exemptable permet à un utilisateur d'appliquer l'étiquette admission.gatekeeper.sh/ignore
. Lorsque vous configurez un espace de noms exemptable, Policy Controller ne supprimera pas l'application de cette étiquette à un espace de noms.
Exempter des espaces de noms de l'application forcée
Pour exempter les espaces de noms afin d'appliquer l'étiquette admission.gatekeeper.sh/ignore
, vous ajoutez le nom de l'espace de noms au fichier manifeste ConfigManagement dans spec.policyController.exemptableNamespaces
.
# config-management.yaml
apiVersion: configmanagement.gke.io/v1
kind: ConfigManagement
metadata:
name: config-management
namespace: config-management-system
spec:
# clusterName is required and must be unique among all managed clusters
clusterName: cluster-name
# Set to true to install and enable Policy Controller
policyController:
enabled: true
exemptableNamespaces: ["namespace-name"]
...
Vous pouvez exempter plusieurs espaces de noms. Par exemple, pour exempter les espaces de noms not-applicable
et also-not-applicable
dans le cluster my-cluster
, vous appliqueriez le fichier manifeste suivant :
# config-management.yaml
apiVersion: configmanagement.gke.io/v1
kind: ConfigManagement
metadata:
name: config-management
namespace: config-management-system
spec:
# clusterName is required and must be unique among all managed clusters
clusterName: my-cluster
# Set to true to install and enable Policy Controller
policyController:
enabled: true
exemptableNamespaces: ["not-applicable","also-not-applicable"]
...
Ajouter un libellé à l'espace de noms
Attribuez ensuite des libellés à vos espaces de noms afin qu'Anthos Config Management n'applique pas le contenu.
kubectl label namespace namespace-name "admission.gatekeeper.sh/ignore=true"