En esta página se explica cómo desinstalar Config Sync de tu clúster, cómo inhabilitar la función de flota de Config Management en tu flota y cómo desinstalar el operador de ConfigManagement.
Esta página está dirigida a administradores y operadores de TI que gestionan el ciclo de vida de la infraestructura tecnológica subyacente. Para obtener más información sobre los roles habituales y las tareas de ejemplo a las que hacemos referencia en el contenido, consulta Roles y tareas habituales de los usuarios de GKE. Google Cloud
La función de flota Config Management gestiona Config Sync mediante el operador ConfigManagement. Debido a esta arquitectura, los pasos para desinstalar deben completarse en el siguiente orden:
- Desinstalar Config Sync de un clúster
- Inhabilitar la función Config Management en tu flota
- Desinstalar el operador ConfigManagement de tu clúster
Desinstalar Config Sync de un clúster
.Consola
No puedes desinstalar Config Sync solo con la consola Google Cloud . En su lugar, usa Google Cloud CLI.
gcloud
Abre el manifiesto applySpec que has creado durante la instalación con la CLI de Google Cloud.
En el archivo de manifiesto applySpec, asigna el valor
false
aspec.configSync.enabled
:applySpecVersion: 1 spec: configSync: enabled: false ...
Aplica los cambios:
gcloud beta container fleet config-management apply \ --membership=MEMBERSHIP_NAME \ --config=CONFIG_YAML \ --project=PROJECT_ID
Haz los cambios siguientes:
MEMBERSHIP_NAME: añade el clúster registrado al que quieras aplicar esta configuración. Si has registrado el clúster en la consolaGoogle Cloud , el nombre de la pertenencia es el mismo que el de tu clúster.
CONFIG_YAML: añade la ruta al archivo
apply-spec.yaml
.PROJECT_ID: añade el ID de tu proyecto.
Terraform
Si has usado Terraform para instalar Config Sync con un recurso gke_hub_feature_membership del proveedor de Google Cloud Platform, actualiza ese recurso para desinstalar Config Sync. No uses el comando terraform destroy
. El comando terraform destroy
no desinstala Config Sync por completo. Algunos componentes permanecen.
Identifica el recurso
gke_hub_feature_membership
en tus archivos de configuración de Terraform que tenga el argumentoconfigmanagement
rellenado.Actualiza el recurso
gke_hub_feature_membership
para quitar el argumentoconfig_sync
deconfigmanagement
.Por ejemplo:
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.20.0" } }
Aplica la configuración de Terraform:
terraform apply
Para confirmar que quieres aplicar las acciones descritas, escribe
yes
.
Config Connector
Si has usado Config Connector para instalar Config Sync mediante un recurso GKEHubFeatureMembership, actualiza ese recurso para desinstalar Config Sync.
Identifica el objeto de recurso
GKEHubFeatureMembership
de tu clúster que tenga el campo.spec.configmanagement.configSync
rellenado.Aplica un parche al objeto de recurso
GKEHubFeatureMembership
para quitar el campo.spec.configmanagement.configSync
asignándole el valor null:kubectl patch GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \ --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE \ -p '{"spec":{"configmanagement":{"configSync": null}}}'
Haz los cambios siguientes:
FEATURE_MEMBERSHIP_OBJECT_NAME: añade el nombre del objeto de recurso
GKEHubFeatureMembership
que has creado anteriormente.FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: añade el espacio de nombres que contiene el objeto de recurso
GKEHubFeatureMembership
que has creado anteriormente.
Inhabilitar Config Management en tu flota
Consola
- En la Google Cloud consola, ve a la página Gestor de funciones.
En la fila Gestión de configuración de la tabla Funciones, haz clic en Detalles. Aparecerá la página Resumen de estado.
Haz clic en Inhabilitar Config Management. Aparecerá una página de confirmación.
En la página de confirmación, haz clic en Deshabilitar gestión de configuración.
gcloud
Para inhabilitar Config Management en todos los clústeres de la flota, ejecuta el siguiente comando:
gcloud beta container fleet config-management disable
Terraform
Si has usado Terraform para habilitar la función Config Management en tu flota mediante un recurso google_gke_hub_feature del proveedor de Google Cloud Platform, actualiza ese recurso para inhabilitar Config Management en todos los clústeres de la flota.
Actualiza el archivo HCL que contiene tu
google_gke_hub_feature
recurso para eliminar el recursogoogle_gke_hub_feature
.Si aún tienes un recurso
gke_hub_feature_membership
definido con un campofeature
que hace referencia al recursogoogle_gke_hub_feature
eliminado, quita también ese recursogke_hub_feature_membership
.Aplica la configuración de Terraform:
terraform apply
Para confirmar que quieres aplicar las acciones descritas, escribe
yes
.
Config Connector
Si has usado Config Connector para habilitar la función Config Management en tu flota mediante un recurso GKEHubFeature, actualiza ese recurso para inhabilitar Config Management en todos los clústeres de la flota.
Identifica el objeto de recurso
GKEHubFeature
de tu clúster que tenga un valor.spec.resourceID
deconfigmanagement
.Si aún tienes un objeto de recurso
GKEHubFeatureMembership
definido con un campo.spec.featureRef
que hace referencia a ese objeto de recursoGKEHubFeature
, elimínalo:kubectl delete GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \ --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE
Haz los cambios siguientes:
FEATURE_MEMBERSHIP_OBJECT_NAME: añade el nombre del objeto de recurso
GKEHubFeatureMembership
que has creado anteriormente.FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: añade el espacio de nombres que contiene el objeto de recurso
GKEHubFeatureMembership
que has creado anteriormente.
Elimina el recurso
GKEHubFeature
de tu clúster:kubectl delete GKEHubFeature FEATURE_OBJECT_NAME \ --namespace FEATURE_OBJECT_NAMESPACE
Haz los cambios siguientes:
FEATURE_OBJECT_NAME: añade el nombre del objeto de recurso
GKEHubFeature
que has creado anteriormente.FEATURE_OBJECT_NAMESPACE: añade el espacio de nombres que contiene el objeto de recurso
GKEHubFeature
que has creado anteriormente.
Desinstalar el operador ConfigManagement
Usa kubectl
para eliminar el operador ConfigManagement después de inhabilitar la función Config Management en la flota o anular el registro de tu clúster en la flota.
Para quitar el operador ConfigManagement, ejecuta los siguientes comandos:
Elimina el objeto ConfigManagement del clúster:
kubectl delete configmanagement --all
Después de ejecutar este comando, ocurrirá lo siguiente:
- Se eliminarán del clúster todos los ClusterRoles y ClusterRoleBindings creados en el clúster por el operador de Config Management.
- Se eliminan todas las configuraciones de controladores de admisión instaladas por el operador ConfigManagement.
- Se elimina el contenido del espacio de nombres
config-management-system
, exceptogit-creds
Secret y, en las versiones de Config Sync a partir de la 1.9.0,config-management-operator
Deployment yconfig-management-operator
Pod. El operador ConfigManagement no puede funcionar sin el espacio de nombresconfig-management-system
. Las CustomResourceDefinitions (CRDs) creadas o modificadas por el controlador del operador de Config Management se eliminan de los clústeres en los que se crearon o modificaron. El CRD necesario para ejecutar el operador ConfigManagement sigue existiendo porque, desde el punto de vista de Kubernetes, lo añadió el usuario que instaló el operador ConfigManagement. En el siguiente paso se explica cómo quitar estos componentes.
Si necesitas conservar el
git-creds
secreto, hazlo ahora:kubectl -n config-management-system get secret git-creds -o yaml
Elimina el espacio de nombres
config-management-system
:kubectl delete ns config-management-system
Elimina el espacio de nombres
config-management-monitoring
:kubectl delete ns config-management-monitoring
Elimina el CustomResourceDefinition de ConfigManagement:
kubectl delete crd configmanagements.configmanagement.gke.io