Não há uma solução simples para isso - provavelmente será um longo e chato caminho para que tudo seja movido. Eu começaria com algumas coisas, mas o livro que eu recomendei nos comentários provavelmente entra em alguns detalhes. Eu vejo quatro etapas principais aqui - inventário, reimplantação, teste e aceitação.
- O que estou hospedando agora
Se ainda não o fez, faça um inventário completo do que você tem e do que está usando agora. Identifique quais são os recursos críticos e o que está apenas ali. Esta questão sobre SF pode ser um bom começo, embora, naturalmente, você precise ajustá-lo para um ambiente debianisque - talvez assim . Este é o estágio mais crítico .
Os servidores 'Web' não são todos iguais - verifique se você está executando algum processo que executa seu próprio servidor web (como o django) ou se é um servidor web independente como o apache.
- reavalie a configuração atual das práticas recomendadas
Você está usando versões EOLed do seu sistema operacional e de outros softwares? Você pode migrar? Quais problemas você enfrentaria? Há algum risco de segurança conhecido? Posso padronizar tudo para uma única versão de todo o meu software? Posso automatizar meus processos de implantação e até que ponto (veja o fantoche e o chef).
- crie um conjunto de testes para cada servidor
Faça uma lista do que precisa funcionar e como você vai testá-la
- decida para o que você está mudando para
Dessa forma, você pode escolher o melhor processo P2V ou V2V para suas necessidades.
- decidir o que consolidar
Você pode optar por executar vários conjuntos de serviços que eram separados antes em um servidor. Você também pode optar por executar VMs. Ambos executam VMs muito específicas de tarefas (você pode reiniciar uma sem afetar outras coisas) e agrupar tarefas semelhantes (para que você tenha menos sistemas lógicos para manter) tenha vantagens
- configurar um ambiente de teste isolado
Dessa forma, você pode configurar e testar uma movimentação do sistema sem atrapalhar a produção. Você provavelmente será capaz de fazer isso em um único servidor executando VMs.
- tem uma área de teste para sistemas testados
Mova as VMs para a área de teste e teste-as uma última vez
- Faça uso das janelas de manutenção para o corte nos novos sistemas.
Defina um short dns ttl para os sistemas que foram migrados com êxito e altere o nome do domínio e outras configurações relevantes durante uma janela de manutenção. Teste novamente. Fique de olho nos erros quando o novo servidor for implantado
- Não destrua as instalações antigas do servidor até que você possa verificar se o novo funciona
Cubra-se. Se algo der errado, no curto prazo, você sempre poderá voltar ao servidor antigo.