Utilice el centro de copias de seguridad para realizar copias de seguridad y restaurar aplicaciones entre clústeres de ACK en la misma región. Esto permite implementar estrategias de copia de seguridad y recuperación ante desastres a nivel de clúster.
Limitaciones
Si no se cumplen las siguientes condiciones, la migración fallará:
Versión de Kubernetes: El clúster de restauración debe ejecutar Kubernetes 1.18 o posterior para utilizar instantáneas de Elastic Compute Service (ECS) en la restauración de discos.
Plugin de almacenamiento: El clúster de restauración debe usar el plugin Container Storage Interface (CSI). No se admiten clústeres que utilicen FlexVolume ni csi-compatible-controller con FlexVolume.
-
Componentes del sistema: Instale y configure los siguientes componentes en el clúster de restauración antes de proceder:
aliyun-acr-credential-helper: Otorgue los permisos obligatorios y configureacr-configuration.alb-ingress-controller: Configure un recurso ALBConfig.
Entre regiones: Este procedimiento solo admite migraciones dentro de la misma región. Para migraciones entre regiones, consulte Migrate applications across clusters in different regions.
Compatibilidad de plugins de volúmenes: Para clústeres que usan diferentes plugins de volúmenes o ejecutan versiones anteriores de Kubernetes, consulte Usar el centro de copias de seguridad para migrar aplicaciones en un clúster de ACK que ejecuta una versión antigua de Kubernetes.
Requisitos previos
Antes de empezar:
Dos clústeres administrados de ACK en la misma región: un clúster de copia de seguridad y un clúster de restauración.
migrate-controller instalado con los permisos obligatorios en ambos clústeres.
Un backup vault creado. Los almacenes existentes se detectan automáticamente durante la instalación.
Funcionamiento
Un almacén de copias de seguridad compartido actúa como intermediario entre los clústeres. Al crear una tarea de copia de seguridad, el centro de copias de seguridad carga el estado de la aplicación y los datos de los volúmenes en el almacén, y luego sincroniza el registro de la copia de seguridad con el clúster de restauración.
Durante la restauración, las versiones de la API de recursos de Kubernetes se actualizan automáticamente para coincidir con las del clúster de restauración. Por ejemplo, un Deployment que usa extensions/v1beta1 en Kubernetes 1.16 pasa a ser apps/v1 en Kubernetes 1.28.
Migrar una aplicación WordPress entre clústeres de ACK
Este ejemplo utiliza dos clústeres administrados de ACK en la región China (Hohhot): Cluster_A (copia de seguridad) y Cluster_B (restauración). WordPress usa volúmenes de disco para el texto y volúmenes del sistema de archivos NAS para las imágenes.
Paso 1: Configurar los clústeres
Cree los clústeres administrados de ACK Cluster_A y Cluster_B en la misma región. Actualice Cluster_B a Kubernetes 1.18 o posterior para habilitar la restauración de discos mediante instantáneas de ECS.
Instale WordPress en Cluster_A con Helm. Consulte Deploy a WordPress application by using Helm.
Publique una entrada de blog con imágenes en WordPress. Esto llena tanto el volumen de disco (texto) como el volumen NAS (imágenes) para la verificación posterior a la migración.
Paso 2: Instalar migrate-controller y crear un almacén de copias de seguridad en Cluster_A
Instale migrate-controller en Cluster_A, otorgue los permisos obligatorios y cree un almacén de copias de seguridad. Consulte Install migrate-controller and grant permissions.
Si ya existe un almacén de copias de seguridad, el sistema lo detecta automáticamente.
Paso 3: Realizar la copia de seguridad de la aplicación en Cluster_A
Cree una tarea de copia de seguridad llamada 123backup-1 en Cluster_A para respaldar el namespace default. Consulte Create a backup plan or back up instantly.
Espere a que el estado de la tarea cambie a Completed. Posteriormente, el registro de la copia de seguridad aparecerá en la pestaña Backups and Snapshots de la página Application Backup en Cluster_B tras la sincronización del almacén.
Paso 4: Restaurar la aplicación en Cluster_B
En la página Application Backup de Cluster_B, haga clic en Restore Now y seleccione el almacén de copias de seguridad compartido.
Si se le solicita inicializar el almacén, haga clic en Initialize Backup Vault para vincularlo con Cluster_B.
Después de la inicialización, seleccione el archivo de copia de seguridad 123backup-1 e inicie la tarea de restauración. Consulte Restore applications and volumes.
Paso 5: Verificar la migración
Comprobar el estado de las cargas de trabajo:
En el panel de navegación izquierdo de la página de detalles de Cluster_B, vaya a Workloads > Deployments.
Localice el Deployment de WordPress y haga clic en Details en la columna Actions.
Confirme que el estado del Deployment sea Running.
Verificar la accesibilidad y la integridad de los datos:
En el panel de navegación izquierdo, vaya a Network > Services.
-
En la página de Services, localice el Service de WordPress y haga clic en el enlace External Endpoint.

Compruebe que la página principal de WordPress y la entrada del blog con imágenes se muestren intactas.
Siguientes pasos
Para gestionar copias de seguridad y restauraciones desde la línea de comandos, consulte Use kubectl to back up and restore applications.
Para migrar aplicaciones entre regiones, consulte Migrar aplicaciones entre clústeres en diferentes regiones.
Para clústeres que usan diferentes plugins de volúmenes o versiones de Kubernetes, consulte Usar el centro de copias de seguridad para migrar aplicaciones en un clúster de ACK que ejecuta una versión antigua de Kubernetes.