community.aws.ec2_vpc_nat_gateway – Управление шлюзами NAT AWS VPC.
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в книге задач укажите: community.aws.ec2_vpc_nat_gateway.
Введено в версии 1.0.0: коллекции community.aws
Обзор
- Обеспечение состояния шлюзов NAT AWS VPC на основе их идентификатора, выделения и идентификатора подсети.
Требования
Ниже приведены требования к хосту, на котором выполняется этот модуль.
- boto
- boto3
- botocore
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| allocation_id строка | Идентификатор выделения Elastic IP. Если этот параметр не передан и параметр eip_address не передан, для этого шлюза NAT будет сгенерирован EIP. | |
| aws_access_key строка | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Если установлен параметр profile, этот параметр игнорируется. Одновременное использование параметров aws_access_key и profile устарело и эти параметры будут сделаны взаимоисключающими после 2022-06-01. псевдонимы: ec2_access_key, access_key | |
| aws_ca_bundle путь | Расположение пакета CA для проверки SSL-сертификатов. Используется только для модулей на основе boto3. Примечание: Пакет CA считывается со стороны модуля и может потребоваться явное копирование его с контроллера, если он не запускается локально. | |
| aws_config словарь | Словарь для изменения конфигурации botocore. Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Для модулей boto используется только ключ 'user_agent'. См. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto для дополнительной конфигурации boto. | |
| aws_secret_key строка | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Если установлен параметр profile, этот параметр игнорируется. Одновременное использование параметров aws_secret_key и profile устарело и эти параметры будут сделаны взаимоисключающими после 2022-06-01. псевдонимы: ec2_secret_key, secret_key | |
| client_token строка | Необязательный уникальный токен, используемый во время создания для обеспечения идемпотентности. При указании этого параметра необходимо также указать параметр eip_address, в противном случае последующие запуски завершатся ошибкой. | |
| debug_botocore_endpoint_logs логический |
| Используйте логирования botocore.endpoint для анализа уникальных (а не общих) API-вызовов "resource:action", выполняемых во время задачи, выводимых в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в общий список, созданный во время книги задач. Переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS также может использоваться. |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не указан, используется значение переменной окружения EC2_URL, если таковая есть. псевдонимы: aws_endpoint_url, endpoint_url | |
| eip_address строка | Адрес Elastic IP EIP, который вы хотите подключить к этому шлюзу NAT. Если этот параметр не передан и параметр allocation_id не передан, для этого шлюза NAT будет сгенерирован EIP. | |
| if_exist_do_not_create логический |
| Если шлюз NAT уже существует в подсети subnet_id, не создавать новый. |
| nat_gateway_id строка | Идентификатор, динамически назначенный AWS для шлюза NAT при создании. Требуется при использовании опции absent. | |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. Использование profile переопределяет aws_access_key, aws_secret_key и security_token, и поддержка их одновременного использования с profile устарела. aws_access_key, aws_secret_key и security_token будут сделаны взаимоисключающими с profile после 2022-06-01. псевдонимы: aws_profile | |
| region строка | Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковая есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | |
| release_eip логический |
| Отвязать EIP от VPC. Опция допустима только в состоянии absent. Вы должны использовать эту опцию с опцией ожидания. Так как вы не можете освободить адрес во время операции удаления. |
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если установлен параметр profile, этот параметр игнорируется. Одновременное использование параметров security_token и profile устарело и эти параметры будут сделаны взаимоисключающими после 2022-06-01. псевдонимы: aws_security_token, access_token | |
| state строка |
| Обеспечить наличие или отсутствие шлюза NAT. |
| subnet_id строка | Идентификатор подсети, в которой будет создан шлюз NAT. Требуется с опцией present. | |
| validate_certs логический |
| Если установлено значение "нет", SSL-сертификаты не будут проверены для версий boto >= 2.6.0. |
| wait логический |
| Ожидать завершения операции перед возвратом. |
| wait_timeout целое число | Значение по умолчанию: 320 | Сколько секунд ожидать завершения операции перед истечением времени ожидания. |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_PROFILEилиAWS_DEFAULT_PROFILE,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,AWS_CA_BUNDLE - Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/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.
- name: Create new nat gateway with client token.
community.aws.ec2_vpc_nat_gateway:
state: present
subnet_id: subnet-12345678
eip_address: 52.1.1.1
region: ap-southeast-2
client_token: abcd-12345678
register: new_nat_gateway
- name: Create new nat gateway using an allocation-id.
community.aws.ec2_vpc_nat_gateway:
state: present
subnet_id: subnet-12345678
allocation_id: eipalloc-12345678
region: ap-southeast-2
register: new_nat_gateway
- name: Create new nat gateway, using an EIP address and wait for available status.
community.aws.ec2_vpc_nat_gateway:
state: present
subnet_id: subnet-12345678
eip_address: 52.1.1.1
wait: true
region: ap-southeast-2
register: new_nat_gateway
- name: Create new nat gateway and allocate new EIP.
community.aws.ec2_vpc_nat_gateway:
state: present
subnet_id: subnet-12345678
wait: true
region: ap-southeast-2
register: new_nat_gateway
- name: Create new nat gateway and allocate new EIP if a nat gateway does not yet exist in the subnet.
community.aws.ec2_vpc_nat_gateway:
state: present
subnet_id: subnet-12345678
wait: true
region: ap-southeast-2
if_exist_do_not_create: true
register: new_nat_gateway
- name: Delete nat gateway using discovered nat gateways from facts module.
community.aws.ec2_vpc_nat_gateway:
state: absent
region: ap-southeast-2
wait: true
nat_gateway_id: "{{ item.NatGatewayId }}"
release_eip: true
register: delete_nat_gateway_result
loop: "{{ gateways_to_remove.result }}"
- name: Delete nat gateway and wait for deleted status.
community.aws.ec2_vpc_nat_gateway:
state: absent
nat_gateway_id: nat-12345678
wait: true
wait_timeout: 500
region: ap-southeast-2
- name: Delete nat gateway and release EIP.
community.aws.ec2_vpc_nat_gateway:
state: absent
nat_gateway_id: nat-12345678
release_eip: true
wait: yes
wait_timeout: 300
region: ap-southeast-2
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| create_time string | Во всех случаях. | Формат даты и времени ISO 8601 в UTC. Пример: 2016-03-05T05:19:20.282000+00:00' |
| nat_gateway_addresses string | Во всех случаях. | Список словарей, содержащих public_ip, network_interface_id, private_ip и allocation_id. Пример: [{'allocation_id': 'eipalloc-12345', 'network_interface_id': 'eni-12345', 'private_ip': '10.0.0.100', 'public_ip': '52.52.52.52'}] |
| nat_gateway_id string | Во всех случаях. | Идентификатор шлюза NAT VPC Пример: nat-0d1e3a878585988f8 |
| state string | Во всех случаях. | Текущее состояние шлюза NAT. Пример: available |
| subnet_id string | Во всех случаях. | Идентификатор подсети. Пример: subnet-12345 |
| vpc_id string | Во всех случаях. | Идентификатор VPC. Пример: vpc-12345 |
Авторы
- Allen Sanabria (@linuxdynasty)
- Jon Hadfield (@jonhadfield)
- Karen Cheng (@Etherdaemon)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/aws/ec2_vpc_nat_gateway_module.html