Curso de Numpy & Pandas
LinkedIn WhatsApp

Contenido del Curso

1. Fundamentos de Cloud Computing y AWS
1.1 Introducción al Cloud Computing
2. Servicios esenciales de AWS
3. Diseño de arquitecturas escalables y seguras
4. Automatización e Infraestructura como código
5. DevOps y despliegue continuo en AWS
6. Seguridad, monitoreo y optimización de costos

1.1 Introducción al Cloud Computing

¿Qué es Cloud Computing?

El Cloud Computing, o computación en la nube, es un modelo de prestación de servicios tecnológicos que permite acceder a recursos informáticos —como servidores, almacenamiento, bases de datos, redes, software y más— a través de Internet, sin necesidad d e poseer o gestionar físicamente la infraestructura subyacente. En lugar de comprar hardware y software, las empresas consumen estos recursos como un servicio, pagando solo por lo que utilizan.

La idea central es que la infraestructura física y la gestión de los recursos quedan a cargo de un proveedor especializado (por ejemplo, Amazon Web Services, Microsoft Azure o Google Cloud), mientras que el cliente se enfoca en configurar y utilizar dichos recursos para satisfacer sus necesidades de negocio o desarrollo. Este cambio de paradigma ha transformado la forma en que las organizaciones implementan proyectos, ya que elimina muchas barreras de tiempo y costo asociadas a la infraestructura tradicional.

 

Modelos de servicio

Existen tres modelos de servicio principales en el Cloud Computing, cada uno con distintos niveles de control, flexibilidad y responsabilidad:

  • IaaS (Infrastructure as a Service): El proveedor entrega recursos básicos como máquinas virtuales, redes, sistemas de almacenamiento y balanceadores de carga. El cliente gestiona el sistema operativo, las aplicaciones y la configuración. Ejemplo: Amazon EC2.
  • PaaS (Platform as a Service): El proveedor ofrece no solo la infraestructura, sino también entornos y herramientas listas para desarrollar, probar y desplegar aplicaciones. El cliente se concentra en el código y la lógica de negocio. Ejemplo: AWS Elastic Beanstalk.
  • SaaS (Software as a Service): Aplicaciones completas entregadas a través de Internet, accesibles mediante navegador o API. El proveedor gestiona absolutamente todo: infraestructura, plataforma y software. Ejemplo: Google Workspace o Salesforce.

 

Modelos de implementación

El Cloud Computing también se clasifica por su forma de implementación:

  • Nube pública: Recursos compartidos entre múltiples clientes, gestionados en centros de datos del proveedor. Alta escalabilidad y pago por uso.
  • Nube privada: Infraestructura dedicada a una sola organización. Puede estar en las instalaciones del cliente o alojada por un tercero. Mayor control y personalización.
  • Nube híbrida: Combinación de nube pública y privada para aprovechar lo mejor de ambas. Útil para mover cargas de trabajo según demanda o requisitos de seguridad.

 

Ventajas y desafíos

Entre las principales ventajas del Cloud Computing se encuentran:

  • Escalabilidad elástica: aumentar o reducir recursos en minutos.
  • Pago por uso: se factura solo por la capacidad consumida.
  • Acceso global: disponibilidad de servicios desde cualquier parte del mundo.
  • Acceso a tecnologías avanzadas: inteligencia artificial, big data, análisis en tiempo real.

 

Sin embargo, también presenta desafíos:

  • Seguridad y cumplimiento: gestión correcta de permisos y protección de datos.
  • Dependencia de proveedor (vendor lock-in): dificultad para migrar a otro proveedor.
  • Gestión de costos: riesgo de gastos imprevistos si no se controlan los recursos.

 

Comprender qué es el Cloud Computing y sus modelos es el primer paso para tomar decisiones informadas sobre cuándo y cómo adoptarlo. Este conocimiento te permitirá evaluar si una solución debe construirse en infraestructura local, en la nube o en un modelo híbrido, además de elegir el tipo de servicio más adecuado para tus objetivos técnicos y de negocio.

 

