DEV Community

Cover image for Conceitos de Computação: IAAS, SAAS, PAAS. Ques bichos são esses?
Paloma Lataliza for AWS Community Builders

Posted on • Originally published at Medium

2

Conceitos de Computação: IAAS, SAAS, PAAS. Ques bichos são esses?

Quando a gente começa aprender sobre nuvem, nos deparamos com uma série de conceitos que podem parecer super confusos no primeiro momento e muitas das vezes dão um nó nas nossas mentes. E assim, com a cultura de cloud vindo cada vez mais forte, conhecer e entender esses conceitos vem sendo fundamental para planejar da melhor forma o uso das várias ferramentas de nuvem no nosso dia a dia, sejam elas para serviços que utilizamos, como acessamos uma aplicação ou até mesmo quando precisamos criar uma infra inteira do zero.

É bem comum vermos em vários lugares as siglas IAAS, PAAS, SAAS quando a gente fala sobre cloud computing. Esses termos são indispensáveis para entender o grau de controle e personalização que temos sobre a nossa aplicação em um provedor de nuvem. As siglas tem os seguintes sgnificados:

  • IAAS: Infraestrutura como Serviço
  • PAAS: Plataforma como Serviço
  • SAAS: Software como Serviço



Junto com esses conceitos de computação temos a matriz de responsabilidade compartilhada, que é basicamente a definição dquem é responsável pelo quê quando estamos lidando com um provedor de nuvem. É por meio dela que a gente entende o que os termos IAAS, PAAS, SAAS realmente são e quais os deveres do usuário e da nuvem na utilização de cada um.

Obs: Para os exemplos de serviços em cloud, o provedor será a AWS.


IAAS - INFRAESTRUTURA COMO SERVIÇO

Image description

No IaaS, o cloud provider provê pra gente os recursos básicos de computação para montarmos nossa infra sob demanda (Você “aluga” um servidor). Nesse modelo a gente basicamente adquiri servidores, armazenamento ou rede em nuvem ao invés de comprar um hardware físico.

Um bom exemplo de IAAS na AWS é o EC2. Nesse serviços as responsabilidades são separadas da seguinte forma:


RESPONSABILIDADE DA AWS

  • Manter o hardware físico do serviço (servidores, rede, armazenamento)
  • Manter o data center seguro
  • Manter a disponibilidade e redundância do serviço (NÃO DA SUA APLICAÇÃO)
  • Fornecer o sistema operacional do serviço



RESPONSABILIDADE DO USUÁRIO

  • Instalar o sitema operacional
  • Instalar algum middleware para sua aplicação
  • Gerenciar o backup e DR da sua aplicação
  • Instalar o sistema operacional do serviço
  • Se preocupar com os patches e atualizações do seu S.O
  • Gererenciar a configuração de desempenho da sua instância
  • Segurança da Aplicação
  • Cuidar dos dados gerados pela aplicação
  • Fazer a configuração dos containers



Usar o IaaS no seu dia a dia pode fazer com que você tenha uma gerência maior do serviço que está hospedando a sua aplicação, mas por outro lado as suas responsabilidades tendem a ser maior também, o que pode dar mais trabalho e ter um tempo maior de configuração.

Image description

Para deixar o entendimento mais fácil, vou usar a famosa analogia “Pizza as Service”.



Nesse cenário é como se a gente comprasse uma pizza congelada na pizzaria e fosse assar em casa. A gente teria que se preocupar com vários detalhes até o momento de consumir a pizza como, ter que pre aquecer o forno, ter objetos que nos ajudem a comer como talheres, copos, mesa, cadeira e também com a bebida que vamos tomar em conjunto. Por mais que tenhamos aqui muitas coisas para fazer a gente tem todo controle sobre como a pizza vai ser preparada.

PAAS — PLATAFORMA COMO SERVIÇO

Image description

Ao contrário do IaaS, o PaaS é um modelo onde a gente não precisa gerenciar nada da infra subjacente. O que a gente faz, é se preocupar com a nossa aplicação, definir os parâmetros dela e usar o serviço escolhido pois todas as tarefas de gerencia são realizadas pelo cloud provider.



Na AWS um exemplo bem legal é o fargate, que gerencia pra você toda a infra subjacente em containers e você se preocupa com a parametrização da sua aplicação. As responsabilidades são separadas da seguinte forma:



