Práticas recomendadas para migrar máquinas virtuais para o Compute Engine

Neste artigo, você encontrará orientações e práticas recomendadas para migrar cargas de trabalho de computação para o Google Cloud Platform (GCP). Este guia é destinado a arquitetos de computação em nuvem e de sistemas que estão familiarizados com os conceitos gerais de computação em nuvem.

Alguns dos benefícios da migração para o Compute Engine são os seguintes:

  • Custos: com descontos por uso prolongado (SUD, na sigla em inglês) em máquinas virtuais (VMs, na sigla em inglês) do Compute Engine, os custos podem ser significativamente menores em comparação aos custos de gerenciamento de hardware ou VMs em um data center tradicional. Ao migrar de uma nuvem diferente para o GCP, você aproveitará essas vantagens de preço.

  • Agilidade: a maioria dos clientes percebe uma melhora imediata na agilidade porque é possível criar máquinas virtuais quase instantaneamente, sem a necessidade de esperar que os recursos sejam adquiridos e provisionados. Também é possível ativar rapidamente novos aplicativos, testá-los e desativá-los conforme necessário.

  • Sobrecarga: normalmente, os data centers exigem muitos fornecedores diferentes, cada um com relacionamento, modelo de faturamento e contratos próprios. Migrar para a nuvem pode reduzir significativamente essa sobrecarga. Sua equipe não precisará mais lidar com excessivos esforços de gerenciamento para manter o data center em funcionamento. Em vez disso, todos os funcionários podem se concentrar nas tarefas que realmente fazem com que sua empresa prospere.

Como a maioria de todas as cargas de trabalho técnicas exigem recursos de computação (ou computação), o foco deste artigo é a migração de VMs com alguns outros serviços necessários ao funcionamento de aplicativos, como bancos de dados, sistemas de mensagens e funcionalidades de análises.

A migração não acontece em apenas um único passo gigantesco. Você verá uma descrição das etapas recomendadas nas seções a seguir.

Como calcular os custos

A primeira etapa, antes de migrar qualquer VM, é calcular o custo da migração. Isso significa avaliar o que você está executando atualmente nos data centers. Não é apenas o custo das máquinas físicas. O cálculo também inclui os custos de estrutura da rede, energia, refrigeração, equipe e leasing de data centers. O Google colabora com parceiros em tecnologia, como Cloud Physics e Stratazone, para fornecer ferramentas de descoberta e avaliação gratuitas para analisar seu cenário atual de TI.

Ao calcular esses custos, você precisa ter um modelo para a nuvem. Considere essas questões:

  • Qual tipo de sistema operacional você usará? Ele requer uma licença?
  • Quais tipos de máquinas virtuais você usará? Há uma variedade de tamanhos e custos. Você precisa ter uma ideia dos requisitos de desempenho dos seus aplicativos.
  • Além das máquinas virtuais, que outros serviços são necessários para seu aplicativo e quanto eles custam?
  • Esses aplicativos requerem software licenciado? Quanto isso custará? Ele está disponível na nuvem?

Todas essas são considerações relacionadas ao custo que precisam ser planejadas antes de migrar a primeira VM. A equipe de vendas do GCP pode ajudar você a avaliar e calcular esses custos.

Se você já usa um provedor de nuvem, esses cálculos podem ser diferentes. Por exemplo, você não precisa considerar o custo de leasing do data center. Mas os requisitos ainda são os mesmos. Antes de fazer a migração, é importante entender as diferenças entre os modelos de faturamento do provedor atual e do Google. Caso esteja migrando da Amazon Web Services (AWS), veja uma avaliação de preços das máquinas virtuais no blog do Cloud Platform (em inglês).

Como avaliar os itens a serem migrados

Depois de avaliar o custo da migração, comece a decidir o que será migrado. Nas empresas modernas, há vários tipos de aplicativos diferentes, como os usados por clientes, administrativos, de ferramentas de desenvolvimento e experimentais. Fazer a migração de todos eles ao mesmo tempo e da mesma maneira não faz sentido.

