El caso
Solo quería vender café. Ahora administra un servidor.
Isaac alquiló VMs para ejecutar el sistema de pedidos de la tienda. Ahora, además de vender café, es él quien instala las actualizaciones del sistema operativo, configura la base de datos y se despierta de madrugada cuando el servidor se cae.
Alquilar infraestructura resolvió el hardware. Todo lo demás siguió siendo suyo.
Este post parte de Fundamentos de la nube y de Máquinas virtuales.
El problema
Alquilar la VM no resolvió todo
En Máquinas virtuales vimos que, en una VM en la nube, el proveedor se encarga del hardware y del hypervisor. De la VM hacia arriba, todo es tuyo: sistema operativo, actualizaciones, lenguaje y bibliotecas, base de datos, escalado.
Cada una de esas tareas es trabajo necesario que no diferencia a la tienda de la competencia. Es el undifferentiated heavy lifting de Fundamentos de la nube.
La solución
Una pila de capas
Toda aplicación en la nube se apoya en una pila: el hardware abajo, la virtualización, el sistema operativo, el runtime (el lenguaje y las bibliotecas en las que corre el código), los datos y, arriba, la aplicación. La fila "escala y capacidad" indica quién decide cuántas copias de la aplicación corren y cuándo crear más.
Los modelos de servicio indican hasta qué capa el proveedor asume el trabajo. Desde ahí hacia arriba, te toca a ti. Cuanto más arriba llega el proveedor, menos trabajo tienes y menos control.
Los modelos
Los cuatro modelos
IaaS (Infrastructure as a Service): infraestructura como servicio
Alquilas la infraestructura: VMs, redes y discos. El control es total, y la responsabilidad también, desde el sistema operativo hacia arriba.
En la tienda: la VM con el sistema de pedidos instalado a mano.
PaaS (Platform as a Service): plataforma como servicio
Llevas el código, y el proveedor se encarga del sistema operativo, del runtime y de la infraestructura. Aun así, configuras el escalado.
En la tienda: el sistema de pedidos publicado en una plataforma administrada, sin tocar un servidor.
FaaS (Function as a Service): función como servicio
Escribes funciones que se ejecutan cuando ocurre un evento. El proveedor enciende el entorno, ejecuta la función, lo apaga y cobra por ejecución.
En la tienda: una función que envía el correo de confirmación cuando llega un pedido.
SaaS (Software as a Service): software como servicio
Software listo, que se usa desde el navegador. Lo configuras, lo usas y te encargas de tus datos. Lo demás es del proveedor.
En la tienda: la herramienta de email marketing y el sistema de facturación.
El nombre en cada nube
Los conceptos valen para cualquier proveedor. Cambian los productos que los ofrecen:
| Modelo | AWS | Azure | Google Cloud | Oracle Cloud |
|---|---|---|---|---|
| IaaS | EC2 | Virtual Machines | Compute Engine | OCI Compute |
| PaaS | Elastic Beanstalk | App Service | App Engine | Oracle APEX |
| FaaS | Lambda | Functions | Cloud Run functions | OCI Functions |
SaaS es distinto: ya lo usas. Gmail, Microsoft 365, Salesforce y Slack son SaaS, de empresas que pueden correr sobre cualquier nube por debajo.
FaaS y serverless
FaaS es la forma más conocida de serverless. Escribes la función, el proveedor crea el entorno cuando llega un evento y lo apaga después. Sin uso, no corre nada y no se cobra nada.
No confundas
PaaS × FaaS
En ambos llevas solo código. La diferencia está en qué hace el código y en cómo se ejecuta.
PaaS
“¿Tengo una aplicación completa para publicar?”
- Ejemplo
- Una API de pedidos que está en línea todo el tiempo, atendiendo solicitudes.
- Foco
- Aplicación siempre encendida, con el escalado que configuras.
FaaS
“¿Tengo un trozo de código para ejecutar cuando algo pasa?”
- Ejemplo
- Generar la miniatura de una foto cuando se sube.
- Foco
- Un evento dispara la función, con escalado automático y cobro por ejecución.
En la práctica
Cómo elegir
| Si tú… | Elige |
|---|---|
| Necesitas controlar el sistema operativo o instalar un software específico | IaaS |
| Quieres publicar una aplicación sin encargarte de servidores | PaaS |
| Tienes código corto, disparado por eventos, con tráfico irregular | FaaS |
| Solo necesitas usar una herramienta lista | SaaS |
Términos clave
Seis términos para fijar
Toca la tarjeta para ver la definición.
Prueba rápida
Tres preguntas, estilo examen
01
La empresa necesita instalar un software específico y elegir la versión del sistema operativo. ¿Qué modelo encaja?
02
Un código corre solo cuando se sube una foto, y la empresa paga únicamente por las ejecuciones. Ese modelo es…
03
¿En qué modelo el proveedor asume la mayor parte de las responsabilidades?
IaaS, PaaS, FaaS y SaaS aparecen en todas las certificaciones de nube, con los mismos conceptos en AWS, Azure, Google Cloud y Oracle Cloud. La pregunta de examen suele ser la misma: ¿quién administra qué? Cuanto más arriba en la pila, más asume el proveedor. El próximo paso de la ruta es Seguridad y responsabilidad compartida en la nube.