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

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á.

Top comments (0)