Escolhendo a nuvem: analisando características e requisitos

Migrar cargas para nuvem se tornou comum atualmente. Empresas que se libertam da infraestrutura fisica tem mais tempo para focar em seu negócio, podem testar mais conceitos e idéias.

Alinhar os custos da infraestrutura à demanda do negócio é um benefício importante para muitas empresas e em alguns caso pode ser importante ter acesso à quantidade considerável de recursos pagando apenas durante o tempo de uso.

Como parte deste caminho, corporações passam a investir mais tempo e dinheiro em suas aplicações pois é parte da tecnologia que potencialmente pode trazer mais diferencial competitivo. Mas é fundamental escolher o tipo certo de plataforma de Cloud, como explicado por Tulio Christianini no post “Você sabe escolher a nuvem ideal para sua empresa?“.

Definição

Antes de entendermos como as aplicações se relacionam com cada tipo de nuvem, é importante entendermos o conceito de computação em nuvem. Cloud Computing como definido pelo NIST, descreve as 5 caracteristicas essenciais (On-demand self-service, Broad network access, Resource Pooling, Rapid Elasticity, Measured service) que são amplamente disponibilizado por vários players e diversas ofertas de IAAS (Infrastructure as a Service).
Entretanto existem pontos importantes a serem observados antes de escolher a plataforma de Cloud a ser utilizada, pois mesmo atendendo as características descritas pelo NIST, cada plataforma possui capacidades únicas que podem endereçar melhor necessidades especificas.

Há hoje uma grande diversidade de ofertas que vão de nuvens publicas como AWS, Azure, Openstack (aos quais qualquer pessoa ou empresa pode ter acesso à características padronizadas), nuvens privadas, que aceitam requisitos específicos para atender exigências e características de negócios de empresas e nuvens híbridas que integram a nuvem pública com a privada ou mesmo com ambientes de virtualização já existentes.

Nuvens públicas

As núvens públicas possuem grande quantidade de funcionalidades, como APIs, autoscale e baixo custo (muitas vezes existentes em apenas um fornecedor). São ideais para aplicações que estejam preparadas para rodar em Cloud (cloud-ready/cloud-native applications). São aplicações que tem comunicação assincrona, distribuidas, desacopladas e voláteis. Este tipo de aplicação tem deploy automatizado e escala horizontalmente com criação mais VMs, e muitas vezes de forma automática (autoscale).

Entretanto, este tipo de plataforma possui requisitos padrão em relação à funcionalidade, performance e disponibilidade, os quais não são flexíveis e podem não atender as necessidades atuais de todas as aplicações.

Além disso, núvens publicas naturalmente trazem novas variáveis aos ambientes por ela suportados, como contenção momentânea de recursos, pequenas instabilidades de rede e storage, e manutenções com indisponibilidades pontuais em algumas VMs, o que pode trazer problemas para aplicações que não estejam preparadas para este tipo de ambiente. Alguns exemplos são volume alto e constante de IOPs, baixissima latência, comunicação sincrona e características transacionais.

Nuvens privadas

Plataformas de nuvem privada são mais flexiveis em termos de requisitos, possibilitando o atendimento de necessidades específicas de negócios e de aplicações. Isso acelera a adoção de nuvem, mesmo em casos onde não há tempo para adaptação dos sistemas ou ainda na impossibilidade dessa adaptação (software de terceiros, legados) pois permite a migração desses sistemas garantindo performance, disponibilidade e capacidade necessária com a flexibilidade, agilidade e pagamento por uso.

Funcionalidades como reserva de recursos (CPU, Memória, IOPs), Live Migration, DR (Disaster Recovery) nativo e Crescimento Online de VMs (CPU, Memória) fazem diferença em ambientes que não foram concebidos para rodar em nuvem ou ainda aqueles que demandam baixa latência e disponibilidade total de recursos como bancos de dados relacionais, aplicações financeiras e transacionais em geral.

Nuvens híbridas

Outro ponto que pode facilitar a adoção de Cloud é escolher uma plataforma que tenha integração nativa com uma tecnologia de virtualização já utilizada internamente facilitando muito a implantação de nuvens híbridas. Desta forma pode-se aproveitar ferramentas já utilizadas internamente como antivírus, monitoração, automação, imagens
e controles de segurança. A nuvem VMware, por exemplo, oferece o benefício de um console único de gerenciamento e funcionalidades como DR2C (DR para nuvem).

Ir para nuvem é uma transformação que passa da infraestrutura para as aplicações e impacta diretamente o negócio das empresas. Não é algo que pode ou deva ser feito de uma única vez e por isto o processo deve ser planejado para acontecer de forma transparente, com baixo impacto e com fases que podem contemplar a adoção de
diferentes plataformas dependendo da maturidade das aplicações e requisitos de negócio de cada ambiente.

É importante traçar uma estratégia e classificar os sistemas que são elegíveis levando em consideração a criticidade, capacidade e impacto, além das plataformas disponíveis no mercado. Pense em mudanças gradativas para adequar-se ao novo modelo.

O UOL DIVEO ajuda empresas em sua jornada para a nuvem, com serviços completos de consultoria, construção, gestão e melhoria de cloud computing, passando por nuvens públicas em Openstack, AWS, Microsoft Azure e VMware, Data Center virtual em tecnologia Virtustream, além de nuvens privadas em OpenStack e VMware.

Alexandre Biancalana

Com mais de 18 anos de experiência em administração de sistemas, ambientes de missão crítica e infraestrutura internet de alto tráfego, trabalha com plataformas de Cloud desde 2008.