RESPONSABILIDADE DA AWS

  • Manter o hardware físico do serviço (servidores, rede, armazenamento)
  • Manter o data center seguro
  • Manter a disponibilidade e redundância do serviço (NÃO DA SUA APLICAÇÃO)
  • Fornecer e instalar o sistema operacional do serviço
  • Servir como middleware para sua aplicação
  • Se preocupar com os patches e atualizações
  • Fazer a orquestração dos containers
  • Garantir a execução e escalonamento dos containers



RESPONSABILIDADE DO USUÁRIO

  • Gerenciar o backup e DR da sua aplicação
  • Instalar a aplicação
  • Cuidar dos dados gerados pela aplicação
  • Fazer a configuração dos containers
  • Segurança da Aplicação



Usar o PaaS para as nossas aplicações é pode ser mais benefico em relação ao IaaS (Quando não precisamos ter um controle ou gerencia maior da nossa infraestrutura), pois não precisamos nos preocupar com a infra subjacente, manutenção do servidor, conseguimos escalar de maneira fácil, muitos serviços ou plataformas PaaS possuem segurança integrada como criptografias e afins, e o melhor é que o nosso tempo maior será para desenvolvimento da aplicação.

Image description

No nosso cenário da Pizza as Service, no modelo PaaS seria como se a gente pedisse um delivery. A pizzaria(cloud provider) se preocupa com todo o preparo da pizza como massa, recheio e entrega, você precisa se preocupar somente em se preparar para comer a pizza.


SAAS — SOFTWARE COMO SERVIÇO

Image description

O SaaS é um modelo com menos responsabilidades para o usuário e consequentemente com o nivel de abstração mais alto entre os demais modelos citados anteriomente. Aqui, o cloud provider faz a gerencia de toda infraestrutura e plataformas e o usuário só se preocupa em acessar a aplicação pela internet.


Um bom exemplo de SaaS é a Netflix, onde ao invés da gente correr em uma loja para comprar um filme, a gente simplesmente faz uma assinatura com nossos dados e usa esse serviço sem nos preocupar com nada a respeito dele no quesito de infraestrutura, desenvolvimento da aplicação, disponibilidade, etc, a gente só quer acesso ao conteudo da aplicação.


Usando o cenário da Netflix, as responsabilidades ficariam assim:


RESPONSABILIDADE DA NETFLIX

  • Manter toda a infraestrutura
  • Desenvolver a aplicação
  • Manter a disponibilidade e redundância do serviço
  • Se preocupar com a segurança de todo o serviço/aplicação
  • Se preocupar com a disponibilidade e escalabilidade



RESPONSABILIDADE DO USUÁRIO

  • Usar boas práticas para segurança da conta, como senhas fortes
  • Estar de acordo com os termos e conformidades da aplicação
  • Tomar cuidado com a visualização dos dados pessoais na aplicação

Image description

Pra fechar a analogia do Pizza as Service, no modelo PaaS esse cenário se aplica quando vamos a pizzaria e comemos nossa pizza lá mesmo. Aqui a gente não se preocupa com nada, somente em chegar e consumir o alimento enquanto a pizzaria fornece tudo para gente.


CONSIDERAÇÕES

As ideias, conceitos, modelos, analogias que falamos nesse blogpost são bem importantes e servem de exemplos para nos mostrar como o gerenciamento e a responsabilidade compartilhada entre indivíduos/usuários e a nuvem/provedores de serviços operam em conjunto.


E no final de tudo podemos dizer que cloud computing e seus modelos de serviço são super parecidos com uma pizzaria, pois sempre tem uma escolha que funciona para gente em uma determinada ocasião, seja ela assar pedir a pizza em um app de delivery ou ir atá pizzaria e comer por lá.

Speedy emails, satisfied customers

Postmark Image

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

Best Practices for Running  Container WordPress on AWS (ECS, EFS, RDS, ELB) using CDK cover image

Best Practices for Running Container WordPress on AWS (ECS, EFS, RDS, ELB) using CDK

This post discusses the process of migrating a growing WordPress eShop business to AWS using AWS CDK for an easily scalable, high availability architecture. The detailed structure encompasses several pillars: Compute, Storage, Database, Cache, CDN, DNS, Security, and Backup.

Read full post

👋 Kindness is contagious

Dive into an ocean of knowledge with this thought-provoking post, revered deeply within the supportive DEV Community. Developers of all levels are welcome to join and enhance our collective intelligence.

Saying a simple "thank you" can brighten someone's day. Share your gratitude in the comments below!

On DEV, sharing ideas eases our path and fortifies our community connections. Found this helpful? Sending a quick thanks to the author can be profoundly valued.

Okay