Introducción a AWS y su ecosistema

Amazon Web Services (AWS) es la plataforma de servicios en la nube más utilizada a nivel global, con presencia en prácticamente todos los sectores de la industria tecnológica. Ofrece más de 200 servicios que cubren cómputo, almacenamiento, redes, bases de datos, inteligencia artificial, análisis de datos, seguridad y mucho más. En esta clase aprenderás cómo está organizada su infraestructura global, qué categorías de servicios ofrece y cuál es el modelo de responsabilidad que define las obligaciones del proveedor y del cliente.

 

Infraestructura global

AWS organiza su infraestructura física y lógica para garantizar alta disponibilidad, baja latencia y tolerancia a fallos. Sus componentes principales son:

  • Regiones: Áreas geográficas específicas que contienen varios centros de datos. Cada región es independiente y se identifica con un nombre único, por ejemplo: us-east-1 (Norte de Virginia) o eu-west-1 (Irlanda).
  • Zonas de disponibilidad (Availability Zones, AZs): Múltiples centros de datos dentro de una región, físicamente separados pero conectados mediante redes de baja latencia. Su distribución permite diseñar arquitecturas resistentes a fallos.
  • Edge locations: Puntos de presencia distribuidos globalmente para ofrecer contenido y servicios con menor latencia, utilizados principalmente por el servicio de CDN CloudFront.

 

Formas de interactuar con AWS

AWS ofrece tres formas principales para administrar y consumir sus servicios:

  • Consola de administración: Interfaz gráfica accesible desde un navegador web, útil para configuraciones manuales y tareas de exploración.
  • CLI (Command Line Interface): Herramienta que permite interactuar con AWS mediante comandos en la terminal, ideal para automatización y administración avanzada.
  • SDKs (Software Development Kits): Librerías para distintos lenguajes de programación que permiten integrar y manipular recursos de AWS desde aplicaciones personalizadas.

 

Categorías de servicios

AWS agrupa sus servicios en distintas categorías, cada una enfocada en un área específica:

  • Cómputo: EC2 (máquinas virtuales), Lambda (funciones sin servidor), ECS/EKS (orquestación de contenedores).
  • Almacenamiento: S3 (almacenamiento de objetos), EBS (volúmenes de bloque), Glacier (archivado de bajo costo).
  • Bases de datos: RDS (relacional), DynamoDB (NoSQL), Aurora (relacional optimizada).
  • Redes y entrega de contenido: VPC (red privada virtual), Route 53 (DNS), CloudFront (CDN).
  • Seguridad e identidad: IAM (gestión de identidades y accesos), KMS (gestión de claves de cifrado), Shield (protección contra DDoS).

 

Modelo de responsabilidad compartida

Uno de los conceptos clave para trabajar con AWS es entender el modelo de responsabilidad compartida. AWS es responsable de la seguridad de la nube, lo que incluye la infraestructura física, el hardware, las redes y los servicios que ofrece. El cliente, por su parte, es responsable de la seguridad en la nube, es decir: configuración de recursos, control de accesos, cifrado de datos, gestión de credenciales y cumplimiento normativo.

Conocer la organización y funcionamiento del ecosistema de AWS te permite aprovechar al máximo sus capacidades y diseñar arquitecturas que sean seguras, escalables y eficientes. Esta base te ayudará a tomar decisiones correctas sobre qué servicios usar y cómo combinarlos, preparando el terreno para los temas más avanzados que veremos en los siguientes módulos.

 

Creación de tu cuenta AWS y configuración inicial

En esta clase realizaremos el primer paso práctico para comenzar a trabajar en la nube de Amazon Web Services: crear tu cuenta y dejarla configurada con las medidas básicas de seguridad y organización. Aunque el registro es sencillo, hacerlo correctamente desde el principio es fundamental para evitar vulnerabilidades, accesos no autorizados o gastos innecesarios.

 

Registro de la cuenta