Recomendamos classificar os aplicativos em três grandes categorias:

  • Aplicativos de fácil migração: têm menos dependências, são mais recentes, foram desenvolvidos internamente, ou seja, não têm licenças a serem consideradas, e são mais tolerantes em relação ao dimensionamento e a outros padrões de nuvem.
  • Aplicativos de difícil migração: têm mais dependências, são menos tolerantes em relação ao dimensionamento ou têm requisitos complexos de licenciamento.
  • Aplicativos que não podem ser migrados: alguns aplicativos que talvez não sejam bons candidatos à migração porque são executados em hardware especializado ou mais antigo, têm requisitos regulatórios ou de negócios específicos que exigem que eles sejam mantidos no seu próprio data center ou têm requisitos complexos de licenciamento que não permitem migrá-los para a nuvem.

Esses são apenas alguns exemplos de cada uma dessas três categorias, mas é provável que os aplicativos apresentem mais fatores determinantes para essa decisão. A equipe de vendas do GCP pode ajudar você.

Essas considerações se aplicam à migração tanto a partir de um data center quanto de outro provedor de nuvem.

Quando concluir esse trabalho, selecione os primeiros aplicativos a serem migrados. É altamente recomendável que você migre poucos aplicativos no início. Os primeiros servirão não somente como um modelo para as futuras migrações, mas também ajudarão você a definir os processos.

Como planejar a migração

Ao decidir quais aplicativos migrar, antes de realizar qualquer migração, é necessário definir como será o ambiente da nuvem. O primeiro passo é comparar seu ambiente atual ao GCP. Veja na tabela a seguir uma breve visão geral dessa comparação:

Tipo de serviço Data center GCP
Computação Hardware físico, hardware virtualizado (VMWare ESXi, Hyper-V, KVM, XEN) Compute Engine
Armazenamento SAN, NAS, DAS Persistent Disk, Cloud Storage
Rede MPLS, VPN, balanceamento de carga de hardware, DNS Cloud VPN, CDN Interconnect, Cloud Load Balancing, Google Domains, Cloud DNS
Segurança Firewalls, NACLs, tabelas de roteamento, criptografia, IDS, SSL SSL, IDS, criptografia, firewalls do Compute Engine
Identidade Active Directory, LDAP IAM, GCDS, LDAP
Gerenciamento Serviços de configuração, ferramentas de CI/CD Cloud Deployment Manager, serviços de configuração, ferramentas de integração/entrega contínuas (CI/CD, na sigla em inglês)

Caso esteja migrando da AWS, use o guia de comparação para avaliar as diferenças entre os serviços da AWS e do GCP.

Após comparar os diversos serviços e compreender o que seus aplicativos precisam e usam, comece a planejar como será seu ambiente no GCP.

Antes de migrar as VMs, você precisa criar o ambiente para o aplicativo. Veja as etapas recomendadas nas seções a seguir.

Como definir a governança

Estabeleça quem na sua empresa tem permissão para criar, acessar, modificar e remover os recursos da nuvem. Além disso, determine como os recursos serão pagos. Encontre as orientações na documentação de práticas recomendadas do IAM.

Neste momento, determine também quem tem contas na nuvem. Talvez não seja necessário que todos da empresa, ou mesmo todos os desenvolvedores, tenham acesso direto. Estabeleça antecipadamente as contas e a política de criação e exclusão delas.

Como criar uma rede

Antes de migrar as VMs, é necessário ter uma rede de destino. Assim como no caso das permissões e contas, é importante criar essa rede antecipadamente porque pode ser difícil estabelecer os procedimentos depois que os aplicativos estiverem em uso.

Ao projetar uma rede, saiba que ela não está sendo criada somente para um aplicativo, mas que ela servirá como o padrão a ser seguido pela empresa. Pense nas seguintes observações:

  • Haverá uma rede para cada aplicativo ou para cada ambiente?
  • Como os aplicativos acessarão os serviços compartilhados?
  • Será utilizado um modelo de rede hub e spoke ou uma malha completa de redes?
  • Como as várias redes serão conectadas?
  • Será usada uma conexão VPN entre elas ou uma rede multiprojetos?

Com essa variedade de opções e as diferenças entre as empresas, é difícil prescrever um modelo que funcione para todas as situações. Apenas recomendamos que você avalie suas necessidades e escolha uma estratégia antes de implantar os aplicativos.

A segunda metade do planejamento da rede é decidir como conectar os recursos atuais. O Google oferece várias opções diferentes de conexão, de acordo com as suas necessidades.

