O caso

Só queria vender café. Virou administradora de servidor.

O Isaac alugou VMs para rodar o sistema de pedidos da loja. Agora, além de vender café, é ele quem instala as atualizações do sistema operacional, configura o banco de dados e acorda de madrugada quando o servidor trava.

Alugar infraestrutura resolveu o hardware. Todo o resto continuou sendo dele.

Este post parte de Fundamentos da Nuvem e de Máquinas Virtuais.

O problema

Alugar a VM não resolveu tudo

Em Máquinas Virtuais, vimos que numa VM na nuvem o provedor cuida do hardware e do hypervisor. Da VM para cima, tudo é seu: sistema operacional, atualizações, linguagem e bibliotecas, banco de dados, escala.

Cada uma dessas tarefas é trabalho necessário que não diferencia a loja da concorrência. É o undifferentiated heavy lifting de Fundamentos da Nuvem.

A solução

Uma pilha de camadas

Toda aplicação em nuvem se apoia numa pilha: o hardware embaixo, a virtualização, o sistema operacional, o runtime (a linguagem e as bibliotecas em que o código roda), os dados e, por cima, a aplicação. A linha "escala e capacidade" diz quem decide quantas cópias da aplicação rodam e quando criar mais.

Os modelos de serviço dizem até que camada o provedor assume o trabalho. Dali para cima, é com você. Quanto mais alto o provedor chega, menos trabalho você tem e menos controle.

LocalVocêVocêVocêVocêVocêVocêVocêIaaSVocêVocêVocêVocêVocêProvedorProvedorPaaSVocêVocêProvedorProvedorDivididoProvedorProvedorFaaSVocêVocêProvedorProvedorProvedorProvedorProvedorSaaSProvedorDivididoProvedorProvedorProvedorProvedorProvedorAplicaçãoDadosRuntimeSistema operacionalEscala e capacidadeVirtualizaçãoHardwareVocêDivididoProvedor
Quem gerencia cada camada. “Local” é o data center próprio.

Os modelos

Os quatro modelos

IaaS (Infrastructure as a Service): infraestrutura como serviço

Você aluga a infraestrutura: VMs, redes e discos. O controle é total, e a responsabilidade também, do sistema operacional para cima.

Na loja: a VM com o sistema de pedidos instalado à mão.

PaaS (Platform as a Service): plataforma como serviço

Você leva o código, e o provedor cuida do sistema operacional, do runtime e da infraestrutura. Você ainda configura a escala.

Na loja: o sistema de pedidos publicado numa plataforma gerenciada, sem tocar em servidor.

FaaS (Function as a Service): função como serviço

Você escreve funções que rodam quando um evento acontece. O provedor liga o ambiente, executa e desliga, e cobra por execução.

Na loja: uma função que envia o e-mail de confirmação quando um pedido chega.

SaaS (Software as a Service): software como serviço

Software pronto, usado pelo navegador. Você configura, usa e cuida dos seus dados. O resto é do provedor.

Na loja: a ferramenta de e-mail marketing e o sistema de nota fiscal.

O nome em cada nuvem

Os conceitos valem para qualquer provedor. Mudam os produtos que os oferecem:

ModeloAWSAzureGoogle CloudOracle Cloud
IaaSEC2Virtual MachinesCompute EngineOCI Compute
PaaSElastic BeanstalkApp ServiceApp EngineOracle APEX
FaaSLambdaFunctionsCloud Run functionsOCI Functions

SaaS é diferente: você já usa. Gmail, Microsoft 365, Salesforce e Slack são SaaS, de empresas que podem rodar em qualquer nuvem por baixo.

FaaS e serverless

O FaaS é a forma mais conhecida de serverless. Você escreve a função, o provedor cria o ambiente quando um evento chega e o desliga depois. Sem uso, nada roda e nada é cobrado.

Não confunda

PaaS × FaaS

Nos dois você leva só código. A diferença está no que o código faz e em como ele roda.

PaaS

“Tenho uma aplicação inteira para publicar?”

Exemplo
Uma API de pedidos que fica no ar o tempo todo, atendendo requisições.
Foco
Aplicação sempre ligada, com a escala que você configura.

FaaS

“Tenho um pedaço de código para rodar quando algo acontece?”

Exemplo
Gerar a miniatura de uma foto quando ela é enviada.
Foco
Evento dispara a função, com escala automática e cobrança por execução.

Na prática

Como escolher

Se você…Escolha
Precisa controlar o sistema operacional ou instalar um software específicoIaaS
Quer publicar uma aplicação sem cuidar de servidoresPaaS
Tem código curto, disparado por eventos, com tráfego irregularFaaS
Só precisa usar uma ferramenta prontaSaaS

Termos-chave

Seis termos para fixar

Toque no cartão para ver a definição.

ArquiteturaFinanceiro

Teste rápido

Três perguntas, estilo prova

01

A empresa precisa instalar um software específico e escolher a versão do sistema operacional. Qual modelo se encaixa?

02

Um código roda só quando uma foto é enviada, e a empresa paga apenas pelas execuções. Esse modelo é…

03

Em qual modelo o provedor assume a maior parte das responsabilidades?


IaaS, PaaS, FaaS e SaaS aparecem em toda certificação cloud, com os mesmos conceitos na AWS, no Azure, no Google Cloud e na Oracle Cloud. A pergunta de prova costuma ser a mesma: quem gerencia o quê? Quanto mais alto na pilha, mais o provedor assume. O próximo passo da trilha é Segurança e Responsabilidade Compartilhada na Nuvem.