mateothegreat.aws_vpc_create
Crear VPC en AWS
Características:
- Crea conexiones de emparejamiento (opcional).
- Soporta etiquetas para TODOS los recursos.
Este rol creará una nueva VPC de AWS que incluye:
- Conexiones de emparejamiento
- Puerta de enlace a Internet
- Puerta de enlace NAT
- Tabla de rutas
- Subredes
Requisitos
pip install ansible boto3 boto
Variables
aws_vpc_create:
profile: "default" # Nombre del perfil en el archivo de credenciales de AWS.
name: "test-1" # Nombre de la VPC que deseas crear.
region: "eu-central-1" # Región de AWS.
cidr: "201.0.0.0/16" # CIDR para toda la VPC.
internet_gateway: "true" # Crea una puerta de enlace a Internet.
nat_gateway: "true" # Crea una puerta de enlace NAT con IP elástica.
allow_duplicate_name: "false" # No fallar si ya existe una VPC con el mismo nombre.
allow_duplicate_cidr: "false" # No fallar si ya existe una VPC con el mismo CIDR.
purge_cidrs: "true" # Elimina todos los CIDR's si se usa una VPC existente.
peering:
- name: "test-1-peer"
vpc_id: "vpc-0504d01b93f46e610"
region: "eu-central-1"
cidr: "22.16.0.0/16"
update_accepter_route_table: "true" # Agrega la ruta de regreso a esta VPC en la tabla de rutas del aceptante.
dns:
enable_support: "true" # Habilita el soporte DNS para esta VPC.
enable_hostnames: "true" # Habilita la resolución de nombres de host para esta VPC.
subnets:
- name: "public-1"
type: "public"
az: "eu-central-1a"
cidr: "201.0.1.0/24"
- name: "public-2"
type: "public"
cidr: "201.0.2.0/24"
az: "eu-central-1b"
- name: "private-1"
type: "private"
cidr: "201.0.3.0/24"
az: "eu-central-1a"
- name: "private-2"
type: "private"
cidr: "201.0.4.0/24"
az: "eu-central-1b"
tags:
created_by: "Matthew Davis"
Ejemplo de Uso
Agrega lo siguiente a un archivo como playbook.yaml
:
- hosts: monitoring
roles:
- role: "mateothegreat.aws_vpc_create"
vars:
aws_vpc_create:
profile: "default" # Nombre del perfil en el archivo de credenciales de AWS.
name: "test-1" # Nombre de la VPC que deseas crear.
region: "eu-central-1" # Región de AWS.
cidr: "201.0.0.0/16" # CIDR para toda la VPC.
internet_gateway: "true" # Crea una puerta de enlace a Internet.
nat_gateway: "true" # Crea una puerta de enlace NAT con IP elástica.
allow_duplicate_name: "false" # No fallar si ya existe una VPC con el mismo nombre.
allow_duplicate_cidr: "false" # No fallar si ya existe una VPC con el mismo CIDR.
purge_cidrs: "true" # Elimina todos los CIDR's si se usa una VPC existente.
peering:
- name: "test-1-peer"
vpc_id: "vpc-0504d01b93f46e610"
region: "eu-central-1"
cidr: "22.16.0.0/16"
update_accepter_route_table: "true" # Agrega la ruta de regreso a esta VPC en la tabla de rutas del aceptante.
dns:
enable_support: "true" # Habilita el soporte DNS para esta VPC.
enable_hostnames: "true" # Habilita la resolución de nombres de host para esta VPC.
subnets:
- name: "public-1"
type: "public"
az: "eu-central-1a"
cidr: "201.0.1.0/24"
- name: "public-2"
type: "public"
cidr: "201.0.2.0/24"
az: "eu-central-1b"
- name: "private-1"
type: "private"
cidr: "201.0.3.0/24"
az: "eu-central-1a"
- name: "private-2"
type: "private"
cidr: "201.0.4.0/24"
az: "eu-central-1b"
tags:
created_by: "Matthew Davis"
Ejecuta con ansible-playbook -i <tu archivo de inventario> playbook.yaml
.
Contacto
Puedes comunicarte conmigo en https://matthewdavis.io.
Instalar
ansible-galaxy install mateothegreat.aws_vpc_create
Licencia
Unknown
Descargas
120
Propietario
🚀 ☞ Senior Software Architect, Cloud Engineer & DevOps Advocate. ✌