Disinstalla Config Sync

Questa pagina spiega come disinstallare Config Sync dal cluster, disabilitare la funzionalità del parco risorse Config Management nel parco risorse e disinstallare l'operatore ConfigManagement.

Questa pagina è rivolta agli amministratori IT e agli operatori che gestiscono il ciclo di vita dell'infrastruttura tecnologica di base. Per scoprire di più sui ruoli comuni e sulle attività di esempio a cui facciamo riferimento nei contenuti di Google Cloud, consulta Ruoli e attività comuni degli utenti di GKE Enterprise.

La funzionalità del parco risorse Config Management gestisce Config Sync utilizzando l'operatore ConfigManagement. A causa di questa architettura, i passaggi di disinstallazione devono essere completati nell'ordine seguente:

  1. Disinstallare Config Sync dal cluster
  2. Disattivare la funzionalità Config Management nel parco risorse
  3. Disinstalla ConfigManagement Operator dal cluster

Disinstalla Config Sync dal cluster

Console

Non puoi disinstallare Config Sync solo con la console Google Cloud. Utilizza invece Google Cloud CLI.

gcloud

  1. Apri il manifest applySpec che hai creato durante l'installazione con Google Cloud CLI.

  2. Nel manifest applySpec, imposta spec.configSync.enabled su false:

    applySpecVersion: 1
    spec:
      configSync:
        enabled: false
    ...
    
  3. Applica le modifiche:

      gcloud beta container fleet config-management apply \
          --membership=MEMBERSHIP_NAME \
          --config=CONFIG_YAML \
          --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • MEMBERSHIP_NAME: aggiungi il cluster registrato a cui vuoi applicare questa configurazione. Se hai registrato il cluster nella console Google Cloud, il nome dell'appartenenza corrisponde al nome del cluster.

    • CONFIG_YAML: aggiungi il percorso del file apply-spec.yaml.

    • PROJECT_ID: aggiungi il tuo ID progetto.

Terraform

Se hai utilizzato Terraform per installare Config Sync utilizzando una risorsa gke_hub_feature_membership del provider della piattaforma Google Cloud, aggiorna la risorsa per disinstallare Config Sync.

  1. Identifica la risorsa gke_hub_feature_membership nei file di configurazione Terraform in cui è stato compilato un argomento configmanagement.

  2. Aggiorna la risorsa gke_hub_feature_membership per rimuovere l'argomento config_sync da configmanagement.

    Ad esempio:

    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"
      }
    }
    
  3. Applica la configurazione Terraform:

    terraform apply
    

    Conferma di voler applicare le azioni descritte inserendo yes.

Config Connector

Se hai utilizzato Config Connector per installare Config Sync utilizzando una risorsa GKEHubFeatureMembership, aggiornala per disinstallare Config Sync.

  1. Identifica l'oggetto della risorsa GKEHubFeatureMembership nel tuo cluster che ha un campo .spec.configmanagement.configSync compilato.

  2. Esegui il patch dell'oggetto della risorsa GKEHubFeatureMembership per rimuovere il campo .spec.configmanagement.configSync impostandolo su null:

    kubectl patch GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \
        --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE \
        -p '{"spec":{"configmanagement":{"configSync": null}}}'
    

    Sostituisci quanto segue:

    • FEATURE_MEMBERSHIP_OBJECT_NAME: aggiungi il nome dell'oggetto risorsa GKEHubFeatureMembership creato in precedenza.

    • FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: aggiungi lo spazio dei nomi che contiene l'oggetto risorsa GKEHubFeatureMembership creato in precedenza.

Disattivare Config Management nel tuo parco risorse

Console

  1. Nella console Google Cloud, vai alla pagina Gestione funzionalità.

    Vai a Gestione funzionalità

  2. Nella riga Gestione configurazione della tabella Funzionalità, fai clic su Dettagli. Viene visualizzata la pagina Riepilogo stato.

  3. Fai clic su Disattiva Config Management. Viene visualizzata una pagina di conferma.

  4. Nella pagina di conferma, fai clic su Disattiva Config Management.

gcloud

  1. Per disattivare Config Management su tutti i cluster del parco risorse, esegui il seguente comando:

    gcloud beta container fleet config-management disable
    

Terraform

