Introducción a Amazon VPC

Amazon Virtual Private Cloud (VPC) te permite lanzar recursos de AWS en una red virtual que tú defines. Esta red virtual se asemeja a una red tradicional que operarías en tu propio centro de datos, con los beneficios de usar la infraestructura escalable de AWS.

Conceptos Clave

  1. Subredes: Segmentos de la VPC donde puedes agrupar recursos basados en reglas de seguridad y necesidades de red.
  2. Rutas: Definen cómo se enruta el tráfico dentro de la VPC y hacia el exterior.
  3. Gateways: Puntos de entrada y salida para el tráfico de red, como Internet Gateway y NAT Gateway.
  4. Grupos de Seguridad y Listas de Control de Acceso (ACLs): Mecanismos para controlar el tráfico entrante y saliente a nivel de instancia y subred.

Creación de una VPC

Paso 1: Acceder a la Consola de VPC

  1. Inicia sesión en la Consola de Administración de AWS.
  2. Navega a la sección de VPC.

Paso 2: Crear una VPC

  1. En el panel de VPC, selecciona "Your VPCs" y haz clic en "Create VPC".
  2. Completa los campos requeridos:
    • Name tag: Nombre descriptivo para tu VPC.
    • IPv4 CIDR block: Rango de direcciones IP para tu VPC (por ejemplo, 10.0.0.0/16).
    • Tenancy: Elige entre "Default" o "Dedicated".
aws ec2 create-vpc --cidr-block 10.0.0.0/16

Paso 3: Crear Subredes

  1. En el panel de VPC, selecciona "Subnets" y haz clic en "Create Subnet".
  2. Completa los campos requeridos:
    • Name tag: Nombre descriptivo para tu subred.
    • VPC: Selecciona la VPC que creaste.
    • Availability Zone: Elige una zona de disponibilidad.
    • IPv4 CIDR block: Rango de direcciones IP para la subred (por ejemplo, 10.0.1.0/24).
aws ec2 create-subnet --vpc-id vpc-12345678 --cidr-block 10.0.1.0/24

Paso 4: Configurar una Internet Gateway

  1. En el panel de VPC, selecciona "Internet Gateways" y haz clic en "Create Internet Gateway".
  2. Completa los campos requeridos y adjunta el Internet Gateway a tu VPC.
aws ec2 create-internet-gateway
aws ec2 attach-internet-gateway --vpc-id vpc-12345678 --internet-gateway-id igw-12345678

Paso 5: Configurar Rutas

  1. En el panel de VPC, selecciona "Route Tables" y haz clic en "Create Route Table".
  2. Completa los campos requeridos y asocia la tabla de rutas con tu subred.
  3. Añade una ruta para el tráfico de Internet.
aws ec2 create-route-table --vpc-id vpc-12345678
aws ec2 create-route --route-table-id rtb-12345678 --destination-cidr-block 0.0.0.0/0 --gateway-id igw-12345678

Ejemplo Práctico

Crear una VPC con una Subred Pública

# Crear VPC
VPC_ID=$(aws ec2 create-vpc --cidr-block 10.0.0.0/16 --query 'Vpc.VpcId' --output text)

# Crear Subred
SUBNET_ID=$(aws ec2 create-subnet --vpc-id $VPC_ID --cidr-block 10.0.1.0/24 --query 'Subnet.SubnetId' --output text)

# Crear Internet Gateway
IGW_ID=$(aws ec2 create-internet-gateway --query 'InternetGateway.InternetGatewayId' --output text)
aws ec2 attach-internet-gateway --vpc-id $VPC_ID --internet-gateway-id $IGW_ID

# Crear Tabla de Rutas
ROUTE_TABLE_ID=$(aws ec2 create-route-table --vpc-id $VPC_ID --query 'RouteTable.RouteTableId' --output text)
aws ec2 create-route --route-table-id $ROUTE_TABLE_ID --destination-cidr-block 0.0.0.0/0 --gateway-id $IGW_ID

# Asociar Tabla de Rutas con Subred
aws ec2 associate-route-table --subnet-id $SUBNET_ID --route-table-id $ROUTE_TABLE_ID

Ejercicio Práctico

Ejercicio 1: Crear una VPC con Subredes Públicas y Privadas

  1. Crear una VPC con un rango de direcciones IP de 10.0.0.0/16.
  2. Crear dos subredes:
    • Subred pública con rango 10.0.1.0/24.
    • Subred privada con rango 10.0.2.0/24.
  3. Configurar un Internet Gateway y asociarlo a la VPC.
  4. Configurar tablas de rutas:
    • Tabla de rutas para la subred pública con una ruta a Internet.
    • Tabla de rutas para la subred privada sin acceso directo a Internet.

Solución

# Crear VPC
VPC_ID=$(aws ec2 create-vpc --cidr-block 10.0.0.0/16 --query 'Vpc.VpcId' --output text)

# Crear Subred Pública
SUBNET_PUBLIC_ID=$(aws ec2 create-subnet --vpc-id $VPC_ID --cidr-block 10.0.1.0/24 --query 'Subnet.SubnetId' --output text)

# Crear Subred Privada
SUBNET_PRIVATE_ID=$(aws ec2 create-subnet --vpc-id $VPC_ID --cidr-block 10.0.2.0/24 --query 'Subnet.SubnetId' --output text)

# Crear Internet Gateway
IGW_ID=$(aws ec2 create-internet-gateway --query 'InternetGateway.InternetGatewayId' --output text)
aws ec2 attach-internet-gateway --vpc-id $VPC_ID --internet-gateway-id $IGW_ID

# Crear Tabla de Rutas Pública
ROUTE_TABLE_PUBLIC_ID=$(aws ec2 create-route-table --vpc-id $VPC_ID --query 'RouteTable.RouteTableId' --output text)
aws ec2 create-route --route-table-id $ROUTE_TABLE_PUBLIC_ID --destination-cidr-block 0.0.0.0/0 --gateway-id $IGW_ID
aws ec2 associate-route-table --subnet-id $SUBNET_PUBLIC_ID --route-table-id $ROUTE_TABLE_PUBLIC_ID

# Crear Tabla de Rutas Privada
ROUTE_TABLE_PRIVATE_ID=$(aws ec2 create-route-table --vpc-id $VPC_ID --query 'RouteTable.RouteTableId' --output text)
aws ec2 associate-route-table --subnet-id $SUBNET_PRIVATE_ID --route-table-id $ROUTE_TABLE_PRIVATE_ID

Conclusión

En esta sección, hemos aprendido a crear y configurar una Amazon VPC, incluyendo la creación de subredes, la configuración de un Internet Gateway y la definición de tablas de rutas. Estos conceptos son fundamentales para diseñar y gestionar redes seguras y escalables en AWS. En el próximo módulo, exploraremos Elastic Load Balancing para distribuir el tráfico de red de manera eficiente.

© Copyright 2024. Todos los derechos reservados