Pular para o conteúdo principal

Desafio 05: PaaS — Platform as a Service

Tempo Estimado

20-30 min | Custo: Gratuito | Domínio: Conceitos de Nuvem (25-30%)

Habilidades do exame cobertas

  • Descrever Platform as a Service (PaaS)
  • Identificar casos de uso apropriados para PaaS
  • Descrever o modelo de responsabilidade compartilhada em relação ao PaaS

Visão Geral

Platform as a Service (PaaS) é um meio-termo entre IaaS e SaaS. O provedor de nuvem gerencia a infraestrutura E a plataforma (SO, runtime, middleware), enquanto você foca apenas na sua aplicação e dados.

Pense no PaaS como alugar um food truck: você recebe o caminhão totalmente equipado com cozinha (plataforma), e você só traz suas receitas e ingredientes (aplicação e dados). Você não se preocupa com o motor, pneus ou eletricidade.

PaaS é ideal para desenvolvedores que querem construir aplicações sem se preocupar em gerenciar servidores, aplicar patches em sistemas operacionais ou configurar infraestrutura.

Explorar

Tarefa 1: Entender as responsabilidades do PaaS

CamadaQuem gerencia?
Dados e acessoVocê
AplicaçõesVocê
RuntimeAzure
Sistema operacionalAzure
Máquina virtualAzure
Controles de redeCompartilhado
Infraestrutura físicaAzure

Compare isso com IaaS — observe quanto mais o Azure gerencia para você!

Tarefa 2: Explorar serviços PaaS do Azure

  1. No Portal Azure, clique em Create a resource
  2. Pesquise por App Service (Web App) — o serviço PaaS principal
  3. Explore o formulário de criação:
    • Observe que você escolhe um runtime (Node.js, Python, .NET, Java) — não um SO
    • Você não configura tamanho de VM — você escolhe um plano (tier de preço)
    • Sem gerenciamento de disco, sem patches de SO
  4. Clique Cancel — não crie nada

Tarefa 3: Comparar serviços PaaS populares

Serviço PaaS AzureO que fazVocê gerencia
Azure App ServiceHospeda aplicações web e APIsSeu código + configuração
Azure SQL DatabaseBanco de dados relacional gerenciadoConsultas + dados
Azure Cosmos DBBanco de dados NoSQL gerenciadoDados + políticas de acesso
Azure FunctionsExecuta código sem servidoresApenas o código da função
Azure Kubernetes ServiceOrquestração de containers gerenciadaImagens de container + config

Tarefa 4: Comparação PaaS vs IaaS

AspectoIaaS (VM)PaaS (App Service)
Patches de SOVocê aplicaAzure cuida
EscalaVocê configura scale setsAuto-scale integrado
DeployInstalar software na VMDeploy do seu código/container
Modelo de custoPaga pelo uptime da VMPaga pelo plano + consumo
Tempo de deployHoras (configurar SO, instalar runtime)Minutos (enviar código)
ControleAcesso total ao SOApenas nível de aplicação

Tarefa 5: Quando usar PaaS

PaaS é ideal quando:

  • Está construindo novas aplicações web ou APIs
  • Você quer focar no código, não na infraestrutura
  • Você precisa de bancos de dados gerenciados sem overhead de DBA
  • Você quer escala automática e alta disponibilidade
  • Desenvolvimento e deploy rápidos são críticos

PaaS NÃO é ideal quando:

  • Você precisa de controle total no nível do SO
  • Você tem aplicações legadas que requerem configurações específicas de SO
  • Você precisa instalar drivers customizados ou módulos de kernel
Alternativa Azure CLI
# List available App Service plans (does not create anything)
az appservice list-locations --sku F1 --output table

# List available runtimes for App Service
az webapp list-runtimes --output table

Conceitos-Chave

ConceitoDescrição
PaaSA nuvem gerencia infraestrutura + plataforma; você implanta aplicações
Azure App ServicePaaS para hospedar aplicações web, APIs e backends mobile
Banco de dados gerenciadoServiço de banco de dados onde o Azure cuida de backups, patches e HA
Foco no códigoPaaS permite que desenvolvedores se concentrem na lógica de negócios
Menos controle, menos responsabilidadeTrade-off: gerenciamento mais simples mas menos acesso ao nível do SO

Verificação de Conhecimento

1. No modelo PaaS, quem é responsável por gerenciar o sistema operacional?

2. Um desenvolvedor quer implantar uma aplicação web Python sem gerenciar servidores ou patches de SO. Qual modelo de serviço é mais apropriado?

3. Qual dos seguintes é um exemplo de PaaS no Azure?

4. Qual é uma desvantagem do PaaS em comparação com IaaS?

5. Azure SQL Database é um exemplo de qual modelo de serviço em nuvem?

Saiba Mais