Na opção mais básica, você cria uma conexão VPN entre os recursos atuais e o Google. Com esse serviço, é possível criar rotas estáticas ou dinâmicas entre os dois locais.

Se você precisa de uma conexão mais rápida, entre em contato com a equipe do CDN Interconnect. Ela ajudará você a criar uma linha direta com o Google.

Por fim, você também tem a opção de criar um link direto com o Google em um de nossos vários locais de peering direto.

Como planejar as operações

Quando você tem aplicativos em execução na nuvem, é preciso monitorá-los, reter os registros e gerenciá-los operacionalmente, como em qualquer sistema. Pense nessas operações como parte do seu planejamento.

Há várias ferramentas de configuração de terceiros disponíveis. Programas de software como Chef, Puppet e outros podem ajudá-lo. Se você já usa essas ferramentas, continue com elas no ambiente do GCP. Se esse não for o caso, é altamente recomendável avaliá-las para determinar qual delas funcionará melhor para você, de acordo com a maneira como seus desenvolvedores e engenheiros operacionais trabalham. Essas ferramentas complementam e funcionam juntas com o Cloud Deployment Manager, que recomendamos incorporar ao seu gerenciamento de implantação e operacional.

Você precisa tomar uma decisão semelhante com relação ao monitoramento e à geração de registros. Há várias ferramentas de terceiros que funcionam bem no GCP. Se você já usa uma ou mais delas, não as abandone. Caso contrário, será necessário analisar uma variedade de ferramentas, incluindo o Stackdriver, que integra monitoramento, geração de registros e sistema de alertas em um único serviço.

Iniciar a migração

Finalmente, migre seu primeiro aplicativo. A primeira migração servirá de modelo para as futuras migrações. Esse processo com certeza será refinado à medida que você fizer outras, mas é importante registrar tudo o que é feito especificamente nessa primeira vez.

Na seção a seguir, serão descritas as arquiteturas em alto nível e as etapas necessárias para fazer a migração em cada situação.

Arquiteturas de migração

Em termos gerais, há três tipos de arquiteturas de migração que podem ser seguidas para cada aplicativo.

A primeira é refazer completamente o projeto de um aplicativo para a nuvem. Ainda que essa opção seja viável, ela está fora do escopo deste artigo, já que, basicamente, é o mesmo que criar um aplicativo novo na nuvem.

Nas seções a seguir, você verá descrições a segunda e a terceira abordagens.

Migração lift-and-shift

Essa abordagem geralmente é a maneira mais fácil de começar porque requer menos alterações nos aplicativos. Nesse cenário, é necessário encerrar o aplicativo atual e copiar os dados e as máquinas virtuais para a nuvem.

Como mover os dados

A primeira etapa da migração lift-and-shift é transferir os dados necessários para executar o aplicativo. Geralmente, eles residem no banco de dados, mas também incluem recursos estáticos que podem ser migrados de uma SAN para o armazenamento de objetos do Cloud Storage. Além disso, é necessário migrar para o Cloud Storage os dados usados localmente pelo aplicativo, para que o download deles seja feito nos discos permanentes do Compute Engine quando as máquinas virtuais forem inicializadas.

Como mover as VMs

A próxima etapa é mover as VMs. Há várias maneiras de fazer isso. A opção recomendada é usar a ferramenta de migração para a nuvem do Google, o Velostrata. Com o Velostrata, suas VMs serão inicializadas no GCP em poucos minutos (em média). Primeiro, o Velostrata transfere um pequeno conjunto de inicialização para o GCP, depois, inicia o aplicativo e, por fim, transfere e sincroniza os dados em segundo plano de maneira transparente.

Como testar o aplicativo

Depois de colocar os dados e as VMs em funcionamento no GCP, execute o aplicativo em modo de teste para garantir que ele tenha o comportamento esperado. Nesse teste, as métricas de desempenho precisam ser atendidas e o aplicativo verificado em relação à implantação, ao monitoramento e à geração de registros. O Velostrata tem testes integrados e recomendações de redimensionamento, que ajudam você a validar o desempenho na nuvem, os SLAs e os custos.

Como mover para a produção