Se hai utilizzato Terraform per attivare la funzionalità di gestione della configurazione nel tuo parco utilizzando una risorsa google_gke_hub_feature del provider della piattaforma Google Cloud, aggiorna la risorsa per disattivare la gestione della configurazione su tutti i cluster del parco.

  1. Aggiorna il file HCL contenente la risorsa google_gke_hub_feature per rimuoverla.google_gke_hub_feature

  2. Se hai ancora una risorsa gke_hub_feature_membership definita con un feature campo che fa riferimento al google_gke_hub_feature rimosso, rimuovi anche la risorsa gke_hub_feature_membership.

  3. Applica la configurazione Terraform:

    terraform apply
    

    Conferma di voler applicare le azioni descritte inserendo yes.

Config Connector

Se hai utilizzato Config Connector per attivare la funzionalità Config Management nel tuo parco risorse utilizzando una risorsa GKEHubFeature, aggiornala per disattivare Config Management su tutti i cluster del parco risorse.

  1. Identifica l'oggetto della risorsa GKEHubFeature nel tuo cluster che ha un valore .spec.resourceID pari a configmanagement.

  2. Se hai ancora un oggetto risorsa GKEHubFeatureMembership definito con un campo .spec.featureRef che fa riferimento a quell'oggetto risorsa GKEHubFeature, eliminalo:

    kubectl delete GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \
        --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE
    

    Sostituisci quanto segue:

    • FEATURE_MEMBERSHIP_OBJECT_NAME: aggiungi il nome dell'oggetto risorsa GKEHubFeatureMembership creato in precedenza.

    • FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: aggiungi lo spazio dei nomi che contiene l'oggetto risorsa GKEHubFeatureMembership creato in precedenza.

  3. Elimina la risorsa GKEHubFeature dal cluster:

    kubectl delete GKEHubFeature FEATURE_OBJECT_NAME \
        --namespace FEATURE_OBJECT_NAMESPACE
    

    Sostituisci quanto segue:

    • FEATURE_OBJECT_NAME: aggiungi il nome dell'oggetto risorsa GKEHubFeature creato in precedenza.

    • FEATURE_OBJECT_NAMESPACE: aggiungi lo spazio dei nomi che contiene l'oggetto risorsa GKEHubFeature creato in precedenza.

Disinstalla l'operatore ConfigManagement

Utilizza kubectl per eliminare l'operatore ConfigManagement dopo aver disattivato la funzionalità Config Management nel parco risorse o aver annullato la registrazione del cluster nel parco risorse.

Per rimuovere l'operatore ConfigManagement, esegui i seguenti comandi:

  1. Elimina l'oggetto ConfigManagement dal cluster:

    kubectl delete configmanagement --all
    

    Dopo aver eseguito questo comando, si verificano le seguenti operazioni:

    • Tutti i ClusterRole e ClusterRoleBindings creati nel cluster dall'operatore ConfigManagement vengono eliminati dal cluster.
    • Tutte le configurazioni dei controller di ammissione installate da ConfigManagement Operator vengono eliminate.
    • I contenuti dello spazio dei nomi config-management-system vengono eliminati, con l'eccezione del git-creds segreto e, per le versioni di Config Sync a partire dalla 1.9.0, del config-management-operator deployment e del config-management-operator pod. L'operatore ConfigManagement non può funzionare senza lo spazio dei nomi config-management-system. Tutti i CustomResourceDefinitions (CRD) creati o modificati dal controller ConfigManagement Operator vengono rimossi dai cluster in cui sono stati creati o modificati. Il CRD necessario per eseguire ConfigManagement Operator esiste ancora perché dal punto di vista di Kubernetes, sono stati aggiunti dall'utente che ha installato ConfigManagement Operator. Le informazioni sulla rimozione di questi componenti sono riportate nel passaggio successivo.
  2. Se devi conservare il segreto git-creds, fallo ora:

    kubectl -n config-management-system get secret git-creds -o yaml
    
  3. Elimina lo spazio dei nomi config-management-system:

    kubectl delete ns config-management-system
    
  4. Elimina lo spazio dei nomi config-management-monitoring:

    kubectl delete ns config-management-monitoring
    
  5. Elimina CustomResourceDefinition ConfigManagement:

    kubectl delete crd configmanagements.configmanagement.gke.io