Migrando

Mover um servidor ativo sem quebrá-lo

A maioria das migrações falha no corte, não na cópia. Copiar bytes é um problema resolvido. O que segue é como o resto é feito, o que não custa nada e onde paramos.

01

A janela de migração gratuita

Uma migração por instância nos primeiros 14 dias. Depois disso, é tempo de engenheiro cobrado, com orçamento antes de qualquer início.

Toda conta nova recebe ajuda de migração sem custo por 14 dias a partir da primeira fatura paga. Isso cobre quantas instâncias você pediu, até 2 horas de tempo de engenheiro cada, o que na prática é muito mais do que quase todo mundo usa.

A janela existe porque a alternativa é você perder um fim de semana com isso e concluir que mudar de provedor não vale a pena. Fazer direito custa menos do que perder a conta no segundo mês.

Frotas maiores têm um plano, não um cronômetro. Diga quantas instâncias, o que elas rodam e onde estão agora, e uma sequência escrita volta com um ponto de reversão em cada etapa.

O reembolso de 7 dias corre em paralelo. Migre no dia um, decida no dia seis que a latência não era o que você precisava, e a moeda volta no ativo com que você pagou.

02

O que faremos e o que não faremos

O acesso funciona em uma única direção. Você adiciona uma chave que geramos para o trabalho na máquina de origem, nós a usamos, e você a remove quando a migração é concluída. A chave é exclusiva de cada migração e nunca sai da estação de trabalho do operador. Caso seu provedor atual não permita isso, a alternativa é uma cópia em nível de bloco enviada do seu lado para um destino em espera.

Nós não precisamos da senha do seu painel de controle no provedor antigo e recusaremos se for oferecida. Ninguém aqui quer a capacidade de agir como você em outro lugar, e um engenheiro segurando uma credencial de cliente é um risco sem nenhuma vantagem.

Faremos

Copiar sistemas de arquivos ou dispositivos de bloco inteiros, preparar a instância de destino, ajustar o kernel e os discos receptores, executar as sincronizações delta, acompanhar o corte com você e permanecer no ticket até o DNS estabilizar.

Não faremos

Depurar seu aplicativo, reescrever sua configuração para uma distribuição mais nova, mover uma licença vinculada ao hardware de outra pessoa ou aceitar uma senha. O acesso ocorre por uma chave temporária que você revoga depois.

Preferimos não fazer

Mover um banco copiando os arquivos enquanto ele está em execução. Isso funciona até não funcionar, e a falha aparece semanas depois como corrupção silenciosa. Use uma réplica e uma promoção.

03

Nível de arquivo ou nível de bloco

Duas maneiras de mover os bytes. A certa depende principalmente de você querer o mesmo sistema operacional esperando por você do outro lado.

ConsideraçãoNível de arquivo, rsyncNível de bloco, dd via SSH
O que é movidoArquivos, permissões, atributos estendidosO dispositivo inteiro, byte a byte
IndisponibilidadeMinutos, uma sincronização delta finalHoras, ou uma janela agendada
O que você iniciaUma imagem atual que você escolheuExatamente o que você tinha, incluindo a sujeira
Mudar de distribuiçãoTranquilo, é esse o objetivoNão é possível
Risco de bootloaderNenhum, o destino já iniciaReal, e o console é como você resolve
Discos esparsos grandesBem tratadosCopia espaço vazio, a menos que você planeje
Quando escolherQuase sempreMáquinas legadas que ninguém ousa reconstruir

Existe uma terceira opção e muitas vezes é a mais rápida: não migrar. Levante o serviço do zero a partir do seu gerenciamento de configuração, restaure um dump do banco de dados, e jogue a máquina antiga fora. Quando sua infraestrutura é reproduzível, isso é um trabalho de duas horas sem etapa de cópia.

04

A sequência

