Utilize o backup center para fazer backup e restaurar aplicações entre clusters ACK na mesma região, viabilizando o backup e a recuperação de desastres no nível do cluster.
Limitações
O não cumprimento das condições abaixo resulta em falha na migração:
Versão do Kubernetes: O cluster de restauração deve executar o Kubernetes 1.18 ou posterior para utilizar snapshots do Elastic Compute Service (ECS) na restauração de discos.
Plugin de armazenamento: O cluster de restauração precisa usar o plugin Container Storage Interface (CSI). Clusters que utilizam FlexVolume ou csi-compatible-controller com FlexVolume não são suportados.
-
Componentes do sistema: Instale e configure os seguintes componentes no cluster de restauração antes de iniciar o processo:
aliyun-acr-credential-helper: Conceda as permissões necessárias e configure oacr-configuration.alb-ingress-controller: Configure um resource ALBConfig.
Entre regiões: Este procedimento suporta apenas migração na mesma região. Para migrações entre regiões diferentes, consulte Migrar aplicações entre clusters em regiões diferentes.
Compatibilidade de plugins de volume: Para clusters que usam plugins de volume distintos ou executam versões mais antigas do Kubernetes, consulte Usar o backup center para migrar aplicações em um cluster ACK com versão antiga do Kubernetes.
Pré-requisitos
Antes de começar:
Dois clusters gerenciados ACK na mesma região: um cluster de backup e um cluster de restauração
migrate-controller instalado com as permissões necessárias em ambos os clusters
Um backup vault criado. Vaults existentes são detectados automaticamente durante a instalação.
Como funciona
Um backup vault compartilhado atua como intermediário entre os clusters. Ao criar uma tarefa de backup, o backup center envia o estado da aplicação e os dados de volume para o vault e, em seguida, sincroniza o registro de backup com o cluster de restauração.
Durante a restauração, as versões da API de resources do Kubernetes são atualizadas automaticamente para corresponder ao cluster de destino. Por exemplo, um Deployment que usa extensions/v1beta1 no Kubernetes 1.16 passa a ser apps/v1 no Kubernetes 1.28.
Migrar uma aplicação WordPress entre clusters ACK
Este exemplo utiliza dois clusters gerenciados ACK na região China (Hohhot): Cluster_A (backup) e Cluster_B (restauração). O WordPress usa volumes de disco para texto e volumes de sistema de arquivos NAS para imagens.
Etapa 1: Configurar os clusters
Crie os clusters gerenciados ACK Cluster_A e Cluster_B na mesma região. Atualize o Cluster_B para o Kubernetes 1.18 ou posterior para permitir a restauração de discos baseada em snapshots do ECS.
Instale o WordPress no Cluster_A usando o Helm. Consulte Implantar uma aplicação WordPress usando o Helm.
Publique uma postagem no blog com imagens no WordPress. Essa ação preenche tanto o volume de disco (texto) quanto o volume NAS (imagens), permitindo a verificação pós-migração.
Etapa 2: Instalar o migrate-controller e criar um backup vault no Cluster_A
Instale o migrate-controller no Cluster_A, conceda as permissões necessárias e crie um backup vault. Consulte Instalar o migrate-controller e conceder permissões.
Se já existir um backup vault, o sistema o detectará automaticamente.
Etapa 3: Fazer backup da aplicação no Cluster_A
Crie uma tarefa de backup chamada 123backup-1 no Cluster_A para realizar o backup do namespace default. Consulte Criar um plano de backup ou fazer backup instantâneo.
Aguarde até que o status da tarefa de backup mude para Completed. Após a sincronização do vault, o registro de backup aparecerá na aba Backups and Snapshots da página Application Backup no Cluster_B.
Etapa 4: Restaurar a aplicação no Cluster_B
Na página Application Backup do Cluster_B, clique em Restore Now e selecione o backup vault compartilhado.
Se for solicitado inicializar o vault, clique em Initialize Backup Vault para associá-lo ao Cluster_B.
Após a inicialização, selecione o arquivo de backup 123backup-1 e inicie a tarefa de restauração. Consulte Restaurar aplicações e volumes.
Etapa 5: Verificar a migração
Verifique a integridade das cargas de trabalho:
No painel de navegação à esquerda da página de detalhes do Cluster_B, escolha Workloads > Deployments.
Localize o Deployment do WordPress e clique em Details na coluna Actions.
Confirme se o status do Deployment é Running.
Valide a acessibilidade e a integridade dos dados:
No painel de navegação à esquerda, escolha Network > Services.
-
Na página Services, localize o Service do WordPress e clique no link External Endpoint.

Verifique se a página inicial do WordPress e a postagem do blog com imagens aparecem intactas.
Próximas etapas
Para gerenciar backups e restaurações via linha de comando, consulte Usar kubectl para fazer backup e restaurar aplicações.
Para migrar aplicações entre regiões, consulte Migrar aplicações entre clusters em regiões diferentes.
Para clusters que utilizam plugins de volume ou versões do Kubernetes diferentes, consulte Usar o backup center para migrar aplicações em um cluster ACK com versão antiga do Kubernetes.