Saltar al contenido
aprendeaws.dev

Módulo 1 · Fundamentos de la nube/Lección 04

Cómo se usa AWS: consola, CLI, SDK e infraestructura como código

Cuatro formas de hablar con AWS. Todas terminan en la misma API; cambia cuánto se puede repetir y automatizar.

⏱ 10 min

Al terminar podrás

  • →Diferenciar la consola, la CLI, los SDK y la infraestructura como código
  • →Elegir entre una operación de una sola vez y un proceso repetible
  • →Entender que todo en AWS es una llamada a una API

Hay varias formas de pedirle cosas a AWS: hacer clic en una página web, escribir comandos en una terminal, llamarlo desde el código de tu aplicación o describir lo que quieres en un archivo. Parecen mundos distintos, pero por debajo todas hacen lo mismo: llaman a la API de AWS.

Una API es la ventanilla por donde un programa le pide algo a otro. Crear un servidor, listar tus archivos de S3 o borrar una base de datos son, para AWS, peticiones a su API. Lo que cambia entre las cuatro formas es cuánto se puede repetir y automatizar.

Las cuatro formas

  • Consola de administración de AWS

    El mostrador con fotos

    Una aplicación web para crear y ver recursos con formularios y botones. Ideal para aprender, explorar y revisar el estado de las cosas.
  • AWS CLI

    El pedido por teléfono

    Comandos en la terminal, como aws s3 ls. Rápida para tareas puntuales y fácil de meter en un script.
  • AWS SDKs

    El sistema que pide solo

    Librerías para llamar a AWS desde tu código en Python, JavaScript, Java, Go, .NET y otros lenguajes. Así tu aplicación sube archivos a S3 o lee de DynamoDB.
  • AWS CloudFormation

    La orden permanente por escrito

    Describes tu infraestructura en una plantilla (YAML o JSON) y AWS la crea, la actualiza o la borra completa. Es la infraestructura como código nativa de AWS.

Dentro de la infraestructura como código (IaC) hay más opciones. AWS CDK te deja escribir la infraestructura en lenguajes de programación como TypeScript o Python, y la convierte en una plantilla de CloudFormation. Fuera de AWS, Terraform es muy popular y sirve para varios proveedores, y SST está pensado para aplicaciones web y serverless. Este mismo sitio se despliega con SST. La lección Infraestructura como código entra en detalle.

Todo es una llamada a la API

Cuando haces clic en «Launch instance» en la consola, el navegador envía una petición RunInstances a la API de EC2. El comando aws ec2 run-instances envía exactamente la misma. Un SDK y CloudFormation también. Esto tiene tres consecuencias prácticas:

  • Todo lo que haces en la consola se puede automatizar. Si lo hiciste con clics, existe una forma de hacerlo con código.
  • Todo pasa por permisos. Cada llamada se firma con credenciales y AWS revisa con IAM si tienes permiso. Da igual si vienes de la consola o de un script.
  • Todo queda registrado. AWS CloudTrail anota las llamadas: quién, qué, cuándo y desde dónde. Lo ves en Auditoría: CloudTrail y Config.

Una vez o muchas veces

La elección depende de si la tarea se hace una sola vez o se va a repetir. Crear un bucket de prueba para un experimento de diez minutos es una tarea de una sola vez: la consola o la CLI bastan. Crear el mismo ambiente para desarrollo, pruebas y producción, y mantenerlos iguales durante años, es un proceso repetible: eso es trabajo para IaC.

Así se ve el mismo bucket creado de las dos formas:

# Repetible: el archivo se versiona, se revisa y se aplica igual cada vez
resource "aws_s3_bucket" "fotos" {
  bucket = "fotos-mi-empresa-2026"
}
CriterioConsolaCLISDKIaC
Mejor paraAprender, explorar y revisarTareas puntuales y scriptsQue tu aplicación use AWSAmbientes completos y repetibles
Se repite igualNo, depende de quien hace clicSí, si lo guardas en un scriptSí, es códigoSí, por diseño
Deja historial de cambiosSolo en CloudTrailSolo en CloudTrailEn tu repositorio y en CloudTrailEn tu repositorio, revisable antes de aplicar
Riesgo típicoOlvidar un pasoUn comando mal escritoCredenciales en el códigoCambiar recursos a mano y desalinear la plantilla

AWS CloudShell: la terminal que ya viene lista

Para usar la CLI en tu computador tienes que instalarla y configurar credenciales. AWS CloudShell se salta ese paso: es una terminal que se abre dentro de la consola, desde el ícono de terminal en la barra superior, con la CLI ya instalada y con los permisos del usuario con el que iniciaste sesión. Tu carpeta personal se conserva entre sesiones.

Quiz

Pon a prueba lo que aprendiste

0 de 5 correctas · 5 sin responder

  1. 1.Un equipo necesita crear el mismo ambiente (red, servidores y base de datos) en tres regiones, siempre idéntico. ¿Qué usa?

  2. 2.Una aplicación en Python debe guardar las fotos que suben los usuarios en Amazon S3. ¿Qué usa el desarrollador?

  3. 3.¿Qué tienen en común la consola, la CLI y los SDK?

  4. 4.Quieres ejecutar comandos de la AWS CLI desde el navegador, sin instalar nada en tu computador. ¿Qué usas?

  5. 5.¿Qué relación hay entre AWS CDK y AWS CloudFormation?