Antes de entender qué resuelve la nube, necesitas entender cómo funcionaba (y sigue funcionando) la informática en red. Casi todo lo que usas a diario —una web, una app del móvil, el correo— se apoya en una idea muy simple llamada modelo cliente-servidor.

La idea en una frase

Hay un programa que pide cosas (el cliente) y otro programa que responde a esas peticiones (el servidor).

El cliente y el servidor son dos roles, no necesariamente dos máquinas distintas. Pero en la práctica suelen estar en ordenadores diferentes conectados por una red.

Una analogía del mundo real: el restaurante

Imagina un restaurante:

  • Tú (el cliente) te sientas y pides un plato al camarero.
  • La cocina (el servidor) recibe la comanda, prepara el plato y te lo entrega.
  • No necesitas saber cómo está organizada la cocina, qué fuegos usan ni dónde compran los ingredientes. Solo pides y recibes.

En informática pasa exactamente lo mismo:

  • Tu navegador (cliente) pide una página: «dame https://tienda.com/productos».
  • El servidor web recibe la petición, busca los datos, genera el HTML y te lo devuelve.
  • Tú no sabes (ni necesitas saber) si detrás hay uno o cien ordenadores.

Cómo se ve técnicamente

Cuando abres una web ocurre, simplificado, esto:

[Tu navegador]  --- petición HTTP --->  [Servidor web]
   (cliente)                                (servidor)
[Tu navegador]  <--- respuesta HTML ---  [Servidor web]
  1. Escribes una URL.
  2. Tu navegador hace una petición (request) usando el protocolo HTTP.
  3. El servidor procesa esa petición (a veces consulta una base de datos).
  4. El servidor devuelve una respuesta (response) con el contenido.
  5. Tu navegador la dibuja en pantalla.

Ejemplo cotidiano que ya usas

Cuando abres WhatsApp Web:

Rol Quién Qué hace
Cliente El navegador en tu portátil Pide los mensajes nuevos
Servidor Los ordenadores de WhatsApp Guardan y entregan los mensajes
Red Internet Transporta las peticiones y respuestas

Tu portátil no guarda toda la conversación de todos los usuarios del mundo: solo pide la parte que te interesa. El trabajo pesado lo hace el servidor.

El servidor «físico» tradicional

Durante décadas, montar un servicio en internet significaba comprar o alquilar un ordenador físico (un servidor) y meterlo en una sala con:

  • Aire acondicionado para que no se sobrecaliente.
  • Conexión a internet redundante.
  • Sistemas de alimentación con baterías por si se va la luz.
  • Alguien que lo vigile y arregle cuando se rompe.

A esa sala se la llama datacenter (centro de datos). Una empresa que quería tener su web «siempre encendida» tenía que ocuparse de todo esto ella misma. A esto se le llama tener la infraestructura on-premise (en tus propias instalaciones), y lo veremos en detalle en el subcapítulo 1.3.

Por qué esto importa para la nube

El modelo cliente-servidor no desaparece con la nube: es la base de todo. Lo que cambia con la nube es quién pone y mantiene el servidor.

  • Antes: tú comprabas, montabas y cuidabas el servidor físico.
  • Con la nube: alquilas el servidor (o solo la capacidad que necesitas) a un proveedor como AWS, y él se encarga del hierro, la sala, el aire acondicionado y la luz.

En otras palabras: el rol "servidor" sigue existiendo, pero deja de ser tu problema físico. Eso es precisamente lo que vamos a explorar en el resto del libro.

Lo que debes recordar

  • El cliente pide y el servidor responde: es la base de internet.
  • Cliente y servidor son roles, normalmente en máquinas distintas conectadas por red.
  • Un servidor físico tradicional requiere espacio, energía, refrigeración y mantenimiento.
  • La nube no elimina el modelo cliente-servidor: solo cambia quién se encarga del servidor.

En el siguiente subcapítulo veremos los problemas concretos que tenía este enfoque tradicional y que dieron origen a la nube.

Cloud, AWS & Terraform — De cero a experto

Capítulo 1 · Qué es el cloud computing

Capítulo 2 · El mercado cloud y los grandes proveedores

Capítulo 3 · Regiones, zonas de disponibilidad y edge

Capítulo 4 · Cómputo: EC2

Capítulo 5 · Almacenamiento: S3

Capítulo 6 · Redes: VPC

Capítulo 7 · Identidad y acceso: IAM

Capítulo 8 · Bases de datos gestionadas

Capítulo 9 · Por qué Infraestructura como Código

Capítulo 10 · HCL: el lenguaje de Terraform

Capítulo 11 · Providers y estado

Capítulo 12 · Tu primera infraestructura real en Terraform

Capítulo 13 · Balanceo de carga y autoescalado

Capítulo 14 · Serverless con Lambda

Capítulo 15 · Mensajería y eventos

Capítulo 16 · Entrega de contenido y DNS

Capítulo 17 · Contenedores en AWS

Capítulo 18 · Módulos: reutilización y composición

Capítulo 19 · Workspaces y gestión de entornos

Capítulo 20 · Backends remotos y locking

Capítulo 21 · Testing de infraestructura

Capítulo 22 · Terraform en CI/CD

Capítulo 23 · Seguridad en profundidad

Capítulo 24 · Observabilidad: logs, métricas y trazas

Capítulo 25 · Optimización de costes

Capítulo 26 · Alta disponibilidad y disaster recovery

Capítulo 27 · Well-Architected Framework de AWS

Capítulo 28 · Arquitecturas serverless a escala

Capítulo 29 · Plataformas de datos en AWS

Capítulo 30 · Multi-cuenta y landing zones

Capítulo 31 · Platform Engineering e Internal Developer Platform

Capítulo 32 · Certificaciones AWS relevantes

Capítulo 33 · Proyectos para consolidar lo aprendido

Capítulo 34 · Recursos y comunidad

© Copyright 2024. Todos los derechos reservados