
Cloud Computing
Por Blayton Portela
A Cloud Computing — ou Computação em Nuvem — pode ser definida como a disponibilização de serviços e recursos computacionais dos mais variados tipos a partir da internet.
Quando compartilhamos um documento na Nuvem, ouvimos uma música ou assistimos um vídeo em streaming ou simplesmente respondemos um e-mail, tudo isso acontece por meio da computação em Nuvem.
A computação em nuvem é tão comum na atualidade, que qualquer um que utilize uma SmartTV, Smartphone, Tablet, Computador ou qualquer dispositivo que utilize a internet estará usando da Computação em Nuvem, direta ou indiretamente.
E como ela surgiu?
O conceito é associado ao nome de John Mccarthy, pioneiro na tecnologia de Inteligência Artificial e criador da linguagem de programação LISP. Em 1960, ele disse que “a computação pode algum dia ser considerada como uma utilidade pública.” John McCarthy também discutiu uma ideia muito importante: a computação por tempo compartilhado (time sharing).
Esse tipo de computação poderia permitir que um computador fosse utilizado simultaneamente por dois ou mais usuários a fim de realizar tarefas, aproveitando o período de tempo disponível entre cada processo. Utilizando o computador em conjunto, seria possível aproveitá-lo melhor, diminuindo gastos, pois o usuário pagaria somente pelo tempo de utilização do equipamento, ou no caso, da tecnologia da Nuvem. Mas na época, não havia tanta demanda e nem tecnologia suficiente para implementação de tal ideia, então acabou ficando para o futuro.
A expressão Cloud Computing apareceu pela primeira vez em 1997 em uma palestra acadêmica ministrada por Ramnath Chellappa, onde ele definiu Cloud Computing como um paradigma da computação onde os limites computacionais serão determinados pelo custo e não apenas pelos limites técnicos.
Porém a Cloud Computing de fato, só foi desenvolvida a partir de 1999 pela empresa Salesforce, a qual disponibilizou a instalação de Software no seu centro de processamento de dados para a interação com seus clientes. Depois desse surgimento, as grandes empresas começaram a olhar com bons olhos esse novo ramo e passaram a investir nessa tecnologia.
Em 2002, a Amazon, empresa que se tornaria a grande referência no assunto, entrou nesse mercado e em 2006 lançava a AWS ( Amazon Web Services ), e a partir daí várias outras iniciativas foram lançadas e a Cloud Computing foi se tornando cada vez mais essencial.
Como funciona a Cloud Computing?
A Cloud Computing ousa um servidor remoto para conectar dispositivos dos usuários a recursos centralizados. Um servidor remoto armazena todos os dados e programas de que você precisa armazenado em algum data center existente em algum lugar do mundo. É muito difícil saber a localização exata dos seus dados, eles podem estar em um servidor aqui mesmo no Brasil, ou em um data center do outro lado do planeta, no Japão, por exemplo, ou ainda nos dois locais ao mesmo tempo, um sendo cópia de segurança do outro.
O fato é que você pode acessá-los on-line, de qualquer lugar, mesmo que estejam armazenados a quilômetros e quilômetros de distância. Como eles não estão em lugar fixo, é possível que várias pessoas, de diversos locais, consigam interagir com aquele conteúdo guardado na nuvem, desde que tenham acesso autorizado para tal.
Existem 3 tipos de computação em nuvem: o público, o privado e o híbrido. Se você planeja usar um serviço na nuvem, tenha em mente que a escolha dependerá de fatores relacionados a custo, disponibilidade, desempenho e expectativas. Em seguida, você verá como cada nuvem funciona:
Nuvem pública
São recursos computacionais, como servidores e armazenamento, fornecidos por terceiros e disponíveis para qualquer pessoa ou empresa que deseje contratá-los.
Nesse modelo, o cliente é responsável pelo que será enviado para a nuvem, seja um backup, um aplicativo ou alguns arquivos, enquanto o provedor de nuvem está preocupado com a manutenção, segurança e gerenciamento de todos os recursos.
Na nuvem pública, tudo está disponível na web e compartilhado entre vários usuários que o usam simultaneamente (mas separadamente), o que mantém os recursos padronizados.
Ao oferecer soluções unificadas, esse modelo acaba sendo mais barato. Portanto, a nuvem pública é indicada para quem deseja economizar em investimentos.
Nuvem privada
Nesse modelo, toda a infraestrutura da nuvem pode ser mantido em seu domínio interno ou ser fornecida por algum provedi e oferece acesso restrito a usuários selecionados, como funcionários e parceiros.
A nuvem privada oferece a possibilidade de personalizar as funções e o suporte às suas necessidades. Como a nuvem é projetada exclusivamente para ela, todos os processos são direcionados para a realidade do negócio.
Em geral, a nuvem privada é usada por organizações que devem seguir certos regulamentos e regras específicas sobre segurança e privacidade de dados e informações, como é o caso de algumas instituições financeiras e governamentais.
Nuvem híbrida
Finalmente, quando falamos sobre a nuvem híbrida, nos referimos à união dos dois anteriores, ou seja, a combinação que permite compartilhar dados e aplicativos entre os dois tipos de nuvem citados.
Assim, de acordo com a necessidade e a estratégia do negócio, alguns recursos são utilizados de forma privada, outros são utilizados publicamente ou estão ligados por meio de tecnologias.
Os modelos de serviços em nuvem
Além da classificação apresentada acima, é preciso conhecer três tipos de serviços em nuvem, que podem atender tanto às necessidades mais simples quanto às mais complexas e específicas.
Software as a Service (SaaS)
Trata-se de entregar produtos de software para os usuários através de dispositivos e aplicações clientes “leves”, como Thin Clients e dispositivos móveis (p.ex. celulares e netbooks) através de navegadores de Internet. O usuário não gerencia ou controla a infraestrutura necessária para o funcionamento do serviço (rede, armazenamento, sistema operacional).
Com os softwares na web novos recursos podem ser adicionados e atualizações podem ser executadas automaticamente, além de reduzir o custo por não haver necessidade de aquisição de licença. Ex.: Gmail, Google Docs, Twitter, Facebook, entre muitos outros.
Plataform as a Service (PaaS)
Fornece uma infraestrutura para a instalação e disponibilização de aplicações desenvolvidas pelo o usuário, utilizando ferramentas e ambientes fornecidas pelo provedor do serviço. O usuário não gerencia ou controla os recursos de infraestrutura, como sistema operacional, rede, plataforma de execução, banco de dados e etc. Esses recursos são oferecidos de forma transparente através de APIs fornecidos pelo provedor. Mas nesse caso o cliente tem total controle da aplicação em si e geralmente de parâmetros de configuração do ambiente de execução. Exemplo: Google App Engine .
Infrastructure as a Service (IaaS)
A Infraestrutura como Serviço (IaaS) é um serviço de computação em nuvem no qual o usuário contrata a infraestrutura necessária para armazenar as suas aplicações, são oferecidos aos clientes como processamento, armazenamento, rede e outros recursos computacionais fundamentais através dos quais os usuários podem executar quaisquer tipos de aplicações.
O cliente final tem total controle sobre o ambiente, desde o sistema operacional até a plataforma das aplicações. Porém, o usuário não gerencia ou controla a infraestrutura da nuvem em si, como por exemplo, em qual hardware real suas “máquinas” estarão rodando. Exemplo: Amazon Web Services.
Principais características e vantagens da Cloud Computing
Elasticidade e escalabilidade
Uma das principais características da Cloud Computing é a sua eficácia para lidar com as mudanças na carga de trabalho. Na nuvem, a elasticidade significa a capacidade de um sistema em adicionar ou remover recursos de maneira autônoma. Além disso, os recursos disponíveis ficam em harmonia com a nova demanda.
Podemos dizer que a elasticidade é a capacidade de escalar recursos tanto horizontalmente quanto verticalmente. Outra característica importante é que toda e qualquer alteração é feita em tempo real, de modo a não interferir no fluxo de trabalho.
Dessa maneira, não é preciso interromper o sistema ou fazer manutenções aos finais de semana para não prejudicar o negócio. Por ser uma característica extremamente crítica, ela faz com que esse seja um diferencial na computação em nuvem em comparação a outras tecnologias.
Otimização de processos de TI
A otimização de processos pode ser vista como um amplo benefício proporcionado pela utilização da computação em nuvem, já que diversos procedimentos podem ganhar mais agilidade.
Imagine em um data center físico, qual o impacto de uma alteração como aumentar o número de processadores em uma máquina? Provavelmente seria preciso alocar recursos para trabalhar no final de semana, parar a máquina etc. Isso gera inúmeros transtornos ao negócio, além do gasto com horas extras dos colaboradores.
Ao utilizar Cloud Computing, essa atividade pode ser feita em pouco tempo e sem nenhum impacto ao usuário. Dessa maneira, os colaboradores de TI podem ser alocados em outras atividades.
Provisionamento automático de recursos
Ao utilizar Cloud Computing, é possível alocar recursos de processamento sob demanda. Isso quer dizer que, conforme a necessidade da aplicação durante o uso, o sistema redimensiona recursos automaticamente.
Outra forma em que o provisionamento automático de recursos pode ser usado é na configuração de ambientes para instalação de softwares. Um exemplo é o preparo de uma área de desenvolvimento web em que seja preciso instalar servidor web, de aplicação e base de dados.
Todas essas configurações podem ser feitas automaticamente. Assim, conforme a solicitação do usuário, o ambiente é criado com todos os recursos necessários para o desenvolvimento de sites.
Monitoramento
Controlar o ambiente é extremamente importante, já que informações relevantes podem ser obtidas por meio da análise e controle das atividades de hardwares e softwares. Por isso, é fundamental definir métricas de monitoramento para os serviços. Assim, é possível acompanhar o consumo de todos os recursos e tomar decisões estratégicas de modo a antecipar eventuais problemas.
Há ainda monitoramentos feitos para métricas mais específicas, em que é possível controlar o sistema operacional de uma máquina virtual. Dessa maneira, é possível ter um controle ainda maior de todos os recursos das aplicações.
Conectividade
Outro grande benefício em Cloud Computing é a conectividade. Poder acessar o ambiente a qualquer momento e de qualquer lugar proporciona um enorme benefício para a empresa, já que atualmente as pessoas trabalham em horários e lugares variados. Desse modo, para acessar o sistema basta um computador de mesa, notebook ou smartphone com acesso à internet.
Alta disponibilidade
Em diversos tipos de negócio a alta disponibilidade é essencial. Muitas empresas têm negócios 24/7 e precisam que o ambiente esteja disponível o tempo todo. Contudo, manter a alta disponibilidade em um data center físico requer um alto investimento. Isso porque alta disponibilidade significa manter redundância de todos os recursos de um data center.
Por isso, a alternativa de manter o ambiente na nuvem é bem atrativa, já que ao contratar o serviço é possível escolher opções de alta disponibilidade, que contemplam o armazenamento em diferentes localidades.
Segurança da informação
Uma das maiores preocupações das empresas está relacionada à segurança da informação. Isso porque as falhas nesse setor trazem consequências gravíssimas. Alguns dos principais problemas de segurança são:
- Perda dados por problemas de hardware;
- Invasões no sistema;
- Ameaças virtuais, etc.
Por isso, a segurança da informação requer bastante atenção dos fornecedores de serviços em nuvem. Desse modo, além de contar com pessoal especializado em segurança, são utilizadas tecnologias de ponta para a proteção dos dados.
Principais provedores de Cloud Computing
Como sabemos existem diversos provedores de Cloud Computing no mercado, e cada dia mais surgem novos provedores, mas dentre eles, podemos destacar os principais que operam mundialmente, em larga escala, e têm sites em português, com ampla literatura técnica.
Alguns dos principais provedores de Computação em Nuvem são:
- Amazon – AWS;
- Google – Google Cloud Platform;
- Oracle – Oracle Cloud;
- Microsoft – Microsoft Azure;
- IBM – IBM Cloud, entre outros…
Conclusão
Agora que já sabe um pouco mais sobre Cloud Computing, você pode colocar a mão na massa e experimentar um pouco disso na prática, já que esses provedores citados acima oferecem algumas opções gratuitas para degustação dos seus serviços.
É claro que a Cloud Computing não pode ser vista como uma solução mágica para todo tipo de aplicação. Fatores envolvendo disponibilidade, capacidade de escala (para ampliação do serviço em caso de aumento de demanda), segurança dos dados, custos e conveniência devem ser sempre colocados na balança para a adoção de um serviço na Cloud.
De todo modo, a Cloud Computing é um caminho sem volta. A constante ampliação dos serviços de acesso à internet e o advento dos dispositivos móveis (smartphones, tablets, smartwatches e smartgadgets em geral) abrem espaço para uma gama crescente de aplicações.