Para comenzar, accede a aws.amazon.com y haz clic en “Crear una cuenta de AWS”. Durante el proceso de registro, se te pedirá:

  • Un correo electrónico válido y único para la cuenta.
  • Un nombre de usuario y contraseña seguros.
  • Datos de facturación y un método de pago (tarjeta de crédito o débito).
  • Un número de teléfono para verificación por llamada o SMS.

AWS ofrece el Plan gratuito (Free Tier), que permite usar ciertos servicios sin costo durante 12 meses con límites de uso. Esto es ideal para aprender y realizar pruebas sin generar cargos altos, aunque debes monitorear siempre tu consumo.

 

Medidas de seguridad iniciales

Una vez creada la cuenta, es fundamental configurar medidas de seguridad básicas:

  • Activar MFA (Multi-Factor Authentication) para la cuenta raíz, agregando una segunda capa de verificación mediante una aplicación como Google Authenticator o Authy.
  • No usar la cuenta raíz para tareas diarias. En su lugar, crea un usuario administrativo en IAM con permisos de administrador y utiliza ese usuario para la gestión.
  • Configurar una política de contraseñas segura para todos los usuarios: longitud mínima, caracteres especiales y rotación periódica.

 

Organización y gestión de acceso

En AWS, IAM (Identity and Access Management) es el servicio para gestionar usuarios, grupos, roles y permisos. Desde el inicio, es buena práctica:

  • Asignar permisos según el principio de mínimo privilegio.
  • Crear grupos para roles similares y evitar asignar permisos directamente a usuarios individuales.
  • Configurar etiquetas (tags) para identificar recursos según proyecto, ambiente o responsable.

 

Configuración de AWS CLI

Si planeas interactuar con AWS desde la terminal, instala y configura la CLI (Command Line Interface). Esto implica guardar de forma segura tus credenciales (Access Key y Secret Key) y definir una región predeterminada para tus operaciones. Tener la CLI lista desde el inicio facilita la automatización y el despliegue de recursos.

 

Control de costos

Un paso crucial es activar alertas de facturación. Con Billing Alerts y CloudWatch puedes recibir notificaciones cuando el consumo supere un umbral definido. Esto ayuda a prevenir cargos inesperados, especialmente cuando estás en etapa de pruebas y exploración.

Configurar bien tu cuenta desde el principio es una inversión en seguridad, control y tranquilidad. Con la cuenta creada, los accesos seguros configurados y las alertas de costos activadas, estarás listo para comenzar a desplegar y administrar servicios de AWS de forma profesional y sin riesgos innecesarios.

 

Comprendiendo el modelo de precios en AWS

Antes de comenzar a usar servicios en AWS de forma intensiva, es esencial entender cómo funciona su modelo de precios. Esto no solo te ayudará a evitar sorpresas en la factura, sino que también te permitirá optimizar recursos y elegir las opciones más rentables para cada proyecto. AWS sigue un esquema de pago por uso, lo que significa que pagas únicamente por la capacidad que consumes, sin contratos a largo plazo ni grandes inversiones iniciales.

 

Principios del modelo de precios

Aunque cada servicio de AWS tiene su propia estructura de precios, existen patrones comunes:

  • Pago por uso: Facturación en función del tiempo de uso (por hora o segundo), cantidad de datos almacenados o volumen de datos transferidos.
  • Escalabilidad automática: Ajuste dinámico de recursos para adaptarse a la demanda, evitando pagar por capacidad infrautilizada.
  • Sin compromiso inicial: Puedes iniciar o detener servicios cuando lo necesites, sin penalizaciones por cancelación.

 

Opciones de facturación

AWS ofrece varias modalidades para optimizar costos:

  • On-Demand: Ideal para cargas de trabajo variables o impredecibles, pagando solo por el tiempo exacto de uso.
  • Reserved Instances (RIs): Descuentos significativos a cambio de un compromiso de uso por 1 o 3 años. Útil para cargas estables.
  • Savings Plans: Flexibilidad para obtener descuentos comprometiéndose a un gasto horario fijo durante un periodo determinado.
  • Spot Instances: Permiten usar capacidad sobrante de AWS con descuentos de hasta el 90%, pero con riesgo de interrupción.

 

