Migre cargas de trabalho de um cluster Kubernetes autogerenciado para um cluster do Container Service for Kubernetes (ACK) sem interrupção de serviço.
Plano de migração
Ferramentas usadas nesta migração
Revise estas ferramentas antes de começar para confirmar a compatibilidade com seu ambiente.
|
Ferramenta |
Finalidade |
|
Data Transmission Service (DTS) |
Migrar dados MySQL com sincronização completa, incremental ou bidirecional |
|
ossimport |
Migrar dados em lote de servidores locais ou armazenamento em nuvem de terceiros para o OSS |
|
image-syncer |
Migrar imagens de contêiner para o Container Registry |
Pré-requisitos
Antes de começar, verifique se você tem:
Uma conta Alibaba Cloud com permissões para criar clusters ACK e recursos relacionados
Acesso ao cluster Kubernetes autogerenciado e às configurações das aplicações
(Opcional) Um backup dos dados e configurações do cluster Kubernetes autogerenciado
Procedimento
Etapa 1: Criar e configurar um cluster ACK
Os engenheiros de O&M devem criar e configurar o cluster ACK antes que os desenvolvedores iniciem a migração das aplicações.
Use um cluster ACK Pro. O ACK gerencia totalmente o plano de controle desse tipo de cluster. Assim, basta criar e gerenciar os nós de trabalho, e a cobrança ocorre apenas pelos recursos desses nós.
Para obter as etapas detalhadas de criação do cluster, consulte Criar um cluster gerenciado ACK.
Defina as seguintes configurações ao criar o cluster:
|
Configuração |
Descrição |
|
Operating system |
Selecione CentOS 7.6 ou Alibaba Cloud Linux 2.1903 (padrão). Para usar um kernel personalizado, consulte Usar uma imagem personalizada para criar um cluster ACK. |
|
VPC |
Selecione uma Virtual Private Cloud (VPC) e vSwitches para o cluster. |
|
SNAT |
Configure entradas SNAT para a VPC. |
|
Public access |
Exponha o servidor de API usando um Elastic IP Address (EIP). |
|
CloudMonitor agent |
Instale o agente do CloudMonitor nas instâncias do Elastic Compute Service (ECS) do cluster. |
|
Simple Log Service |
Instale e configure o agente do Simple Log Service no cluster. |
Etapa 2: Migrar dados
A migração de dados abrange três áreas: bancos de dados, armazenamento de objetos e imagens de contêiner.
Migrar bancos de dados
Crie uma instância do ApsaraDB RDS.
Configure uma lista de permissões para permitir o acesso à instância apenas por endereços IP específicos.
Configure o Alibaba Cloud DNS PrivateZone para resolver o nome de domínio do banco de dados para o endereço IP da instância do ApsaraDB RDS. Essa configuração elimina a necessidade de atualizar strings de conexão do banco de dados nas aplicações.
Migre os dados MySQL com o Data Transmission Service (DTS), que oferece suporte a sincronização completa, incremental e bidirecional. Para mais detalhes, consulte Migrar dados de um banco de dados MySQL autogerenciado para uma instância do ApsaraDB RDS for MySQL.
Migrar dados de armazenamento de objetos
Ative o Object Storage Service (OSS).
Crie um bucket do OSS.
Migre seus dados para o OSS com a ferramenta ossimport, que permite migração em lote de servidores locais e serviços de armazenamento em nuvem de terceiros, como Amazon S3, Microsoft Azure e Tencent Cloud Object Storage. Para mais detalhes, consulte Visão geral.
Migrar imagens de contêiner
Crie um repositório no Container Registry.
Defina as credenciais de acesso ao repositório.
Migre as imagens de contêiner com o image-syncer. Para mais detalhes, consulte Usar o image-syncer para migrar imagens de contêiner.
Etapa 3: Migrar configurações da aplicação
Engenheiros de O&M ou desenvolvedores migram as configurações do cluster e da aplicação para o cluster ACK.
Para mais detalhes, consulte Migrar aplicações de um cluster Kubernetes externo para clusters ACK.
Etapa 4: Executar testes de regressão
Engenheiros de teste executam testes de regressão no cluster ACK sem interromper o tráfego online.
Configure nomes de domínio para os testes de regressão.
Teste as aplicações.
Verifique os eventos da aplicação registrados nos logs.
Verifique as métricas de monitoramento da aplicação.
Etapa 5: Alternar o tráfego para o ACK
Engenheiros de O&M atualizam a configuração do Domain Name System (DNS) para redirecionar o tráfego ao cluster ACK.
Modifique a configuração de DNS para alternar o tráfego.
Atualize as configurações do cliente ou o código para apontar para o cluster ACK.
Etapa 6: Desativar o cluster Kubernetes autogerenciado
Após confirmar que o cluster ACK processa o tráfego corretamente, os engenheiros de O&M desativam o cluster autogerenciado.
Verifique se o cluster ACK recebe e envia tráfego conforme esperado.
Desative o cluster Kubernetes autogerenciado.
Exclua os arquivos de backup armazenados no bucket do OSS criado durante a migração da aplicação.