Spec-Zone.ru › Ansible

Модуль community.aws.api_gateway_domain — Управление настраиваемыми доменными именами AWS API Gateway

Примечание

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

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

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

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

Добавлена в community.aws 3.3.0

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

Обзор

  • Управление настраиваемыми доменными именами API Gateway для API GW Rest.
  • Настройка настраиваемых доменных имён AWS API Gateway использует CloudFront в фоновом режиме. В результате вы получите распределение CloudFront, настроенное для алиасинга с вашим доменом.
  • До версии 5.0.0 этот модуль назывался community.aws.aws_api_gateway_domain. Использование не изменилось.

Псевдонимы: aws_api_gateway_domain

Требования

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

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

Параметры

Параметр

Комментарии

access_key

aliases: aws_access_key_id, aws_access_key, ec2_access_key

string

Идентификатор ключа доступа 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 для согласованности с AWS botocore SDK.

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

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

aws_ca_bundle

path

Расположение пакета CA, используемого при проверке SSL-сертификатов.

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

aws_config

dictionary

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

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

certificate_arn

string / required

ARN сертификата TLS AWS Certificate Manger (ACM).

debug_botocore_endpoint_logs

boolean

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

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

Варианты:

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

domain_mappings

list / elements=dictionary / required

Сопоставьте базовые пути вашего домена с вашими REST API API GW, которые вы создали ранее. Используйте предоставленный ID настройки API и этап выпуска.

domain_mappings должен быть списком словарей, содержащих три ключа: base_path, rest_api_id и stage.

Пример: [{ base_path: v1, rest_api_id: abc123, stage: production }]

Если вы хотите, чтобы базовый путь был просто /, пропустите параметр полностью или установите его в пустую строку.

domain_name

string / required

Имя домена, которое вы хотите использовать для своего развертывания API GW.

endpoint_type

string

Конфигурация конечной точки API для домена. Используйте EDGE для конечной точки с оптимизацией по краю или используйте REGIONAL или PRIVATE.

Варианты:

  • "EDGE" ← (по умолчанию)
  • "REGIONAL"
  • "PRIVATE"

endpoint_url

aliases: ec2_url, aws_endpoint_url, s3_url

string

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

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

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

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

profile

aliases: aws_profile

string

Именованный профиль 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.

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.

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.

security_policy

string

Установите разрешенные версии TLS с помощью определенных AWS политик. В настоящее время доступны только TLS_1_0 и TLS_1_2.

Варианты:

  • "TLS_1_0"
  • "TLS_1_2" ← (по умолчанию)

session_token

псевдонимы: aws_session_token, security_token, aws_security_token, access_token

string

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

Дополнительную информацию об access token можно найти в документации 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

Создание или удаление настройки пользовательского домена.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

validate_certs

boolean

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

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

Варианты:

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

Примечания

Примечание

  • Не создаёт запись DNS в Route53, для этого используйте модуль community.aws.route53.
  • Поддерживает только сертификаты TLS из AWS ACM, которые можно просто указать по ARN, в то время как AWS API всё ещё предлагает (устаревшие) варианты добавления собственных сертификатов.
  • Внимание: Для модулей переменные среды и конфигурационные файлы считываются из контекста «хоста» Ansible, а не из контекста «контроллера». Поэтому файлы, возможно, нужно явно скопировать на «хост». Для плагинов поиска и подключения переменные среды и конфигурационные файлы считываются из контекста «контроллера» Ansible, а не из контекста «хоста».
  • AWS SDK (boto3), который использует Ansible, также может считывать значения по умолчанию для учетных данных и других настроек, таких как регион, из своих конфигурационных файлов в контексте «хоста» Ansible (обычно ~/.aws/credentials). Дополнительную информацию см. по https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

- name: Setup endpoint for a custom domain for your API Gateway HTTP API
  community.aws.api_gateway_domain:
    domain_name: myapi.foobar.com
    certificate_arn: 'arn:aws:acm:us-east-1:1231123123:certificate/8bd89412-abc123-xxxxx'
    security_policy: TLS_1_2
    endpoint_type: EDGE
    domain_mappings:
      - rest_api_id: abc123
        stage: production
    state: present
  register: api_gw_domain_result

- name: Create a DNS record for your custom domain on route 53 (using route53 module)
  community.aws.route53:
    record: myapi.foobar.com
    value: "{{ api_gw_domain_result.response.domain.distribution_domain_name }}"
    type: A
    alias: true
    zone: foobar.com
    alias_hosted_zone_id: "{{ api_gw_domain_result.response.domain.distribution_hosted_zone_id }}"
    command: create

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

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

Ключ

Описание

response

словарь

Данные, возвращаемые методами create_domain_name (или update и delete) и create_base_path_mapping библиотеки boto3.

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

Пример: {"domain": {"certificate_arn": "arn:aws:acm:xxxxxx", "distribution_domain_name": "xxxx.cloudfront.net", "distribution_hosted_zone_id": "ABC123123", "domain_name": "mydomain.com", "domain_name_status": "AVAILABLE", "endpoint_configuration": {"types": ["EDGE"]}, "security_policy": "TLS_1_2", "tags": {}}, "path_mappings": [{"base_path": "(empty)", "rest_api_id": "abcd123", "stage": "production"}]}

Авторы

  • Stefan Horning (@stefanhorning)

Ссылки на коллекцию

  • Система отслеживания проблем
  • Репозиторий (исходный код)
  • Связь

© 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/community/aws/api_gateway_domain_module.html

Spec-Zone.ru

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