Componentes que afectan el costo

Los costos en AWS pueden provenir de múltiples factores, por ejemplo:

  • Tiempo de ejecución de instancias o funciones.
  • Volumen de datos almacenados y clase de almacenamiento utilizada.
  • Ancho de banda utilizado para transferencias de datos dentro y fuera de AWS.
  • Servicios adicionales como balanceadores de carga, direcciones IP elásticas o monitoreo avanzado.

 

Herramientas de control y estimación

Para gestionar los costos, AWS ofrece herramientas como:

  • AWS Pricing Calculator: Calculadora en línea para estimar el costo mensual de soluciones antes de implementarlas.
  • Cost Explorer: Análisis detallado del gasto por servicio, región y periodo de tiempo.
  • Budgets: Creación de presupuestos y alertas automáticas para mantener el gasto bajo control.

 

Buenas prácticas para optimizar costos
  • Apagar instancias y recursos no utilizados.
  • Usar clases de almacenamiento adecuadas según el patrón de acceso a datos.
  • Implementar escalado automático para evitar sobredimensionamiento.
  • Monitorear y revisar el gasto periódicamente para ajustar configuraciones.

 

Entender el modelo de precios de AWS es tan importante como dominar la parte técnica. Un diseño bien optimizado no solo funciona correctamente, sino que también es eficiente en costos. Con este conocimiento, podrás tomar decisiones que equilibren rendimiento, disponibilidad y gasto, asegurando un uso inteligente de los recursos en la nube.

 

El modelo de responsabilidad compartida en AWS

Uno de los conceptos más importantes para trabajar correctamente en la nube de AWS es entender el modelo de responsabilidad compartida. Este modelo define qué aspectos de la seguridad y la operación son responsabilidad de AWS y cuáles corresponden al cliente. Ignorar o malinterpretar esta división es una de las principales causas de incidentes de seguridad en entornos cloud.

 

¿Qué es la responsabilidad compartida?

En términos simples, AWS se encarga de la seguridad de la nube, mientras que tú eres responsable de la seguridad en la nube. Esto significa que AWS protege y mantiene la infraestructura física, la red, los centros de datos y los servicios que ofrece, mientras que tú configuras, gestionas y aseguras los recursos que utilizas.

 

Responsabilidades de AWS (seguridad de la nube)
  • Mantenimiento de la infraestructura física: servidores, almacenamiento, redes, hardware y centros de datos.
  • Seguridad física: control de acceso a los centros de datos, monitoreo, redundancia de energía y refrigeración.
  • Gestión del hardware, virtualización y capa de servicios base.
  • Cumplimiento de certificaciones y auditorías internacionales (ISO, SOC, PCI-DSS, etc.).

 

Responsabilidades del cliente (seguridad en la nube)
  • Configuración segura de los servicios (por ejemplo, políticas de acceso en S3 o seguridad de grupos en EC2).
  • Gestión de credenciales y control de accesos con IAM.
  • Protección de datos: cifrado en tránsito y en reposo.
  • Actualización y mantenimiento de sistemas operativos y aplicaciones instaladas en instancias.
  • Monitoreo y auditoría de la actividad en la cuenta.

 

Ejemplos prácticos
  • Si un bucket S3 queda con acceso público y se filtran datos, la responsabilidad es del cliente, ya que AWS proporciona las herramientas para restringir el acceso.
  • Si un servidor EC2 es vulnerado debido a un sistema operativo sin parches, la responsabilidad también es del cliente.
  • Si ocurre una caída en un centro de datos de AWS y afecta tu servicio, AWS es responsable de restablecer la infraestructura, pero tú debes haber diseñado tu arquitectura para tolerar fallos.

 

