Administre AWS VPC usando aws-cli

Crear VPC

Administrar una VPC y otros recursos como la subred, la tabla de rutas, la puerta de enlace de Internet desde la terminal mediante aws-cli puede ser un poco confuso si no es bueno en VPC. En este artículo, crearemos una VPC con 2 subredes, una tabla de rutas y una puerta de enlace de Internet; estas subredes serán subredes públicas. Después de crear la VPC, intentaremos conectarnos a la instancia EC2 creada en esta VPC. El objetivo de este artículo es presentarle los comandos utilizados para administrar VPC desde la terminal.

Se recomienda primero comprender muy bien la VPC, el enfoque de este artículo no es explicar la VPC. Para conocer las operaciones que se pueden realizar en VPC, visite la documentación oficial aquí.

requisitos previos

  1. Cuenta AWS (Crear si no tienes uno).
  2. Comprensión básica de VPC (haga clic aquí para aprender a crear una VPC desde la consola de AWS).
  3. Usuario de AWS IAM con AmazonVPCFullAccess política adjunta y sus claves secretas y de acceso (Haga clic aquí para obtener información sobre cómo crear un usuario de IAM).
  4. AWS CLI instalado en su máquina local.
  5. Comprensión básica de la instancia EC2 (haga clic aquí para aprender a crear una instancia Ubuntu EC2)

¿Que haremos?

  1. Verifique aws cli y exporte la clave secreta y de acceso de AWS en su máquina local.
  2. Administre VPC mediante aws cli.

Verifique aws cli y exporte el acceso aws y la clave secreta en su máquina local.

Si no tiene la utilidad aws-cli instalada en su máquina, consulte la documentación oficial aquí para instalarlo en su máquina local y luego verifique la versión usando el siguiente comando.

aws --version

Si ejecuta el siguiente comando, obtendrá un error ya que no ha configurado el acceso a su cuenta de AWS en la terminal.

aws sts get-caller-identity

Exporte el acceso de usuario de AWS IAM y las claves secretas en su terminal utilizando los siguientes comandos.

export AWS_ACCESS_KEY_ID=<aws-user-access-key>
export AWS_SECRET_ACCESS_KEY=<aws-user-secret-key>

Esta vez, puede verificar su identidad ejecutando el siguiente comando

aws sts get-caller-identity

Administrar VPC mediante aws-cli

Cree una VPC con el siguiente comando; no creará una VPC predeterminada. 10.0.0.0/16 será el CIDR para la VPC que se creará. Puede especificar un CIDR válido según su elección y requisito.

aws ec2 create-vpc --cidr-block 10.0.0.0/16

Crear VPC

Observe el VpcId en la captura de pantalla anterior. Verá un VpcId diferente en su salida. Tome nota del VpcId, lo necesitaremos en los próximos pasos.

Para describir todas las VPC de su región actual, ejecute el siguiente comando.

aws ec2 describe-vpcs

Al especificar el VpcId, puede describir la VPC específica

aws ec2 describe-vpcs --vpc-ids vpc-03c4278f3b75efd77

Ahora, creemos 2 subredes en la VPC que creamos. Aquí, ambas subredes deben tener bloques CIDR únicos en la VPC.

aws ec2 create-subnet --vpc-id vpc-03c4278f3b75efd77 --cidr-block 10.0.1.0/24
aws ec2 create-subnet --vpc-id vpc-03c4278f3b75efd77 --cidr-block 10.0.2.0/24

Crear subredes

Para hacer públicas las subredes, necesitamos crear una puerta de enlace de Internet

aws ec2 create-internet-gateway

Adjunte Internet Gateway con la VPC que creamos anteriormente.

aws ec2 attach-internet-gateway --internet-gateway-id igw-04f1e4f13f92599c3 --vpc-id vpc-03c4278f3b75efd77

Crear puerta de enlace a Internet

Ahora, vamos a crear una tabla de rutas.

aws ec2 create-route-table --vpc-id vpc-03c4278f3b75efd77

Asocie la tabla de rutas con ambas subredes

aws ec2 associate-route-table --route-table-id rtb-0878d652f460dbf50 --subnet-id subnet-0748ef7a26aefc7cc
aws ec2 associate-route-table --route-table-id rtb-0878d652f460dbf50 --subnet-id subnet-0375b656eb64962e8

Crear tabla de rutas

La creación de una ruta desde la tabla de rutas hasta la puerta de enlace de Internet hará públicas las subredes asociadas con la tabla de rutas.

aws ec2 create-route --route-table-id rtb-0878d652f460dbf50 --destination-cidr-block 0.0.0.0/0 --gateway-id igw-04f1e4f13f92599c3

Ruta de Creta

Ahora tenemos una VPC con 2 subredes, 1 tabla de rutas y una ruta desde la tabla de rutas hasta la puerta de enlace de Internet.

Si creamos una instancia EC2 en esta VPC y cualquiera de las Subredes, la instancia será públicamente accesible desde Internet. Consulte el documento mencionado en el requisito previo para aprender a crear una instancia EC2 de Ubuntu. Al crear una instancia, especifique la VPC que acabamos de crear.

aws ec2 describe-instances --instance-ids i-079acfea39b6ad2c9 | grep VpcId
aws ec2 describe-instances --instance-ids i-079acfea39b6ad2c9 | grep SubnetId
aws ec2 describe-instances --instance-ids i-079acfea39b6ad2c9 | grep PublicIpAddress
ssh -i ~/Downloads/aws-cli.pem [email protected]

Conéctese a EC2

Conclusión

En este artículo, vimos los pasos para crear una VPC con 2 subredes, 1 tabla de rutas, puerta de enlace de Internet y una ruta a la puerta de enlace de Internet desde la tabla de rutas. También vimos que la instancia creada en cualquiera de las Subredes hace que la instancia en público disponible ya que ambas subredes son subredes públicas.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *