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
- Subredes: Segmentos de la VPC donde puedes agrupar recursos basados en reglas de seguridad y necesidades de red.
- Rutas: Definen cómo se enruta el tráfico dentro de la VPC y hacia el exterior.
- Gateways: Puntos de entrada y salida para el tráfico de red, como Internet Gateway y NAT Gateway.
- 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
- Inicia sesión en la Consola de Administración de AWS.
- Navega a la sección de VPC.
Paso 2: Crear una VPC
- En el panel de VPC, selecciona "Your VPCs" y haz clic en "Create VPC".
- 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".
Paso 3: Crear Subredes
- En el panel de VPC, selecciona "Subnets" y haz clic en "Create Subnet".
- 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).
Paso 4: Configurar una Internet Gateway
- En el panel de VPC, selecciona "Internet Gateways" y haz clic en "Create Internet Gateway".
- 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
- En el panel de VPC, selecciona "Route Tables" y haz clic en "Create Route Table".
- Completa los campos requeridos y asocia la tabla de rutas con tu subred.
- 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
- Crear una VPC con un rango de direcciones IP de 10.0.0.0/16.
- Crear dos subredes:
- Subred pública con rango 10.0.1.0/24.
- Subred privada con rango 10.0.2.0/24.
- Configurar un Internet Gateway y asociarlo a la VPC.
- 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.
Curso de AWS
Módulo 1: Introducción a AWS
- ¿Qué es AWS?
- Configuración de tu cuenta de AWS
- Infraestructura global de AWS
- Consola de administración de AWS