Spec-Zone.ru › Ansible

Модуль amazon.aws.ec2_vpc_route_table – Управление таблицами маршрутизации для виртуальных частных облаков AWS

Примечание

Этот модуль входит в коллекцию amazon.aws (версия 8.2.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install amazon.aws. Для использования этого модуля необходимы дополнительные требования, см. Требования для подробностей.

Чтобы использовать его в книге задач, укажите: amazon.aws.ec2_vpc_route_table.

Добавлена в amazon.aws 1.0.0

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Описание

  • Управление таблицами маршрутизации для виртуальных частных облаков (VPCs) AWS.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 3.6
  • boto3 >= 1.26.0
  • botocore >= 1.29.0

Параметры

Параметр

Комментарии

access_key

псевдонимы: aws_access_key_id, aws_access_key, ec2_access_key

строка

Идентификатор ключа доступа AWS.

Дополнительную информацию об маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY в порядке убывания приоритета.

Параметры aws_access_key и profile взаимоисключающие.

Псевдоним aws_access_key_id был добавлен в релизе 5.1.0 для соответствия SDK botocore AWS.

Псевдоним ec2_access_key устарел и будет удален в релизе после 2024-12-01.

Поддержка переменной среды EC2_ACCESS_KEY устарела и будет удалена в релизе после 2024-12-01.

aws_ca_bundle

путь

Расположение файла с набором сертификатов CA для проверки SSL-сертификатов.

Также можно использовать переменную среды AWS_CA_BUNDLE.

aws_config

словарь

Словарь для изменения конфигурации botocore.

Параметры можно найти в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.

debug_botocore_endpoint_logs

логический

Используйте botocore.endpoint логгер для анализа уникальных (а не общих) "resource:action" API-вызовов, произведённых во время задачи, выведя множество в ключ resource_actions результатов задачи. Используйте aws_resource_action обратный вызов, чтобы вывести полный список, созданный во время выполнения книги задач.

Также можно использовать переменную среды ANSIBLE_DEBUG_BOTOCORE_LOGS.

Варианты:

  • false ← (по умолчанию)
  • true

endpoint_url

псевдонимы: ec2_url, aws_endpoint_url, s3_url

строка

URL для подключения вместо стандартных конечных точек AWS. Хотя это можно использовать для подключения к другим совместимым с AWS службам, коллекции amazon.aws и community.aws протестированы только с AWS.

Также можно использовать переменные среды AWS_URL или EC2_URL в порядке убывания приоритета.

Псевдонимы ec2_url и s3_url устарели и будут удалены в релизе после 2024-12-01.

Поддержка переменной среды EC2_URL устарела и будет удалена в релизе после 2024-12-01.

gateway_id

строка

добавлено в amazon.aws 3.2.0

Идентификатор шлюза, который нужно связать с таблицей маршрутизации.

Если gateway_id равно 'None' или '', шлюз будет отключён от таблицы маршрутизации.

lookup

строка

Поиск таблицы маршрутизации по tags или route_table_id.

Если lookup=tag и tags не указаны, поиск по существующей таблице маршрутизации не выполняется, и будет создана новая.

При использовании lookup=tag, при обнаружении нескольких совпадений произойдёт ошибка, и изменения не будут внесены.

Для изменения тегов таблицы маршрутизации используйте lookup=id.

vpc_id необходимо указать при использовании lookup=tag.

Варианты:

  • "tag" ← (по умолчанию)
  • "id"

profile

псевдонимы: aws_profile

строка

Используемый именованный профиль AWS для аутентификации.

Дополнительную информацию об именованных профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

Также можно использовать переменную среды AWS_PROFILE.

Параметр profile взаимоисключающий с параметрами aws_access_key, aws_secret_key и security_token.

propagating_vgw_ids

список / элементы=строка

Включить распространение маршрутов из виртуальных шлюзов, указанных по ID.

purge_routes

логический

Удалить существующие маршруты, которые не найдены в маршрутах.

Варианты:

  • false
  • true ← (по умолчанию)

purge_subnets

логический

Удалить существующие подсети, которые не найдены в подсетях.

Игнорируется, если параметр subnets не указан.

Варианты:

  • false
  • true ← (по умолчанию)

purge_tags

логический

Если purge_tags=true и tags задан, существующие теги ресурса будут удалены, чтобы точно соответствовать параметру tags.

Если параметр tags не задан, теги не будут изменены, даже если purge_tags=True.

Ключи тегов, начинающиеся с aws:, зарезервированы Amazon и не могут быть изменены. Поэтому они будут проигнорированы для параметра purge_tags. Дополнительную информацию см. в документации Amazon https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html#tag-conventions.

Варианты:

  • false
  • true ← (по умолчанию)

region

aliases: aws_region, ec2_region

string

Регион AWS для использования.

Для глобальных сервисов, таких как IAM, Route53 и CloudFront, параметр region игнорируется.

Также могут использоваться переменные окружения AWS_REGION или EC2_REGION.

См. документацию Amazon AWS для получения дополнительной информации http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

Псевдоним ec2_region устарел и будет удален в релизе после 2024-12-01

Поддержка переменной окружения EC2_REGION устарела и будет удалена в релизе после 2024-12-01.

route_table_id

string

ID таблицы маршрутизации для обновления или удаления.

Обязательно, когда lookup=id.

routes

list / elements=dictionary

Список маршрутов в таблице маршрутизации.

Маршруты задаются как словари, содержащие ключи dest и один из gateway_id, instance_id, network_interface_id, или vpc_peering_connection_id.

Значение dest используется для соответствия назначения. Это может быть IPv4 CIDR блок или IPv6 CIDR блок.

Если указан gateway_id, вы можете сослаться на IGW VPC, используя значение igw.

Маршруты обязательны для текущих состояний.

Default: []

secret_key

aliases: aws_secret_access_key, aws_secret_key, ec2_secret_key

string

Секретный ключ доступа AWS.

См. документацию AWS для получения дополнительной информации о токенах доступа https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также могут использоваться переменные окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY в порядке убывания приоритета.

Параметры secret_key и profile являются взаимоисключающими.

Псевдоним aws_secret_access_key был добавлен в релизе 5.1.0 для согласованности с AWS botocore SDK.

Псевдоним ec2_secret_key устарел и будет удален в релизе после 2024-12-01.

Поддержка переменной окружения EC2_SECRET_KEY устарела и будет удалена в релизе после 2024-12-01.

session_token

aliases: aws_session_token, security_token, aws_security_token, access_token

string

Сеансовый токен AWS STS для использования с временными учетными данными.

См. документацию AWS для получения дополнительной информации о токенах доступа https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также могут использоваться переменные окружения AWS_SESSION_TOKEN, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN в порядке убывания приоритета.

Параметры security_token и profile являются взаимоисключающими.

Псевдонимы aws_session_token и session_token были добавлены в релизе 3.2.0, а параметр был переименован из security_token в session_token в релизе 6.0.0.

Псевдонимы security_token, aws_security_token и access_token устарели и будут удалены в релизе после 2024-12-01.

Поддержка переменных окружения EC2_SECRET_KEY и AWS_SECURITY_TOKEN устарела и будет удалена в релизе после 2024-12-01.

state

string

Создать или удалить таблицу маршрутизации VPC.

Choices:

  • "present" ← (default)
  • "absent"

subnets

list / elements=string

Массив подсетей для добавления в эту таблицу маршрутизации. Подсети могут быть указаны либо по ID подсети, тегу имени, либо по CIDR, например, ‘10.0.0.0/24’ или ‘fd00::/8’.

tags

aliases: resource_tags

dictionary

Словарь, представляющий теги, которые будут применены к ресурсу.

Если параметр tags не задан, теги не будут изменены.

validate_certs

boolean

Когда установлено значение false, SSL-сертификаты не будут проверяться для связи с API AWS.

Установка validate_certs=false настоятельно не рекомендуется, в качестве альтернативы рассмотрите возможность установки aws_ca_bundle.

Choices:

  • false
  • true ← (default)

vpc_id

string

ID VPC, в котором будет создана таблица маршрутизации.

Обязательно, когда state=present или lookup=tag.

Примечания

Примечание

  • Теги используются для уникальной идентификации таблиц маршрутизации в VPC, когда параметр route_table_id не указан.
  • Предупреждение: Для модулей переменные среды и конфигурационные файлы считываются из контекста Ansible ‘хост’, а не из контекста ‘контроллер’. Таким образом, файлы могут нуждаться в явном копировании на ‘хост’. Для плагинов поиска и подключения переменные среды и конфигурационные файлы считываются из контекста Ansible ‘контроллер’, а не из контекста ‘хост’.
  • SDK AWS (boto3), который использует Ansible, также может считывать значения по умолчанию для учетных данных и других параметров, таких как регион, из своих конфигурационных файлов в контексте Ansible ‘хост’ (обычно ~/.aws/credentials). См. https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html для получения дополнительной информации.

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Basic creation example:
- name: Set up public subnet route table
  amazon.aws.ec2_vpc_route_table:
    vpc_id: vpc-1245678
    region: us-west-1
    tags:
      Name: Public
    subnets:
      - "{{ jumpbox_subnet.subnet.id }}"
      - "{{ frontend_subnet.subnet.id }}"
      - "{{ vpn_subnet.subnet_id }}"
    routes:
      - dest: 0.0.0.0/0
        gateway_id: "{{ igw.gateway_id }}"
      - dest: ::/0
        gateway_id: "{{ igw.gateway_id }}"
  register: public_route_table

- name: Create VPC gateway
  amazon.aws.ec2_vpc_igw:
    vpc_id: vpc-1245678
  register: vpc_igw

- name: Create gateway route table
  amazon.aws.ec2_vpc_route_table:
    vpc_id: vpc-1245678
    tags:
      Name: Gateway route table
    gateway_id: "{{ vpc_igw.gateway_id }}"
  register: gateway_route_table

- name: Disassociate gateway from route table
  amazon.aws.ec2_vpc_route_table:
    vpc_id: vpc-1245678
    tags:
      Name: Gateway route table
    gateway_id: None
  register: gateway_route_table

- name: Set up NAT-protected route table
  amazon.aws.ec2_vpc_route_table:
    vpc_id: vpc-1245678
    region: us-west-1
    tags:
      Name: Internal
    subnets:
      - "{{ application_subnet.subnet.id }}"
      - 'Database Subnet'
      - '10.0.0.0/8'
    routes:
      - dest: 0.0.0.0/0
        instance_id: "{{ nat.instance_id }}"
  register: nat_route_table

- name: delete route table
  amazon.aws.ec2_vpc_route_table:
    vpc_id: vpc-1245678
    region: us-west-1
    route_table_id: "{{ route_table.id }}"
    lookup: id
    state: absent

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:

Ключ

Описание

route_table

complex

Результат таблицы маршрутов.

Возвращается: всегда

associations

complex

Список ассоциаций между таблицей маршрутов и одной или несколькими подсетями или шлюзом.

Возвращается: всегда

association_state

complex

Состояние ассоциации.

Возвращается: всегда

state

string

Состояние ассоциации.

Возвращается: всегда

Пример: "associated"

state_message

string

Дополнительная информация о состоянии ассоциации.

Возвращается: если доступно

Пример: "Creating association"

gateway_id

string

ID интернет-шлюза или виртуального частного шлюза.

Возвращается: когда таблица маршрутов является таблицей маршрутов шлюза

Пример: "igw-03312309"

main

boolean

Является ли это основной таблицей маршрутов.

Возвращается: всегда

Пример: false

route_table_association_id

string

ID ассоциации между таблицей маршрутов и подсетью.

Возвращается: всегда

Пример: "rtbassoc-ab47cfc3"

route_table_id

string

ID таблицы маршрутов.

Возвращается: всегда

Пример: "rtb-bf779ed7"

subnet_id

string

ID подсети.

Возвращается: когда таблица маршрутов является таблицей маршрутов подсети

Пример: "subnet-82055af9"

id

string

ID таблицы маршрутов (то же самое, что и route_table.route_table_id для обратной совместимости).

Возвращается: всегда

Пример: "rtb-bf779ed7"

owner_id

string

Учётная запись AWS, владеющая ресурсом.

Возвращается: успех

Пример: "123456789012"

propagating_vgws

list / elements=string

Список виртуальных частных шлюзов, распространяющих маршруты.

Возвращается: всегда

Пример: []

route_table_id

string

ID таблицы маршрутов.

Возвращается: всегда

Пример: "rtb-bf779ed7"

routes

complex

Список маршрутов в таблице маршрутов.

Возвращается: всегда

carrier_gateway_id

string

added in amazon.aws 6.0.0

ID шлюза Carrier.

Возвращается: когда маршрут проходит через шлюз Carrier

Пример: "local"

destination_cidr_block

string

IPv4 CIDR блок назначения

Возвращается: всегда

Пример: "10.228.228.0/22"

destination_ipv6_cidr_block

string

Шестнадцатеричный CIDR-блок назначения

Возвращается: при маршруте, включающем шестнадцатеричный адрес назначения

Пример: "2600:1f1c:1b3:8f00:8000::/65"

gateway_id

string

Идентификатор шлюза.

Возвращается: при локальном или интернет-шлюзе

Пример: "local"

instance_id

string

Идентификатор NAT-инстанса.

Возвращается: если маршрут проходит через EC2-инстанс

Пример: "i-abcd123456789"

instance_owner_id

string

AWS-аккаунт, владеющий NAT-инстансом.

Возвращается: если маршрут проходит через EC2-инстанс

Пример: "123456789012"

nat_gateway_id

string

Идентификатор NAT-шлюза.

Возвращается: если маршрут проходит через NAT-шлюз

Пример: "local"

origin

string

Механизм, посредством которого маршрут находится в таблице.

Возвращается: всегда

Пример: "CreateRouteTable"

state

string

Состояние маршрута.

Возвращается: всегда

Пример: "active"

tags

dictionary

Теги, примененные к таблице маршрутов.

Возвращается: всегда

Пример: {"Name": "Public route table", "Public": "true"}

vpc_id

string

Идентификатор VPC, в котором находится маршрут.

Возвращается: всегда

Пример: "vpc-6e2d2407"

Авторы

  • Robert Estelle (@erydo)
  • Rob White (@wimnat)
  • Will Thames (@willthames)

Ссылки на сборку

  • Отслеживание проблем
  • Репозиторий (источники)
  • Общение

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/amazon/aws/ec2_vpc_route_table_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API