António Correia

aafc

Solution Architect - Xpand IT

Duas estratégias a adotar na migração para a cloud em Azure

ESTE ARTIGO EM 5 SEGUNDOS:
  • Existem duas estratégias a adotar na migração para a cloud em Azure, que são viáveis numa semana: Rehost e Refactor;
  • Rehost consiste em “retirar” a sua aplicação dos servidores do data center atual e “transferi-la” para o cloud provider;
  • Refactor significa mover diferentes camadas das aplicações utilizando serviços geridos em cloud.

No artigo (“Como começar uma adoção Cloud em menos de uma semana“) abordámos os passos e estratégias a adotar numa migração para cloud – foram referidas as duas estratégias viáveis para esse caminho numa semana: Rehost e Refactor.

Neste artigo vamos concretizar, ao abordar duas estratégias a adotar na migração para a cloud em Azure:

Duas estratégias a adotar na migração para a cloud em Azure:

1. A estratégia de Rehost

Rehost, também conhecido como “lift and shift”, é uma das estratégias mais populares e com maior taxa de sucesso. Como o nome sugere, essa estratégia consiste em “retirar” a sua aplicação dos servidores do data center atual e “transferi-la” para o cloud providerEsta é uma das maneiras mais acessíveis de adotar o modelo cloud quando não há tempo para “re-desenhar” as suas aplicações.

Os serviços Azure mais utilizados neste tipo de estratégia são:

👉 Máquinas virtuais, uma máquina virtual (VM) comporta-se como um servidor. Cada máquina virtual disponibiliza o seu próprio hardware virtual, incluindo CPUs, memória, discos rígidos, interfaces de rede e outros dispositivos. A virtualização consiste no processo de criar uma versão baseada em software ou “virtual” de um computador, com quantidades dedicadas de CPU, memória e armazenamento que são “emprestadas” por um computador anfitrião físico.

Sendo que uma VM se comporta como um servidor, podemos questionar qual o ganho de transferir os nossos servidores para a cloud? A utilização de VMs Azure apresenta as seguintes vantagens:

👉 Custo:

  •  É significativamente mais barato do que comprar hardware para o data center local.
  • Só necessitamos de criar o que realmente precisamos de utilizar, controlando dessa forma o nosso orçamento.
  • O Azure suporta planos de pagamento com reserva de 1 a 3 anos que podem reduzir o valor até 72% comparando com um cenário “pay-as-you-go”.

👉 Facilidade de provisionamento:

  • É possível levantar uma nova instância de VM (ou clonar uma existente) em minutos.

👉 Escalabilidade:

  • É bastante fácil escalar VMs vertical e horizontalmente (inclusive automaticamente usando scale sets).

👉 Segurança:

  • Proteção contra vírus e malware.
  • Encriptação de discos e dados sensíveis.
  • Utilização de VPN.
  • Identificar e detetar ameaças.
  • Conformidade com certificações.
  • Backup e Site Recovery.

👉 Alta disponibilidade:

Ao utilizar Zonas de Disponibilidade na utilização de VMs para as nossas soluções, podemos proteger as nossas aplicações mesmas no caso de falha. Cada Zona de Disponibilidade tem uma fonte de energia, uma rede e um sistema de refrigeração distintos, pelo que se uma zona for comprometida não teremos falhas na aplicação uma vez que as outras zonas estarão disponíveis (cenário praticamente impossível de conseguir num data center on-prem).

👉 Outros serviços que podem ser também utilizados:

  • Azure Migrate: Server Migration tool (se compatível), serviço que efetua a migração automática de servidores (virtuais ou físicos) para VMs Azure.
  •  Azure Database Migration Service, serviço que permite a migração de bases de dados on-prem para plataformas de dados em Azure.
  • Os passos típicos numa estratégia Rehost (utilizando o Server Migration tool) são os seguintes:
  • Preparar e configurar componentes Azure para a Azure Migrate: Server Migration.
  • Configurar a replicação das VMs através da ferramenta Azure Migrate: Server Migration.
  • Replicar as VMs.
  • Efetuar a migração.

2. A estratégia de Refactor

A estratégia de “Refactor”, não implica alterar o core da sua aplicação, mas apenas a mover diferentes camadas da mesma utilizando serviços geridos em cloud.