A duração desta etapa depende da natureza do aplicativo. Para alterar o local de execução do aplicativo de produção, quase sempre é necessário aguardar um período em que o aplicativo permanecerá off-line. No entanto, com o Velostrata, esse período pode ser adiantado e reduzido, podendo levar apenas cinco minutos. O escopo do conjunto de práticas recomendadas neste artigo não inclui como mover para a produção sem que o aplicativo fique off-line para os usuários.

Dois fatores determinam quanto tempo a migração levará:

  • Quanto tempo faz desde a importação dos dados originais?
  • Quanto tempo levará para que o DNS atualize as entradas do front-end do aplicativo?

Geralmente, é muito mais fácil saber a resposta da primeira pergunta. Se for necessário que a janela de tempo para migrar para a produção seja pequena, faça a migração assim que possível depois de importar dos dados.

Depois de determinar uma janela aceitável, siga estas etapas:

  1. Informe os usuários sobre a janela de manutenção.
  2. Encerre o aplicativo no local atual.
  3. Importe os dados ausentes para os locais apropriados no GCP.
  4. Troque as entradas de DNS e ative o aplicativo na nuvem.

Se tudo correr bem, o aplicativo será migrado completamente e os usuários estarão liberados para usá-lo novamente. Quando você usa o Velostrata, o software realiza a transferência de dados para a nuvem, os sincroniza entre a fonte e o destino durante a migração e atualiza as entradas de DNS automaticamente. Isso ajuda a reduzir significativamente o trabalho e os riscos durante a migração.

Migração híbrida

A terceira abordagem de arquitetura é a migração híbrida. Nesse caso, somente parte do aplicativo é migrado para a nuvem, geralmente o front-end e, possivelmente, a lógica do aplicativo. Os serviços associados e os de back-end permanecem com o restante dos outros recursos atuais. Essa abordagem é uma variação da migração lift-and-shift. Ela é útil para os casos em que é possível migrar o aplicativo para a nuvem, mas não alguns serviços de back-end. Esse tipo de migração requer menos etapas do que a lift-and-shift. Por exemplo, nessa arquitetura, o armazenamento de dados não é migrado para a nuvem.

Como determinar a conexão de rede

O primeiro passo é criar uma conexão rápida o suficiente entre os recursos atuais e o GCP. A aparência dessa conexão depende inteiramente do perfil do aplicativo. Em alguns casos, uma VPN talvez atenda às necessidades. Em outros, será necessário estabelecer uma linha dedicada de alta velocidade.

Como migrar as VMs

O próximo passo é migrar as imagens de VM, de maneira semelhante ao cenário lift-and-shift. Novamente, nesse momento é necessário testar o aplicativo para verificar se ele tem o comportamento esperado na nuvem e está vinculado aos recursos atuais.

Como mover para a produção

Por fim, a janela de manutenção é muito menor neste caso porque não é preciso migrar os dados. Mas ainda é necessário fazer o seguinte:

  1. Informar os usuários sobre a janela de manutenção.
  2. Desativar o aplicativo atual.
  3. Trocar as entradas DNS.
  4. Ativar o aplicativo na nuvem.

Se tudo correr bem, seu aplicativo estará em execução no GCP. Neste momento, permita que os usuários o acessem novamente.

Como usar o Velostrata, a ferramenta de migração do GCP

O Velostrata é uma ferramenta de migração para a nuvem sem agente que realiza a migração de VMs para o GCP com eficiência em minutos. O Velostrata usa a tecnologia de streaming para reduzir o tempo de migração, fornece recomendações de redimensionamento antes da migração para ajudar você a escolher os tipos de instância apropriados e se integra ao VMware vCenter para fornecer um único painel para o gerenciamento de migrações de VM. O Velostrata também oferece uma interface baseada na Web para organizar e automatizar migrações de VMs em massa.

O Velostrata é gratuito para os clientes que fazem a migração para o GCP. As taxas de faturamento padrão se aplicam a todos os outros produtos do GCP usados ou consumidos durante ou após a migração. Por exemplo, se você usa as VMs do Compute Engine para implantar o Velostrata, será cobrado por instância/hora. Para mais informações sobre os produtos do GCP usados pelo Velostrata, consulte a página de preços da solução.

Para mais informações, consulte a documentação sobre como usar o Velostrata para migrar VMs para o GCP.

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…