Skip to main content

Se for necessário migrar todos os deploys de um servidor para outro, deve-se seguir o seguinte procedimento (considerando que o servidor antigo está INACESSÍVEL via SSH -- pior cenário possível). Se o servidor antigo estiver acessível, mesmo que "mais ou menos", o procedimento é outro.

PROCEDIMENTO

  • Preparar o novo servidor. Deve ser feito como se fosse um novo servidor normal (vide ACCINFRA-A-6);
  • Garantir que o servidor antigo está realmente parado/desligado;
  • Entrar no Ozone e conferir qual a versão de cada um dos deploys que está sendo migrado;
  • Conferir na tela de licenças do Ozone quais plugins estavam instalados no deploy.

Pra cada deploy a ser migrado:

  1. subir todos os deploys a serem migrados "como se fossem deploys novos" (/root/docker/deployNewAccelero.sh);

  2. iniciar os deploys (/root/docker/deploy.accelerobr.com.br/scripts/up.sh) -- provavelmente vai dar erro de HTTPS, não tem problema;

  3. fazer uma recuperação completa de backup (DB + arquivos), vide ACCINFRA-A-14;

  4. fazer checkout da versão específica em que estava o deploy (docker + app):

    git -C /root/docker/deploy.accelerobr.com.br checkout 2.16.1-HF7
    git -C /root/docker/deploy.accelerobr.com.br/app checkout 2.16.1-HF7
  5. reiniciar o deploys inteiro (/root/docker/deploy.accelerobr.com.br/scripts/restart.sh);

  6. se havia plugins instalados, acessar o Accelero e reinstalá-los.

O certificado digital (HTTPS) pode demorar até uma meia hora pra ser renovado/revalidado. Se depois de uma hora a renovação não acontecer automaticamente, tente reiniciar o container infra-nginx-le usando docker container restart infra-nginx-le.

RECOMENDAÇÕES

HTTPS

Você pode usar o site https://letsdebug.net/ pra ver se o DNS está atualizado corretamente -- o certificado digital depende disso estar OK. Faça a busca digitando o domínio que foi migrado e clicando em Show verbose information. Nas informações mostradas deve aparecer o IP do novo servidor.

CONFERÊNCIA FUNCIONAIS

Depois de ligar um deploy, faça testes funcionais (logar, fazer algumas ações aleatórias). É improvável, mas possível, que a recuperação de backup "faça bagunça" com permissões de diretórios. Na dúvida, compare as permissões com outros servidores.

ROTEADOR DO CLIENTE

Oriente o cliente que TALVEZ ele precise reiniciar o roteador (cache local de DNS). Nunca foi necessário, mas...

ESTIMATIVAS / PROBLEMAS

A dor de cabeça desse processo é imensurável. Não faça esse processo.

Mas se tiver que fazer...

Você não vai levar menos que uma hora. Conte com no mínimo duas horas e desligue o celular durante o processo. Foco 100% nesse problema, porque a chance de algo dar errado é muito grande, e o custo do erro também é imensurável.

E tenha um amiguinho do lado.

--

Considere também que como esse processo envolve a recuperação de um backup, os dados que foram gerados "entre a execução do último backup até a hora que o servidor antigo parou" serão perdidas. Se tudo der certo, o pior cenário é perder 24 horas de operação.

Exatamente por isso, evite ao máximo a execução desse processo. Tente de todas as formas possíveis acessar o servidor antigo e fazer o procedimento ACCINFRA-A-12, porque a vida de todo mundo será melhor.