aws_vpc_create

Создание AWS VPC

Особенности:

  • Создание (по желанию) соединений для пиринга.
  • Поддержка тегирования для ВСЕХ ресурсов.

Эта роль создаст новую AWS VPC, включая:

  • Соединение для пиринга
  • Шлюз в Интернет
  • Шлюз NAT
  • Таблицы маршрутизации
  • Подсети

Требования

pip install ansible boto3 boto

Переменные

aws_vpc_create:
  profile: "default"            # Имя профиля из файла учетных данных AWS.
  name: "test-1"                # Имя VPC, которую вы хотите создать.
  region: "eu-central-1"        # Регион AWS.
  cidr: "201.0.0.0/16"          # CIDR для всей VPC.
  internet_gateway: "true"      # Создать шлюз в Интернет.
  nat_gateway: "true"           # Создать NAT шлюз с эластичным IP.
  allow_duplicate_name: "false" # Не завершать работу, если VPC с таким именем уже существует.
  allow_duplicate_cidr: "false" # Не завершать работу, если VPC с таким CIDR уже существует.
  purge_cidrs: "true"           # Удаляет все CIDR, если используется существующая VPC.
  peering:
    - name: "test-1-peer"
      vpc_id: "vpc-0504d01b93f46e610"
      region: "eu-central-1"
      cidr: "22.16.0.0/16"
      update_accepter_route_table: "true" # Добавить маршрут обратно в эту VPC в маршрутной таблице принимающей стороны.
  dns:
    enable_support: "true"      # Включить поддержку DNS для этой VPC.
    enable_hostnames: "true"    # Включить разрешение имен для этой 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"

Пример использования

Добавьте следующее в файл, например, playbook.yaml:

- hosts: monitoring
  roles:
    - role: "mateothegreat.aws_vpc_create"
      vars:
        aws_vpc_create:
          profile: "default"            # Имя профиля из файла учетных данных AWS.
          name: "test-1"                # Имя VPC, которую вы хотите создать.
          region: "eu-central-1"        # Регион AWS.
          cidr: "201.0.0.0/16"          # CIDR для всей VPC.
          internet_gateway: "true"      # Создать шлюз в Интернет.
          nat_gateway: "true"           # Создать NAT шлюз с эластичным IP.
          allow_duplicate_name: "false" # Не завершать работу, если VPC с таким именем уже существует.
          allow_duplicate_cidr: "false" # Не завершать работу, если VPC с таким CIDR уже существует.
          purge_cidrs: "true"           # Удаляет все CIDR, если используется существующая VPC.
          peering:
            - name: "test-1-peer"
              vpc_id: "vpc-0504d01b93f46e610"
              region: "eu-central-1"
              cidr: "22.16.0.0/16"
              update_accepter_route_table: "true" # Добавить маршрут обратно в эту VPC в маршрутной таблице принимающей стороны.
          dns:
            enable_support: "true"      # Включить поддержку DNS для этой VPC.
            enable_hostnames: "true"    # Включить разрешение имен для этой 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"

Запустите с помощью ansible-playbook -i <ваш файл инвентаря> playbook.yaml.

Контакт

Вы можете обратиться ко мне по адресу https://matthewdavis.io.

О проекте

Provision a complete AWS VPC.

Установить
ansible-galaxy install mateothegreat/aws-vpc-create
Лицензия
Unknown
Загрузки
107
Владелец
🚀 ☞ Senior Software Architect, Cloud Engineer & DevOps Advocate. ✌