Para fazer rehosting de um aplicativo, migre-o entre ambientes, normalmente de no local para a nuvem ou, em alguns casos, de volta para o local para cargas de trabalho especializadas, sem alterar sua arquitetura principal ou código.
Após ler este artigo, você será capaz de:
Conteúdo relacionado
Como fazer replataforma de aplicativos
Como refatorar aplicativos
Modernização de aplicativos
O que é migração para a nuvem?
Transformação digital
Assine o theNET, uma recapitulação mensal feita pela Cloudflare dos insights mais populares da internet.
Copiar o link do artigo
Rehosting de aplicativos, também conhecido como "lift and shift", é o processo de transferir um aplicativo de um ambiente no local para a nuvem com pouca ou nenhuma modificação em sua arquitetura subjacente. Essa abordagem permite que as organizações migrem cargas de trabalho rapidamente sem precisar fazer reengenharia ou modificar profundamente seus aplicativos.
Ao transferir aplicativos para plataformas em nuvem, as empresas podem diminuir sua dependência de hardware físico, reduzir custos operacionais e melhorar a escalabilidade e a resiliência.
Existem vários fatores importantes por trás da migração para ambientes em nuvem:
Embora a maioria das organizações migre para a nuvem para desbloquear esses benefícios, uma minoria significativa, normalmente grandes empresas com cargas de trabalho especializadas, está fazendo rehosting de determinados aplicativos de volta em ambientes no local para atender a considerações exclusivas de desempenho, conformidade ou custo.
Modernização de aplicativos refere-se ao processo de atualização e migração de aplicativos de software existentes, e sua infraestrutura subjacente, para atender melhor às necessidades de segurança, desempenho e escalabilidade de uma organização. Uma abordagem comum nesse esforço mais amplo é o rehosting.
Embora o rehosting não envolva alterações significativas no aplicativo em si, ele desbloqueia os benefícios da nuvem e apoia esforços adicionais de modernização, como conteinerização, adoção de microsserviços ou rearquitetura.
Em alguns casos, o rehosting é a etapa final para aplicativos legados que não exigem upgrades significativos. Em outros, serve como uma fase de transição antes de uma transformação mais profunda.
Existem várias maneiras diferentes de abordar a modernização de aplicativos, incluindo:
Cada abordagem apresenta compensações em termos de tempo, custo e complexidade. O rehosting oferece velocidade e simplicidade, tornando-o uma escolha prática para organizações que buscam reduzir riscos e, ao mesmo tempo, acelerar a adoção da nuvem.
O rehosting é mais do que apenas mover o código do aplicativo de um servidor em um data center para uma máquina virtual na nuvem. É um processo estruturado que inclui planejamento, automação, testes e escala, não apenas de recursos de computação, mas de toda a infraestrutura de aplicativos.
Antes de fazer rehosting de um aplicativo na infraestrutura de nuvem, separe um tempo para entender o que precisa ser movido e como isso interage com outros sistemas.
Durante a fase de descoberta, mapeie os principais componentes e dependências de aplicativos, como um binário de aplicativo monolítico (uma única unidade implantável contendo toda a lógica, como um JAR, WAR ou EXE), uma camada de apresentação renderizada pelo servidor (por exemplo, JSP, ASP.NET), lógica de negócios incorporada diretamente no aplicativo e um banco de dados relacional, geralmente um único RDBMS, como Oracle, SQL Server ou MySQL.
Considere também dependências comuns, incluindo servidores de aplicativos (como Tomcat, WebLogic ou IIS), APIs externas, sistemas de autenticação, regras de rede, IPs ou endpoints codificados e quaisquer outros serviços conectados. Esta lista não é completa, mas abrange muitos dos elementos típicos encontrados nas arquiteturas de aplicativos tradicionais.
Essa etapa ajuda a evitar surpresas durante a migração e garante que todas as partes móveis sejam levadas em consideração.
Após o mapeamento das principais dependências, avalie o que o aplicativo precisa em seu novo ambiente:
Esse também é o momento de avaliar a pilha de suporte: DNS, CDN, proteção contra DDoS e observabilidade. O rehosting também é uma oportunidade de modernizar essas camadas.
Os provedores de nuvem desempenham um papel importante no sucesso de longo prazo dos esforços de migração. Embora o preço da computação seja muitas vezes o primeiro ponto de comparação, analise mais detalhadamente.
Ao avaliar parceiros de nuvem ou de modernização, é importante procurar um provedor que ofereça um conjunto abrangente de recursos para apoiar o desempenho, a segurança e a eficiência operacional. Isso inclui serviços de back-end escaláveis que podem crescer com a demanda sem introduzir picos de custos imprevisíveis, bem como recursos de segurança integrados em nível de rede, como firewalls de aplicativos web (WAF), proteção contra DDoS e controles de acesso granulares.
Uma rede de distribuição de conteúdo (CDN) global também é essencial para garantir a entrega rápida e consistente de ativos estáticos e dinâmicos para usuários em todo o mundo. Os provedores devem oferecer serviços de DNS integrados que não sejam apenas rápidos e confiáveis, mas também programáveis para apoiar a automação e a resiliência.
Por fim, as ferramentas nativas de observabilidade, ou a integração perfeita com as pilhas de registros e monitoramento existentes, são essenciais para manter a visibilidade e o controle à medida que os aplicativos escalam e evoluem.
O sucesso da migração ocorre quando um aplicativo é executado corretamente, com segurança e eficiência. Após o rehosting, é importante comparar os principais indicadores de desempenho, como latência e taxa de transferência, em relação à linha de base no local para garantir que o aplicativo atenda às expectativas do usuário. A execução de testes de carga pode ajudar a simular a demanda do mundo real e descobrir problemas que podem não aparecer em condições normais. Analisar logs e alertas também é fundamental para identificar anomalias ou configurações incorretas que podem afetar a confiabilidade ou a segurança.
Além do desempenho dos aplicativos, as equipes também devem validar os componentes de infraestrutura de suporte, incluindo resolução de DNS, comportamento da CDN, configurações de TLS e regras de firewall, para confirmar que estão funcionando conforme o esperado no novo ambiente.
Como parte do cutover da migração, a direção do tráfego desempenha um papel fundamental para garantir uma transição tranquila, sem tempo de inatividade voltado para o cliente. Técnicas como mudança de tráfego baseado em DNS, balanceamento de carga ponderado e implantações canárias podem ajudar a migrar gradualmente os usuários da versão do aplicativo em ambiente no local para a versão baseada em nuvem. Isso permite que as equipes monitorem o comportamento do sistema em tempo real, identifiquem os problemas antecipadamente e revertam as alterações, se necessário, tudo isso sem interromper a experiência do usuário final. A coordenação cuidadosa de TTLs de DNS, verificações de integridade e cobertura de monitoramento é essencial para manter a continuidade do serviço durante esta fase crítica.
A escalabilidade deve ser proativa. Considere a escala automática de grupos ou opções sem servidor, se apropriado para as cargas de trabalho atuais. E monitore os gastos com nuvem, a otimização de custos na migração para a nuvem não para depois que os aplicativos são lançados na nuvem.
A observabilidade contínua após a migração pode ajudar a:
Implementar monitoramento nativo de nuvem ou de terceiros para dar suporte a:
O rehosting geralmente é ideal quando as organizações precisam migrar rapidamente, evitar esforços de desenvolvimento pesados ou estender a vida útil de um sistema legado. Também pode ser a opção ideal para organizações que procuram reduzir as dependências de infraestruturas físicas e, ao mesmo tempo, iniciam uma transformação mais ampla na sua infraestrutura de TI.
O rehosting é mais eficaz em cenários em que as organizações têm aplicativos legados estáveis, mas caros, que estão se tornando difíceis de manter no local. Também é uma excelente opção quando há a necessidade de sair rapidamente de um data center ou quando a prioridade é migrar para a nuvem com o mínimo de interrupção na base de código existente do aplicativo.
Para equipes que planejam esforços de modernização mais amplos no futuro, o fazer rehosting pode servir como um primeiro passo estratégico, permitindo mudanças fundamentais hoje, preservando a flexibilidade para a refatoração futura. Nesses casos, o rehosting ajuda a ampliar o valor dos aplicativos legados sem exigir reescritas imediatas, ganhando tempo efetivamente para modernizar ainda mais quando a organização estiver pronta.
Ao avaliar o rehosting como um caminho de modernização de aplicativos, considere o seguinte:
O rehosting pode ajudar a gerenciar restrições de riscos e recursos, fornecendo um caminho para a nuvem com atrito relativamente baixo.
O rehosting pode oferecer otimização de custos no curto prazo na migração para a nuvem, reduzindo os custos de manutenção e licenciamento de hardware, a sobrecarga do data center e o tempo de provisionamento da infraestrutura. No entanto, o rehosting sozinho pode não otimizar totalmente os custos no longo prazo. Sem refatoração ou replataforma, os aplicativos podem não usar eficiências nativas de nuvem, como dimensionamento automático, sem servidor ou serviços gerenciados.
No curto prazo, as organizações podem obter um ROI rápido ao eliminar as despesas de capital e a necessidade de infraestrutura física. No longo prazo, no entanto, obter uma verdadeira eficiência de custos requer uma otimização mais profunda, como ajustar o uso de computação, redimensionar instâncias e desassociar serviços monolíticos para melhorar a escalabilidade e a alocação de recursos.
Embora o rehosting possa reduzir alguns riscos de segurança, como a dependência da correção de infraestruturas vulneráveis e desatualizadas, ele também cria novos riscos. Aplicativos que eram seguros em um ambiente controlado no local podem ser expostos em uma configuração de nuvem menos controlada, a menos que sejam tomadas medidas para protegê-los adequadamente por meio de uma plataforma de segurança nativa de nuvem.
O custo é outra consideração importante. Sem gerenciamento proativo, o rehosting de aplicativos pode gerar contas de nuvem mais altas do que o esperado. Por exemplo, as taxas de saída, cobranças pela movimentação de dados para fora do ambiente de um provedor de nuvem, podem aumentar rapidamente, especialmente para aplicativos com uso intensivo de dados.
Para evitar custos inesperados após a migração para a nuvem, as organizações devem adotar uma abordagem proativa no gerenciamento de recursos e custos. Isso inclui monitorar de perto as tendências de uso para identificar padrões e anomalias e estabelecer políticas claras de governança de custos para definir propriedade e responsabilidade. Automatizar tarefas como dimensionamento correto e alocação de recursos subutilizados pode ajudar a reduzir o desperdício e otimizar os gastos. Além disso, definir orçamentos e alertas nas plataformas em nuvem fornece sinais de alerta antecipados antes que os custos excedam os limites aceitáveis, ajudando as equipes a permanecerem no controle à medida que os ambientes escalam.
Toda estratégia de migração deve incorporar a segurança como uma consideração central em todo o processo, incluindo:
Um rehosting bem-sucedido requer mais do que copiar um aplicativo para a nuvem. Cutovers mal executados podem resultar em:
Um problema comum: os clientes ou parceiros podem depender de endereços de IP estáticos vinculados ao data center antigo de um aplicativo. Se esses endereços de IP não forem atualizados no lado deles, o tráfego falha. As organizações devem antecipar essas dependências e coordenar proativamente com as partes interessadas para garantir uma transição tranquila.
Um rehosting bem planejado inclui:
A Cloudflare acelera a modernização de aplicativos transformando vídeos e imagens, fazendo balanceamento de carga de aplicativos e resolvendo o DNS globalmente para obter um desempenho rápido e confiável. A proteção automatizada defende contra bots, ataques de DDoS e de dia zero, enquanto a observabilidade integrada garante a conformidade em todos os ambientes de nuvem. Com esses recursos, a Cloudflare fortalece cada camada da pilha de aplicativos para uma modernização segura, de alto desempenho e pronta para o futuro.
Saiba mais sobre modernização de aplicativos.