A popularização da computação em nuvem tem como grande pilar a oferta de serviços de armazenamento (DropBox, Google Drive, OneDrive, entre outros). No entanto, a sua consolidação nas empresas se dá pela vasta gama de produtos e serviços entregues via nuvem.
Do que estou falando? Começarei com uma breve pergunta: você já ouviu falar em Software as a Service (SaaS) e / ou Infrastructure as a Service (IaaS)? Se sim, presumo que tenha uma noção do assunto. Se não, fique despreocupado: darei uma breve explicação.
O termo as a service (aaS) é utilizado para complementar modelos de serviços distribuídos na nuvem. Logo, assim como existe a nuvem como serviço de armazenamento (Storage as a Service), dispomos de aplicações que rodam na nuvem, recursos computacionais, entre outras coisas que são vendidas como serviço e entregues por meio da internet.
As vantagens do modelo para o usuário são muitas, a começar pelos custos, calculados de acordo com a utilização ou por mês — podendo ser cancelado a qualquer momento. Além disso, os serviços de computação em nuvem não requerem instalação de programas, nem investimento em hardware para implementação.
Para melhor elucidar o conceito, elenquei neste artigo os tipos de serviços em nuvem mais comuns e relevantes do mercado, explicando como ocorre o funcionamento e a utilização de cada um deles. Vamos começar?
1. Infrastructure as a Service (IaaS)
O modelo de serviço IaaS (ou Infraestrutura como Serviço, em português) é um dos pilares da computação em nuvem. Ele consiste na disponibilização de servidores e data centers dentro do contexto da nuvem, garantindo a tão desejada escalabilidade para redução de custos.
Numa definição mais formal, a Cloud Security Alliance (CSA), organização que se dedica a definir e disseminar as melhores práticas voltadas à segurança do ambiente de cloud computing, afirma que o IaaS:
“Entrega uma infraestrutura computacional (tipicamente uma plataforma de virtualização) como um serviço, junto com armazenamento e rede brutos. Assim, em vez de comprar servidores, sistemas, armazenamento, ou equipamentos de rede, o cliente adquire tais recursos como um serviço inteiramente terceirizado.”
De acordo com o autor Mike Kavis em seu livro “Architecting the Cloud”, o IaaS permite que a maioria das tarefas ligadas a gerenciamento e manutenção de data center e infraestrutura física sejam abstraídas e, então, disponibilizadas em uma gama de serviços acessíveis via Internet.
Seguindo o raciocínio das referências acima, conclui-se que o IaaS é a base de todos os serviços de cloud computing. A grande vantagem do modelo para as empresas é a capacidade quase ilimitada de recursos de rede, armazenamento, processamento e demais elementos de TI.
1.1 Relevância do IaaS no mercado
Por que o modelo IaaS faz tanto sucesso entre as organizações? Vamos a um exemplo que ilustra bem essa questão: o consumo de recursos computacionais numa empresa especializada em desenvolvimento de sistemas.
Entre tantas complexidades da área, destacam-se a quantidade de testes pelo qual passam as aplicações e a construção de múltiplos e distintos ambientes de trabalho para dar suporte aos programadores. Conforme a tecnologia avança e a demanda cresce, gerenciar a infraestrutura física gera custos e muito trabalho.
Dentro desse contexto, a melhor opção para a empresa é a contratação de um provedor de IaaS, visto que o serviço elimina a necessidade de infraestrutura física (exceto os instrumentos de trabalho dos empregados), garante mais tempo de disponibilidade, não requer upgrades etc.
Resultado: por meio da Internet, todos os computadores são conectados ao provedor de computação em nuvem (AWS ou Azure, por exemplo). Os ambientes virtualizados são executados em tempo real numa infraestrutura escalável que garante estabilidade, independente das necessidades do usuário.
2. Platform as a Service (PaaS)
O modelo Platform as a Service (PaaS) é, de certa maneira, uma “evolução” do IaaS, ainda mais se considerarmos o exemplo da empresa de desenvolvimento de software. Antes de explicar a relação entre as duas coisas, vejamos a definição dada pela Cloud Security Alliance ao modelo de serviço PaaS.
“É a entrega de uma plataforma computacional e uma pilha de soluções como um serviço. O PaaS oferece facilidade para o desenvolvimento de aplicações, excluindo-se os custos e a complexidade de aquisição, gerenciamento de hardware e software, e provisionamento de capacidade de armazenamento.”
Quando uma empresa adquire um serviço de PaaS, o provedor fornece uma infraestrutura que contém servidores, rede e recursos de storage. Portanto o PaaS fornece um ambiente pronto para ser utilizado em testes, implementações e outras atividades comuns da área.
Na prática, o PaaS é como um serviço de IaaS incrementado por sistemas operacionais que rodam diretamente da nuvem e, também, ferramentas analytics (utilizadas para Big Data e Business Intelligence, por exemplo), de desenvolvimento, e de banco de dados. Vamos entender melhor a aplicação das funcionalidades nas empresas?
2.1 Exemplo de utilização de PaaS
Voltando àquela nossa empresa de desenvolvimento de software, por que a plataforma como serviço é interessante para os objetivos do negócio? Cabe pontuar a redução de custos ainda maior em relação ao modelo IaaS.
A explicação para a economia financeira está no fato de que o PaaS engloba infraestrutura e ambiente de trabalho. Sendo assim, o usuário tem à disposição tudo o que necessita em termos de infra e aplicações, mas pagando somente pelo serviço.
Em outras palavras, assim como a empresa não precisa mais investir em componentes de hardware e o que estiver atrelado a isso (manutenção, upgrade, substituição de peças etc.), custos com licenças de software para uso corporativo, os quais costumam ser caríssimos devido à quantidade de usuários, também são eliminados.
3. Software as a Service (SaaS)
Por sua vez, o modelo SaaS compõe a “terceira camada” dos serviços primários de computação em nuvem — os quais mencionei até aqui. Certamente, estou me referindo ao serviço mais popular entre os adeptos da nuvem, pois ele abrange uma demanda mais ampla.
Segundo Bernard Golden, “com o SaaS, toda a funcionalidade de uma aplicação é entregue por toda a rede em um pacote. O usuário não precisa fazer mais do que usar a aplicação; o provedor SaaS cuida do que estiver associado com a criação e operação do software, segregando os dados do usuário, com a segurança do usuário e o ambiente SaaS como um todo, e com diversos outros detalhes”.
O que há de diferente no SaaS em relação ao PaaS, por exemplo? O ponto é o foco em distribuir soluções de software, tornando irrelevante o ambiente computacional e a infraestrutura de TI. Portanto ele se caracteriza pela versatilidade, atendendo aos mais variados tipos de situações de uso.
Como isso é possível? A resposta é simples: os pré-requisitos para uso do modelo são mínimos. Um computador relativamente antigo, conectado à Internet, utilizando um navegador como Google Chrome e Mozilla Firefox, por exemplo, pode ser usado para desenvolver projetos altamente sofisticados.
Nesse caso, o papel do browser é somente fazer a comunicação entre a máquina do usuário e o serviço; é muito similar ao que acontece quando utilizamos um caixa eletrônico para acessarmos informações e serviços vinculados à conta bancária.
3.1 O uso do Software as a Service nas empresas
Atualmente, os ambientes de trabalho estão cada vez mais integrados com a transformação digital. Um dos maiores desafios que isso representa para administradores de sistemas, por exemplo, é possibilitar que múltiplos dispositivos tenham acesso às aplicações sem que a segurança fique comprometida.
Imaginemos um ambiente de trabalho bastante diversificado, composto por várias equipes (programadores, web designers, contabilidade, análise de operações, marketing etc.). Eu posso elencar muitos desafios que isso pode envolver, tais como:
- custos relativos a aquisições de software;
- criação de múltiplos ambientes seguindo diferentes requisitos de infraestrutura;
- integração dos sistemas com os respectivos bancos de dados; e
- gerenciamento dos ativos de TI.
Quando as aplicações (ou a maioria delas) são executadas na nuvem como serviço, essas dificuldades são eliminadas. Afinal, o provedor é responsável por: gerenciar a infraestrutura que suporta as aplicações; manter os produtos atualizados; e promover a Segurança da Informação.
Logo, desde que conectados a uma rede segura, os colaboradores da empresa podem trabalhar usando qualquer tipo de dispositivo (notebooks, smartphones, desktops, tablets, entre outros), ideal para ambientes que promovam o sistema BYOD (Bring Your Own Device). Tudo é feito a partir do navegador web instalado no aparelho.
4. Function as a Service (FaaS)
O FaaS (função como serviço, acrônimo em português) é uma das maiores tendências da computação em nuvem para os próximos anos. A sua adoção no mercado vem ocorrendo em razão dos benefícios que ele oferece em comparação ao PaaS — modelo do qual o FaaS se tornou uma alternativa.
Para compreendermos o fenômeno, cabe retomar um dos fatores mais convincentes aos líderes de negócios: a redução de custos. Se o próprio PaaS oferece benefícios nesse sentido, imagine o potencial de economia trazido por uma solução de nuvem desprovida de gerenciamento de infraestrutura?
Explicando a comparação, o PaaS fornece uma plataforma composta de infraestrutura e software gerenciadas pelo usuário, de modo que os recursos computacionais ficam disponíveis 24/7 enquanto não acionados. Isso acaba ativando o modo stand by do servidor e, consequentemente, gera desperdício de consumo.
Com o FaaS, os recursos são consumidos apenas quando uma função (ou código) da aplicação é executada. O servidor apenas responde a eventos isoladamente — eles são “descartáveis” e não mantêm relações entre si. Sendo assim, a execução e a tarefa têm o mesmo ciclo de vida.
O consumo de FaaS é calculado pelos provedores de maneira diferente do convencional. Em vez de o usuário pagar pelo consumo mensal, o cálculo é feito sobre cada execução (ou tempo de execução). Logo, como os valores são bem mais precisos, o gestor pode aproveitar melhor o orçamento e desenvolver estratégias para reduzir as despesas.
4.1 A adoção do FaaS pela Netflix
Dando um breve giro pelo tempo, o modelo FaaS foi lançado no mercado em 2014 pela Hook.io, não demorando para que os maiores players do mercado desenvolvessem suas próprias soluções com base na patente, tais como a Microsoft (Azure Function), IBM (Apache OpenWhisk) e Amazon (AWS Lambda).
No ano seguinte, a Netflix, visando a capacidade de atender à crescente demanda (hoje representada por 148 milhões de usuários que consomem, em média, 165 milhões de horas de vídeo diariamente), dedicou esforços de sua equipe interna para integrar o FaaS à sua API (application programming interface).
O resultado desse ambicioso (e complexo) trabalho da Netflix, em termos de bastidores, foi a criação de uma plataforma API própria chamada NodeQuark, desenvolvida em Node.js, a qual se comunica com o AWS Lambda de maneira perfeitamente alinhada ao modus operandi do serviço.
Sem dúvida alguma, o case de sucesso entre a Netflix e o Function as a Service fornecido pela Amazon Web Services é uma ótima demonstração de como a computação em nuvem, por meio da inovação, consegue se encaixar em qualquer situação, independente do volume e da complexidade dos processos.
Everything as a Service (XaaS)
A partir de tudo que foi apresentado até aqui, não há dúvidas de que a tendência para os próximos anos é de que qualquer tipo de serviço computacional seja disponibilizado pelos provedores de computação em nuvem.
Constatado o inevitável, hoje é muito comum na área o uso do acrônimo XaaS para nos referirmos aos modelos de cloud, considerando que os itens apresentados no artigo representam a ponta do iceberg. Nesse caso, o “X” simboliza a “infinidade” de serviços que a nuvem pode entregar.
Diante disso, a capacitação para trabalhar com a tecnologia passa a ser um diferencial para o profissional do futuro. Mas por onde começar? A dica é escolher entre áreas que tendem a gerar demanda nos próximos anos, como:
- Segurança da Informação;
- Arquitetura de computação em nuvem;
- Big Data;
- Inteligência Artificial; e
- Internet das Coisas.
No mais, podemos esperar pela chegada de vários outros modelos de computação em nuvem a exemplo de alguns que já vêm se disseminando no mercado, tais como: Content as a Service (CaaS), Energy Storage as a Service (ESaaS), Database as a Service (BdaaS), Backup as a Service (BaaS), Game as a Service (GaaS), Robots as a Service (RaaS), entre muitos outros.
Gostou das informações e abordagens do conteúdo? Aproveite para compartilhá-lo com os seus amigos nas redes sociais!