ec2_vpc_route_table - Управление таблицами маршрутизации для виртуальных частных облаков AWS
Новая в версии 2.0.
Обзор
- Управление таблицами маршрутизации для виртуальных частных облаков AWS
Требования
Ниже перечислены требования к хосту, на котором будет выполняться данный модуль.
- python >= 2.6
- boto
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| aws_access_key | Ключ доступа к AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key | |
| aws_secret_key | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key | |
| ec2_url | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется. | |
| lookup |
| Поиск таблицы маршрутизации по меткам или по ID таблицы маршрутизации. Неуникальный поиск по меткам завершится ошибкой. Если метки не указаны, поиск по существующей таблице маршрутизации не выполняется, и будет создана новая таблица. Для изменения меток таблицы маршрутизации необходимо искать по ID. |
| profile (добавлен в 1.6) | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| propagating_vgw_ids | Включить распространение маршрутов из виртуальных шлюзов, указанных по ID. | |
| purge_routes bool (добавлен в 2.3) |
| Очистить существующие маршруты, которые не найдены в маршрутах. |
| purge_subnets (добавлен в 2.3) | По умолчанию: "true" | Очистить существующие подсети, которые не найдены в подсетях. Игнорируется, если не указан параметр subnets. |
| purge_tags bool (добавлен в 2.5) |
| Очистить существующие метки, которые не найдены в таблице маршрутизации |
| region | Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковая имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
Псевдонимы: aws_region, ec2_region | |
| route_table_id | ID таблицы маршрутизации для обновления или удаления. | |
| routes | Список маршрутов в таблице маршрутизации. Маршруты задаются как словари, содержащие ключи 'dest' и один из 'gateway_id', 'instance_id', 'network_interface_id', или 'vpc_peering_connection_id'. Если указан 'gateway_id', вы можете сослаться на IGW VPC, используя значение 'igw'. Маршруты обязательны для текущего состояния. | |
| security_token (добавлен в 1.6) | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token | |
| state |
| Создать или удалить таблицу маршрутизации VPC |
| subnets | Массив подсетей, которые нужно добавить в эту таблицу маршрутизации. Подсети могут быть указаны по ID подсети, тегу "Name", или по CIDR, например, '10.0.0.0/24'. | |
| tags | Словарь тегов ресурсов в формате: { tag1: значение1, tag2: значение2 }. Метки используются для уникальной идентификации таблиц маршрутизации внутри VPC, когда route_table_id не указан. Псевдонимы: resource_tags | |
| validate_certs bool (добавлен в 1.5) |
| Если установлено "нет", сертификаты SSL для boto версий >= 2.6.0 не будут проверяться. |
| vpc_id обязательно | ID VPC, в которой необходимо создать таблицу маршрутизации. |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_ACCESS_KEY_IDилиAWS_ACCESS_KEYилиEC2_ACCESS_KEY,AWS_SECRET_ACCESS_KEYилиAWS_SECRET_KEYилиEC2_SECRET_KEY,AWS_SECURITY_TOKENилиEC2_SECURITY_TOKEN,AWS_REGIONилиEC2_REGION - Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используется для указания региона AWS, когда это необходимо, но это также можно настроить в файле конфигурации boto
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
# Basic creation example:
- name: Set up public subnet route table
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 }}"
register: public_route_table
- name: Set up NAT-protected route table
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
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 | всегда | Список подсетей, связанных с таблицей маршрутизации | ||
| main bool | всегда | Является ли эта таблица маршрутизации основной | ||
| route_table_association_id string | всегда | Идентификатор связи между таблицей маршрутизации и подсетью Пример: rtbassoc-ab47cfc3 | ||
| route_table_id string | всегда | Идентификатор таблицы маршрутизации Пример: rtb-bf779ed7 | ||
| subnet_id string | всегда | Идентификатор подсети Пример: subnet-82055af9 | ||
| id string | всегда | Идентификатор таблицы маршрутизации (такой же, как route_table_id для обратной совместимости) Пример: rtb-bf779ed7 | ||
| propagating_vgws list | всегда | Список виртуальных частных шлюзов, распространяющих маршруты | ||
| route_table_id string | всегда | Идентификатор таблицы маршрутизации Пример: rtb-bf779ed7 | ||
| routes complex | всегда | Список маршрутов в таблице маршрутизации | ||
| destination_cidr_block string | всегда | CIDR-блок назначения Пример: 10.228.228.0/22 | ||
| gateway_id string | при шлюзе локальном или интернет-шлюзе | Идентификатор шлюза Пример: local | ||
| instance_id string | при маршруте через экземпляр EC2 | Идентификатор экземпляра NAT Пример: i-abcd123456789 | ||
| instance_owner_id string | при маршруте через экземпляр EC2 | AWS-аккаунт, владеющий экземпляром NAT Пример: 123456789012 | ||
| nat_gateway_id string | при маршруте через шлюз NAT | Идентификатор шлюза NAT Пример: local | ||
| origin string | всегда | механизм, посредством которого маршрут находится в таблице Пример: CreateRouteTable | ||
| state string | всегда | состояние маршрута Пример: active | ||
| tags dict | всегда | Теги, примененные к таблице маршрутизации Пример: {'Имя': 'Таблица публичных маршрутов', 'Публичный': 'true'} | ||
| vpc_id string | всегда | Идентификатор VPC, в котором находится маршрут Пример: vpc-6e2d2407 | ||
Статус
Этот модуль помечен как stableinterface, что означает, что авторы этого модуля гарантируют, что не будут вноситься несовместимые изменения в интерфейс.
Техническое обслуживание
Этот модуль помечен как сертифицированный, что означает, что он поддерживается партнером Ansible. Дополнительную информацию см. в разделе Техническое обслуживание и поддержка модулей.
Список других модулей, также поддерживаемых партнером Ansible, см. здесь.
Автор
- Robert Estelle (@erydo)
- Rob White (@wimnat)
- Will Thames (@willthames)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/ec2_vpc_route_table_module.html