Esta estratégia é igualmente um passo de modernização pois ao utilizar serviços geridos obtemos de raiz:

  1. Foco no que realmente é importante (a lógica de negócio e disponibilizar novas funcionalidades aos clientes) dispensando tudo o que está relacionado com gestão infraestrutura, backups, atualizações, etc;
  2. Opções de auto escalabilidade;
  3. Monitorização built-in e CI/CD (Continous Integration/Continuous Delivery);
  4. Possibilidade de deploy com zero downtime (conhecido como blue/green deployment).

👉 Dentro da gama de serviços geridos disponibilizados em Azure, na óptica de uma adoção rápida de cloud, destacamos:

Para a componente de dados, toda a oferta DBaaS. DBaaS (Database as a Service) é um serviço gerido que fornece acesso a uma Base de Dados sem exigir configuração de hardware, instalação/configuração de software, exemplo:

  • Azure SQL Database (SQL Server)
  • Azure Database for PostgreSQL
  • Azure Database for MySQL
  • Azure Database for MariaDB
  • Azure Cosmos DB (NO SQL)

👉 Para a componente runtime destacamos o serviço App Service, trata-se de um serviço PaaS (Platform as a Service) HTTP-based ideal para hospedar aplicações web, APIs REST ou componentes backend. Suporta vários tipos de runtime, tais como .Net, Ruby, Node.js, PHP, Python, Java (standalone, Tomcat ou JBoss EAP) ou Docker containers.

Fornece igualmente (out-of-box) segurança, balanceamento de carga, escalamento automático, blue/green deployment e a possibilidade de integração automática com o repositório de código (GitHub, Bitbucket) fornecendo desta forma a possibilidade de introduzir práticas de CI/CD com pouco ou nenhum esforço envolvido.

Tal como na estratégia de rehost, o Azure fornece várias ferramentas que nos auxiliam na migração das nossas aplicações para App Service.

👉 Os passos típicos numa estratégia Refactor são os seguintes:

  • Preparar e configurar componentes Azure (Base de Dados gerida e App Service)
  • Configurar a aplicação
  • Efetuar a migração de dados e deploy da aplicação

Se quiser saber mais informações/ajuda com o seu plano de estratégia de migração para a cloud, entre em contato connosco.

António CorreiaDuas estratégias a adotar na migração para a cloud em Azure
read more

Como começar uma adoção Cloud em menos de uma semana

Numa era de avanços tecnológicos, estamos a testemunhar um boom na modernização e transformação digital (em todas áreas de negócio). A situação pandémica atual veio acelerar ainda mais essa tendência e uma transformação digital eficaz será a diferença entre o sucesso ou o falhanço de uma empresa no futuro.

Não poderíamos abordar este tema sem trazer a computação em cloud para a discussão. Um número crescente de empresas está a estudar a possibilidade de mudar os seus sistemas para a cloud e, com isso, reduzir os custos e responsabilidades de ter uma infraestrutura local (neste estudo, feito pela Gartner, podemos perceber “mais de 1.3 triliões de dólares de gastos em TI serão afetados pela mudança para a Cloud até 2022”).

A computação em cloud possui características que o seu negócio pode aproveitar no imediato, como a alta disponibilidade, escalabilidade, tolerância a falhas, segurança, entre outras.

Mesmo com a barreira dos aspetos técnicos, a migração das suas aplicações para a cloud pode ter um impacto significativo nos custos e na produtividade do seu negócio.

Com esta mudança, é possível prever de forma mais acertada os custos (sem despesas iniciais, uma vez que os custos de infraestruturas locais são inexistentes), uma vez que só vai pagar o que usa. Além disso, considere também que só irá pagar recursos adicionais em caso de necessidade e pode parar os mesmos assim que queira.

A rápida aceitação da computação em cloud faz também com que as empresas fornecedoras destes serviços, possam aproveitar as economias de escala para oferecerem preços mais acessíveis e ajustados aos seus clientes.

Todos os recursos técnicos para construir e manter uma infraestrutura de data-center, são garantidas pelo cloud provider, para que possa assim manter todo o seu foco e produtividade nos negócios centrais da sua empresa. As suas equipas de IT vão assim concentrar-se ao máximo no desenvolvimento de novas soluções que possam ser vitais à sua organização.

Quando falamos de um processo de migração para a cloud, estamos também a falar de um plano de como uma organização deve mover os seus dados e aplicações do seu data-center local para a cloud.