Sete passos, nesta ordem. Pular o quinto é como as pessoas acabam servindo de duas máquinas ao mesmo tempo e só percebem na segunda-feira.

  1. 01

    Peça o destino e deixe-o estabilizar

    Do mesmo tamanho ou maior, na cidade que você realmente quer. Rode seu monitoramento contra ele enquanto vazio por um dia e confirme que a latência e os números de disco batem com o que a página do plano afirmava.

  2. 02

    Abaixe o TTL primeiro

    Baixe o registro para 300 segundos pelo menos 48 horas antes da migração, para que o valor antigo tenha expirado em todos os lugares na hora em que você precisar mudar. Esse passo não vale nada se acontecer tarde.

  3. 03

    Faça a cópia fria

    O grosso dos dados, movido enquanto tudo ainda está no ar na máquina antiga. Leva o tempo que levar e nada está esperando por ele.

  4. 04

    Suba os serviços no destino

    Mesmas versões, mesma configuração, ainda sem receber tráfego. Bancos de dados restauram aqui, de um dump em vez de uma cópia de arquivo.

  5. 05

    Teste o destino pelo endereço

    Substitua o hostname localmente com uma entrada de hosts e use o site direito por uma hora. Faça login, escreva algo, envie um upload, envie um e-mail se ele enviar e-mail.

  6. 06

    Congele, delta final, troque

    Pare escritas na origem, rode a última sincronização, verifique um checksum em algo que importa, então mude o registro. O período de congelamento normalmente fica abaixo de cinco minutos.

  7. 07

    Mantenha a origem por uma semana

    Ligado, sem servir nada, ainda pago. É o seguro mais barato que você vai comprar, e a única coisa que você esqueceu de copiar sempre aparece no quarto dia.

05

DNS e testes antes de se comprometer

Uma mudança é uma alteração de DNS, e uma alteração de DNS nunca é instantânea, não importa o que diz o TTL. Alguns resolvedores arredondam, algumas redes corporativas armazenam em cache por um dia, e um pequeno número de clientes fixa um endereço pela vida de um processo. Planeje servir de ambas as máquinas por 24 horas.

Executar ambas é mais fácil do que parece quando o aplicativo é stateless. Quando não é, faça a máquina antiga ser somente leitura no momento da troca, em vez de desligá-la, para que um cliente desatualizado receba uma falha óbvia em vez de escrever em um banco de dados que ninguém jamais lerá novamente.

01

Antes de tocar no DNS

Uma entrada de hosts apontando para o novo endereço é o único teste honesto que existe. Certificados, redirecionamentos, URLs absolutas e endereços codificados quebram aqui, na sua frente, em vez de na frente dos seus usuários.

02

Certificados primeiro

Emita no destino antes da mudança usando um desafio DNS, para que algo válido já esteja em vigor quando a primeira requisição chegar. Um desafio HTTP não pode funcionar até que o tráfego já tenha se movido, o que é tarde demais.

03

E-mail é a exceção

Reputação não viaja com os dados. Um novo endereço envia a partir de histórico zero, então aqueça-o por quinze dias, mantenha SPF, DKIM e DMARC válidos em ambas as máquinas durante a sobreposição, e espere que a primeira semana seja lenta.

04

Rollback é um TTL, não uma reconstrução

Enquanto a origem está viva e o TTL ainda está baixo, desfazer a troca leva uma mudança de registro. Essa é exatamente a razão pela qual os passos dois e sete não são opcionais.

06

Perguntas sobre migração

Sim, orçado por escrito antes de qualquer coisa começar, e geralmente um valor modesto. Nada começa até você concordar com o número.

Sim, em nível de bloco, para uma imagem licenciada por €22 por mês. A reativação acontece no novo hardware e ocasionalmente precisa de uma reinicialização para se estabilizar.

Então não podemos ajudar diretamente, e você também não pode. Exporte o que o painel puder fornecer, reconstrua em uma imagem limpa e trate todo o episódio como uma lição sobre painéis que possuem a máquina.

Normalmente menos de duas horas em uma porta de 10 Gbit/s, muitas vezes bem menos. A restrição é quase sempre o upload do provedor antigo, não o nosso download.

Sim, e é mais fácil porque ambas as extremidades são nossas. Snapshot, restaure na nova cidade, teste, mude. Mover uma instância entre nossas próprias localizações não tem cobrança.

Você muda o registro de volta, porque a origem ainda está rodando e o TTL ainda é de 300 segundos. Isso é o plano, e não uma contingência, e é por isso que o último passo existe.

Pronto quando você estiver

Conte-nos o que você está movendo

Número de instâncias, velocidade da porta do provedor antigo, dados totais e se algo é um banco de dados. Um plano escrito volta no mesmo dia útil, e se a resposta honesta for reconstruir em vez de copiar, é isso que dirá.