Auf dieser Seite erfahren Sie, wie Sie Config Sync in Ihrem Cluster deinstallieren, das Config Management-Flottenfeature für Ihre Flotte deaktivieren sowie den ConfigManagement Operator deinstallieren.
Mit dem Flottenfeature von Config Management können Config Sync, Policy Controller und Hierarchy Controller mit dem ConfigManagement Operator verwaltet werden. Aufgrund dieser Architektur müssen die Deinstallationsschritte in der folgenden Reihenfolge ausgeführt werden:
- Config Sync in Ihrem Cluster deinstallieren
- Config Management-Feature für Ihre Flotte deaktivieren
- ConfigManagement Operator in Ihrem Cluster deinstallieren
Config Sync in Ihrem Cluster deinstallieren
Console
Sie können Config Sync nicht nur über die Google Cloud Console deinstallieren. Verwenden Sie stattdessen die Google Cloud CLI.
gcloud
Öffnen Sie das applySpec-Manifest, das Sie bei der Installation mit der Google Cloud CLI erstellt haben.
Legen Sie im applySpec-Manifest
spec.configSync.enabled
auffalse
fest:applySpecVersion: 1 spec: configSync: enabled: false ...
(Nur für Cluster mit automatischen Config Sync-Upgrades erforderlich) Legen Sie im applySpec-Manifest
spec.upgrades
aufauto
fest:applySpecVersion: 1 spec: upgrades: auto configSync: enabled: false ...
Änderungen anwenden:
gcloud beta container fleet config-management apply \ --membership=MEMBERSHIP_NAME \ --config=CONFIG_YAML \ --project=PROJECT_ID
Ersetzen Sie Folgendes:
MEMBERSHIP_NAME: Fügen Sie den registrierten Cluster hinzu, auf den Sie diese Konfiguration anwenden möchten. Wenn Sie den Cluster in der Google Cloud Console registriert haben, entspricht der Name der Mitgliedschaft dem Namen Ihres Clusters.
CONFIG_YAML: Fügen Sie den Pfad zur Datei
apply-spec.yaml
hinzu.PROJECT_ID: Fügen Sie Ihre Projekt-ID hinzu.
Terraform
Wenn Sie Terraform zur Installation von Config Sync mit einer gke_hub_feature_membership-Ressource aus dem Google Cloud Platform-Anbieter verwendet haben, müssen Sie diese Ressource aktualisieren, um Config Sync zu deinstallieren.
Ermitteln Sie in Ihren Terraform-Konfigurationsdateien die
gke_hub_feature_membership
-Ressource, für die das Argumentconfigmanagement
ausgefüllt ist.Aktualisieren Sie die
gke_hub_feature_membership
-Ressource, um das Argumentconfig_sync
aus demconfigmanagement
zu entfernen.Beispiel:
resource "google_gke_hub_feature_membership" "feature_member" { location = "global" feature = google_gke_hub_feature.feature.name membership = google_gke_hub_membership.membership.membership_id membership_location = google_gke_hub_membership.membership.location configmanagement { version = "1.17.0" } }
Wenden Sie die Terraform-Konfiguration an:
terraform apply
Bestätigen Sie, dass Sie die beschriebenen Aktionen anwenden möchten, indem Sie
yes
eingeben.
Config Connector
Wenn Sie Config Connector verwendet haben, um Config Sync mit einer GKEHubFeatureMembership-Ressource zu installieren, müssen Sie diese Ressource aktualisieren, um Config Sync zu deinstallieren.
Ermitteln Sie das Ressourcenobjekt
GKEHubFeatureMembership
in Ihrem Cluster, bei dem das Feld.spec.configmanagement.configSync
ausgefüllt ist.Patchen Sie das Ressourcenobjekt
GKEHubFeatureMembership
, um das Feld.spec.configmanagement.configSync
zu entfernen. Setzen Sie es dazu auf null:kubectl patch GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \ --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE \ -p '{"spec":{"configmanagement":{"configSync": null}}}'
Ersetzen Sie Folgendes:
FEATURE_MEMBERSHIP_OBJECT_NAME: Fügen Sie den Namen des zuvor erstellten Ressourcenobjekts
GKEHubFeatureMembership
hinzu.FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: Fügen Sie den Namespace hinzu, der das zuvor erstellte Ressourcenobjekt
GKEHubFeatureMembership
enthält.
Config Management für Ihre Flotte deaktivieren
Console
- Rufen Sie in der Google Cloud Console im Abschnitt Flottenfeatures die GKE Enterprise-Seite Featureverwaltung auf.
Klicken Sie in der Zeile Config Management der Tabelle Produkte auf Details. Die Seite Statuszusammenfassung wird angezeigt.
Klicken Sie auf Config Management deaktivieren. Eine Bestätigungsseite wird angezeigt.
Klicken Sie auf der Bestätigungsseite auf Config Management deaktivieren.
gcloud
Führen Sie den folgenden Befehl aus, um Config Management in allen Clustern der Flotte zu deaktivieren:
gcloud beta container fleet config-management disable
Terraform
Wenn Sie Terraform verwendet haben, um das Config Management-Feature für Ihre Flotte mit einer google_gke_hub_feature-Ressource aus dem Google Cloud Platform-Anbieter zu aktivieren, müssen Sie diese Ressource aktualisieren, um Config Management für alle Cluster der Flotte zu deaktivieren.
Aktualisieren Sie die HCL-Datei, die die
google_gke_hub_feature
-Ressource enthält, um diegoogle_gke_hub_feature
-Ressource zu entfernen.Wenn noch eine
gke_hub_feature_membership
-Ressource mit einemfeature
-Feld definiert ist, das auf das entferntegoogle_gke_hub_feature
verweist, entfernen Sie auch diesegke_hub_feature_membership
-Ressource.Wenden Sie die Terraform-Konfiguration an:
terraform apply
Bestätigen Sie, dass Sie die beschriebenen Aktionen anwenden möchten, indem Sie
yes
eingeben.
Config Connector
Wenn Sie Config Connector verwendet haben, um das Config Management-Feature für Ihre Flotte mit einer GKEHubFeature-Ressource zu aktivieren, müssen Sie diese Ressource aktualisieren, um Config Management in allen Clustern der Flotte zu deaktivieren.
Ermitteln Sie das Ressourcenobjekt
GKEHubFeature
in Ihrem Cluster, das für.spec.resourceID
den Wertconfigmanagement
hat.Wenn noch ein Ressourcenobjekt
GKEHubFeatureMembership
mit einem.spec.featureRef
-Feld definiert ist, das auf dieses RessourcenobjektGKEHubFeature
verweist, löschen Sie es:kubectl delete GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \ --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE
Ersetzen Sie Folgendes:
FEATURE_MEMBERSHIP_OBJECT_NAME: Fügen Sie den Namen des zuvor erstellten Ressourcenobjekts
GKEHubFeatureMembership
hinzu.FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: Fügen Sie den Namespace hinzu, der das zuvor erstellte Ressourcenobjekt
GKEHubFeatureMembership
enthält.
Löschen Sie die
GKEHubFeature
-Ressource aus Ihrem Cluster:kubectl delete GKEHubFeature FEATURE_OBJECT_NAME \ --namespace FEATURE_OBJECT_NAMESPACE
Ersetzen Sie Folgendes:
FEATURE_OBJECT_NAME: Fügen Sie den Namen des zuvor erstellten Ressourcenobjekts
GKEHubFeature
hinzu.FEATURE_OBJECT_NAMESPACE: Fügen Sie den Namespace hinzu, der das zuvor erstellte Ressourcenobjekt
GKEHubFeature
enthält.
ConfigManagement Operator deinstallieren
Verwenden Sie kubectl
, um den ConfigManagement Operator zu löschen, nachdem Sie das Config Management-Feature für die Flotte deaktiviert oder die Registrierung Ihres Clusters für die Flotte aufgehoben haben.
Um den ConfigManagement Operator zu entfernen, führen Sie die folgenden Befehle aus:
Löschen Sie das ConfigManagement-Objekt aus dem Cluster:
kubectl delete configmanagement --all
Die Ausführung dieses Befehls führt zu Folgendem:
- Alle vom ConfigManagement Operator im Cluster erstellten ClusterRoles und ClusterRoleBindings werden aus dem Cluster gelöscht.
- Alle vom ConfigManagement Operator installierten Admission-Controller-Konfigurationen werden gelöscht.
- Die Inhalte des Namespace
config-management-system
werden mit Ausnahme des Secretsgit-creds
und für Versionen von Policy Controller, Config Sync und Config Controller ab 1.9.0, für dieconfig-management-operator
-Bereitstellung und für denconfig-management-operator
-Pod gelöscht. Der ConfigManagement Operator funktioniert ohne den Namespaceconfig-management-system
nicht. Alle vom ConfigManagement Operator-Controller erstellten oder geänderten CustomResourceDefinitions (CRDs) werden aus den Clustern entfernt, in denen sie erstellt oder geändert wurden. Die zur Ausführung des ConfigManagement Operator erforderliche CRD ist noch vorhanden, da sie aus der Perspektive von Kubernetes von dem Nutzer hinzugefügt wurde, der den ConfigManagement Operator installiert hat. Wie Sie diese Komponenten entfernen, erfahren Sie im nächsten Schritt.
Wenn Sie das
git-creds
-Secret beibehalten möchten, sorgen Sie jetzt dafür:kubectl -n config-management-system get secret git-creds -o yaml
Löschen Sie den Namespace
config-management-system
:kubectl delete ns config-management-system
Löschen Sie den Namespace
config-management-monitoring
:kubectl delete ns config-management-monitoring
Löschen Sie die ConfigManagement CustomResourceDefinition:
kubectl delete crd configmanagements.configmanagement.gke.io