A primeira etapa deste plano, consiste numa avaliação de introspeção da empresa para poder decidir quais os recursos que devem migrados, e qual a estratégia de migração que deve ser usada para cada recurso. Só depois poderá avaliar e escolher o provider e o parceiro que irá executar a migração.

Neste artigo, vamos explorar a primeira etapa, apresentando as estratégias mais usadas para migração para a cloud (com alguns exemplos práticos de casos reais).

Vamos focar-nos em dois modelos de serviços cloudIaaS – “Infrastructure as a Service” e PaaS – “Platform as a Service”.

A principal diferença entre os dois está na distribuição de responsabilidades:

Com IaaS, o fornecedor da cloud consegue gerir tudo o que está relacionado com hardware, mas os aspetos técnicos, como a manutenção do sistema operativo, configuração de rede e de aplicações, continuam a depender da organização.

Com PaaS, a sua empresa fica com menos responsabilidade, pois não é responsável pela manutenção da rede ou do sistema operativo. Apenas tem que se preocupar com os dados e configurações.

As estratégias de migração mais comuns, são:

  • Rehost (aka “lift and shift”) – migrar as aplicações “como estão” para IaaS;
  • Refactor – migrar as aplicações “como estão” com alterações de configuração para aproveitar as vantagens dos serviços cloud (ex: PaaS, DBaaS);
  • Rearchitect – Modificar a arquitetura/código das aplicações para novas aproveitar as funcionalidades da cloud;
  • Rebuild/New – (Re)construir aplicações adotando metodologias e tecnologias nativas da cloud.

A tabela seguinte apresenta uma comparação das diferentes estratégias (os objetivos têm impacto na escolha de migração a aplicar):

Mas então… como fazemos a adoção cloud?

Com uma semana para realizar a adoção em cloud, vamos nos focar nas duas estratégias possíveis, Rehost e Refactor.

Rehost, também conhecido como “lift and shift”, é uma das estratégias mais populares e com maior taxa de sucesso. Como o nome sugere, essa estratégia consiste em “retirar” a sua aplicação do host atual e “transferi-lo” para o cloud provider escolhido. Esta é uma das maneiras mais acessíveis de adotar o modelo cloud quando não há tempo para “re-desenhar” as suas aplicações.

Os custos inerentes à infraestrutura são agora redirecionados para o seu cloud provider, que trata e garante a manutenção de todos os recursos necessários para executar as suas aplicações e vende isso como um serviço (IaaS). O risco é baixo para esta estratégia e a sua empresa recebe benefícios imediatos e retorno sobre o investimento. Se não precisar dos recursos, pode “dispensar” a sua infraestrutura local.

Existem algumas ferramentas disponíveis para realizar esta migração, mas algumas empresas preferem fazê-lo manualmente. Esta estratégia é uma boa primeira opção para adoção de cloud mas, dependendo dos seus projetos, a próxima estratégia pode beneficiar mais dos recursos nativos da cloud.

Para simplificar este conceito, apresentamos um exemplo de uma aplicação que é executada em ambiente Java, usa um sistema de gestão de base de dados e é executada numa distribuição Linux.

Com o Rehost, é possível mover todas as camadas da sua aplicação para uma infraestrutura fornecida pelo seu cloud provider, mas a cloud tem muito mais para oferecer!

Com o “refactoring”, não está a alterar o core da sua aplicação, mas apenas a mover diferentes camadas da mesma para serviços geridos em cloud.

Pense em todo o tempo e recursos gastos a gerir bases de dados, backups, atualizações e muitas outras preocupações. A maioria dos fornecedores de cloud oferecem database-as-a-service, onde todas essas “preocupações” são geridas por eles. Alguns serviços oferecem plataformas onde pode executar as suas aplicações e todas as preocupações como o provisionamento de recursos, escalabilidade, balanceamento de carga e outros aspetos são geridos pelo seu cloud provider.

Esta estratégia pode exigir configurações adicionais comparando com a opção Rehost, mas a sua empresa pode beneficiar com isso.

Embora seja um grande passo em relação à estratégia de Rehost, ainda está longe de aproveitar todos os recursos nativos da cloud e dos quais você pode beneficiar. Mas com uma semana para migrar para a cloud, este é um bom passo.

Se quiser saber mais informações/ajuda com o seu plano de estratégia de migração para a cloud, entre em contato connosco.

António CorreiaComo começar uma adoção Cloud em menos de uma semana
read more