En esta página se describe cómo configurar estrategias de gestión de conflictos para recursos con espacio de nombres y con ámbito de clúster en un plan de restauración.
Al restaurar un clúster, pueden producirse conflictos de recursos en los siguientes casos:
- Restaurar en un clúster que ya tiene recursos aprovisionados.
- Cuando un recurso de Kubernetes se gestiona con herramientas como GitOps o un operador.
La función de copia de seguridad de GKE ofrece varias opciones para definir la gestión de conflictos de los recursos con ámbito de clúster y de espacio de nombres que puedes especificar en un plan de restauración.
Restaurar la gestión de conflictos de recursos con permisos de clúster
Puedes configurar las siguientes opciones en el plan de restauración para gestionar los conflictos de los recursos con ámbito de clúster:
- Mantener los recursos del clúster de destino (no destructivo): si hay un recurso con el mismo nombre en el clúster de destino, déjalo como está.
Sustituir recursos en el clúster de destino (destructivo): si un recurso ya existe en el clúster de destino, se elimina y se restaura la copia de la copia de seguridad.
gcloud
Para actualizar un plan de restauración que ya existe para gestionar conflictos de un recurso con permisos de clúster, sigue estos pasos:
gcloud beta container backup-restore restore-plans update RESTORE_PLAN \
--project=PROJECT_ID \
--location=LOCATION \
--cluster-resource-conflict-policy=CLUSTER_RESOURCE_CONFLICT_POLICY
Haz los cambios siguientes:
RESTORE_PLAN
: el nombre del plan de restauración que quieras actualizar.PROJECT_ID
: el ID de tu proyecto de Google Cloud .LOCATION
: la región de cálculo del recurso, por ejemplo,us-central1
.CLUSTER_RESOURCE_CONFLICT_POLICY
: define cómo gestionar los conflictos durante la restauración de los recursos del clúster seleccionados. Usa una de las siguientes opciones:use-existing-version
: si los recursos que se están restaurando ya existen en el clúster de destino, Backup for GKE los conserva.use-backup-version
: si los recursos que se están restaurando ya existen en el clúster de destino, Backup for GKE sustituye los recursos por los nuevos recursos de la copia de seguridad.
Consola
Sigue estas instrucciones para actualizar la política de conflictos de recursos con ámbito de clúster en la consola de Google Cloud :
En la Google Cloud consola, ve a la página Google Kubernetes Engine.
En el menú de navegación, haga clic en Backup for GKE.
Haga clic en la pestaña Restaurar planes.
Haga clic en el nombre del plan de restauración.
Haga clic en la pestaña Detalles.
En la sección Restaurar configuraciones, ve a la sección Recursos con ámbito de clúster y haz clic en Editar.
En la sección Define conflict handling (Definir gestión de conflictos), selecciona una opción de gestión de conflictos.
Haz clic en Guardar cambios.
Gestión de conflictos de restauración de recursos con espacio de nombres
En el plan de restauración, puedes configurar las siguientes opciones para gestionar los conflictos de un recurso con espacio de nombres. Puede especificar la gestión de conflictos para los recursos con espacio de nombres en los siguientes niveles:
- Recurso individual
- Espacio de nombres y ProtectedApplication
Estas son las opciones disponibles para gestionar los conflictos de los recursos individuales:
- Omitir la combinación (no destructiva): si ya existe un recurso específico, se omite la restauración del recurso desde la copia de seguridad.
- Combinar y sustituir volumen (destructivo): si ya existe un recurso específico, se omite la restauración de ese recurso, pero se sustituye el volumen persistente subyacente mediante la política de restauración de datos de volumen. El volumen de sustitución de la combinación consigue la restauración solo de los datos.
- Fusión y sustitución (destructiva): si ya existe un recurso específico, se sustituirá por el de la copia de seguridad y los datos del volumen asociado siguiendo la política de restauración de datos del volumen.
Estas son las opciones disponibles para gestionar los conflictos de todos los recursos que pertenecen a un espacio de nombres y a una aplicación protegida:
- Fallo por conflicto (no destructivo): si el espacio de nombres o la ProtectedApplication de la que se va a restaurar una copia de seguridad ya existe en el clúster de destino, se produce un error en la restauración.
Restauración (destructiva): cuando el clúster de destino contiene el espacio de nombres o ProtectedApplication que se van a restaurar en el clúster, se elimina el grupo de recursos actual antes de restaurar los nuevos recursos.
gcloud
Para actualizar un plan de restauración que ya existe para gestionar conflictos de un recurso espaciado por nombre, sigue estos pasos:
gcloud beta container backup-restore restore-plans update RESTORE_PLAN \
--project=PROJECT_ID \
--location=LOCATION \
--namespaced-resource-restore-mode=NAMESPACED_RESOURCE_RESTORE_MODE
Haz los cambios siguientes:
RESTORE_PLAN
: el nombre del plan de restauración que quieras actualizar.PROJECT_ID
: el ID de tu proyecto de Google Cloud .LOCATION
: la región de cálculo del recurso, por ejemplo,us-central1
.NAMESPACED_RESOURCE_RESTORE_MODE
: define cómo gestionar los conflictos de tiempo de restauración de los recursos espaciados por nombre. Usa una de las siguientes opciones:merge-skip-on-conflict
: omite los recursos concretos que estén en conflicto.merge-replace-volume-on-conflict
: omite los recursos en conflicto, pero sustituye los datos del volumen persistente subyacente.merge-replace-on-conflict
: sustituye los recursos en conflicto y los datos del volumen persistente subyacente.fail-on-conflict
: para que falle si hay un espacio de nombres en conflicto o ProtectedApplication.delete-and-restore
: revierte el espacio de nombres en conflicto o ProtectedApplication.
Consola
Sigue estas instrucciones para actualizar la política de conflictos de recursos con espacio de nombres en la Google Cloud consola:
En la Google Cloud consola, ve a la página Google Kubernetes Engine.
En el menú de navegación, haga clic en Backup for GKE.
Haga clic en la pestaña Restaurar planes.
Haga clic en el nombre del plan de restauración.
Haga clic en la pestaña Detalles.
En la sección Restaurar configuraciones, ve a la sección Recursos con espacio de nombres y haz clic en Editar.
En la sección Define conflict handling (Definir gestión de conflictos), selecciona una opción de gestión de conflictos.
Haz clic en Guardar cambios.
Gestión de conflictos recomendada para situaciones habituales
En la siguiente tabla se indican las estrategias de gestión de conflictos recomendadas para algunos casos habituales:
Scenarios | Usar la gestión de conflictos recomendada para un recurso con espacio de nombres | Usar la gestión de conflictos recomendada para un recurso con ámbito de clúster |
---|---|---|
Restaurar en un clúster nuevo | Fallo en caso de conflicto | Mantener los recursos en el clúster de destino |
Restaurar todo el espacio de nombres o ProtectedApplication | Eliminar y restaurar | No aplicable |
Restaurar un clúster gestionado por GitOps sin volúmenes | Combinar salto | Mantener los recursos en el clúster de destino |
Restauración solo de datos de un clúster gestionado por GitOps | Combinar y reemplazar el volumen | Mantener los recursos en el clúster de destino |
Restaurar los datos de volúmenes y cargas de trabajo seleccionados | Combinar y reemplazar | Sustituir recursos en el clúster de destino |