Conectar dos VPC y establecer comunicación entre subnets privadas
- Crear una llave privada en la consola de EC2 con el nombre
peering
y cambiar los permisos con el comando
chmod 400 peering.pem
- Utilizar el template de CloudFormation peering.yaml para levantar el Stack con las VPC, internet gateway, subnets, route tables, security e instancias:
aws cloudformation create-stack --stack-name peering --template-body file://peering.yaml
- Revisar la pestaña de Outputs para obtener los valores de:
- InstanceAPubIP
- InstanceAPriIP
- InstanceBPriIP
- Inicia el servicio de SSH Agent para hacer agent forwarding:
eval `ssh-agent -s`
Agrega la llave privada al keychain con:
ssh-add peering.pem
- Utilizar el valor de
InstanceAPubIP
para hacer SSH a la instancia pública en la VPC-A. Utiliza la opción -A para hacer agent forwarding:
ssh -A ec2-user@InstanceAPubIP
- Validar la conexión SSH hacia la instancia privada en la VPC-A con el valor de
InstanceAPriIP
:
ssh ec2-user@10.1.2.29
- Intentar hacer
ping
a la instancia privada en la VPC-B con el valor deInstanceBPriIP
:
ping InstanceBPriIP
- Ir a la consola de VPC y crear una nueva conexión entre VPC-A y VPC-B en la sección
Peering Connections
:
Create Peering Connection
- Peering connection name tag:
Peer-A-B
- VPC (Requester)*:
VPC-A
- Account:
My account
- Region:
This region
- VPC (Accepter):
VPC-B
-
Aceptar la conexión en la solicitud con status
Pending Acceptance
con click derecho yAccept Request
-
Agregar una ruta a la tabla de ruteo
RtAPri
:
- Destination:
10.2.1.0/24
- Target:
Peering Connection
(Seleccionar la conexión previamente creada)
- Agregar una ruta a la tabla de ruteo
RtBPri
:
- Destination:
10.1.2.0/24
- Target:
Peering Connection
(Seleccionar la conexión previamente creada)
Hacer ping desde la instancia InstanceAPriIP
a InstanceBPriIP
Borrar el Peer Connection y eliminar el stack de CloudFormation con:
aws cloudformation delete-stack --stack-name peering