Buenas prácticas
  • Aplicar el principio de mínimo privilegio en IAM.
  • Habilitar MFA (autenticación multifactor) para cuentas críticas.
  • Configurar cifrado en todos los datos sensibles.
  • Monitorear logs y actividad con CloudTrail y CloudWatch.
  • Realizar revisiones periódicas de configuraciones de seguridad.

 

Comprender el modelo de responsabilidad compartida es esencial para trabajar de manera segura en AWS. No basta con confiar en que AWS es “seguro por defecto”; como cliente, debes tomar medidas activas para proteger tus datos y recursos. Con este conocimiento, podrás diseñar soluciones que no solo sean funcionales y escalables, sino también seguras y conformes a las mejores prácticas de la industria.

 

Regiones, Zonas de disponibilidad y Edge Locations en AWS

Para diseñar arquitecturas en AWS que sean eficientes, seguras y con baja latencia, es fundamental entender cómo está organizada físicamente y lógicamente su infraestructura global. AWS no es una nube “difusa” sin ubicación, sino una red bien estructurada de centros de datos distribuidos estratégicamente en todo el mundo. En esta clase exploraremos tres conceptos clave: regiones, zonas de disponibilidad y edge locations.

 

Regiones

Una región de AWS es una ubicación geográfica específica que contiene un conjunto de zonas de disponibilidad. Cada región está aislada de las demás para garantizar independencia y redundancia. Se identifican con un código, por ejemplo:

  • us-east-1 — Norte de Virginia (Estados Unidos).
  • eu-west-1 — Irlanda.
  • ap-southeast-2 — Sídney (Australia).

Elegir la región adecuada es una decisión estratégica que depende de factores como:

  • Latencia: Cuanto más cerca esté la región de tus usuarios finales, menor será el tiempo de respuesta.
  • Cumplimiento legal: Algunas regulaciones exigen que los datos se almacenen en un país o región específica.
  • Disponibilidad de servicios: No todos los servicios de AWS están disponibles en todas las regiones.
  • Costos: El precio de algunos servicios puede variar de una región a otra.

 

Zonas de disponibilidad (Availability Zones - AZs)

Dentro de cada región existen varias zonas de disponibilidad. Una AZ es un centro de datos independiente con su propia energía, refrigeración y conectividad, pero interconectado con otras AZs de la misma región mediante enlaces de baja latencia. Este diseño permite que, si una AZ presenta un fallo, las demás puedan mantener la operación sin interrupciones significativas.

En la práctica, cuando se habla de “alta disponibilidad” en AWS, implica distribuir recursos y cargas de trabajo entre múltiples AZs dentro de la misma región.

 

Edge Locations

Las edge locations son puntos de presencia que AWS utiliza para acercar contenido y servicios a los usuarios finales. Se utilizan principalmente en el servicio Amazon CloudFront (Content Delivery Network, CDN) para almacenar en caché contenido estático o dinámico y entregarlo con baja latencia.

Por ejemplo, si tienes usuarios en Latinoamérica pero tu infraestructura principal está en Estados Unidos, las edge locations pueden servir los recursos más solicitados desde ubicaciones cercanas como São Paulo o Bogotá, reduciendo considerablemente el tiempo de carga.

 

Buenas prácticas en el uso de regiones y AZs
  • Seleccionar regiones cercanas a los usuarios y que cumplan con la legislación aplicable.
  • Diseñar arquitecturas distribuidas en múltiples AZs para tolerancia a fallos.
  • Usar edge locations para mejorar la experiencia de usuarios globales.
  • Verificar la disponibilidad del servicio requerido en la región elegida antes de implementar.

Comprender la estructura de regiones, zonas de disponibilidad y edge locations te permitirá diseñar soluciones que aprovechen al máximo la infraestructura de AWS. Esto se traduce en menor latencia, mayor disponibilidad y cumplimiento normativo, aspectos esenciales en cualquier proyecto de arquitectura en la nube.

Whatsapp Mentores Tech