Spec-Zone.ru › Ansible

Модуль community.aws.cloudfront_distribution – Создание, обновление и удаление распределений AWS CloudFront

Примечание

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

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

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

Чтобы использовать его в плейбуке, укажите: community.aws.cloudfront_distribution.

Новое в community.aws 1.0.0

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

Описание

  • Обеспечивает простое создание, обновление и удаление распределений CloudFront.

Требования

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

  • 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.

alias

string

Имя псевдонима (CNAME), используемого в дистрибутиве. Это используется для эффективного обращения к дистрибутиву по его псевдониму, так как псевдоним может использоваться только одним дистрибутивом на одну учетную запись AWS. Эта переменная позволяет избежать необходимости указывать distribution_id, а также e_tag или caller_reference существующего дистрибутива.

aliases

list / elements=string

Список псевдонимов доменных имен (CNAME) в виде строк, которые будут использоваться для дистрибутива.

Каждый псевдоним должен быть уникальным для всех дистрибутивов в учетной записи AWS.

Значение по умолчанию: []

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.

cache_behaviors

list / elements=dictionary

Список словарей, описывающих поведение кэширования для дистрибутива.

Порядок списка сохраняется между запусками, если purge_cache_behaviors не включен.

cache_policy_id

string

добавлено в community.aws 7.1.0

Идентификатор политики кэширования, которую CloudFront должен использовать для поведения кэширования.

Поведение должно использовать либо параметр cache_policy_id, либо forwarded_values.

Для получения дополнительной информации см. документацию CloudFront по адресу https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html

forwarded_values

dictionary

Словарь, который указывает, как CloudFront обрабатывает строки запросов и cookie.

Поведение должно использовать либо параметр cache_policy_id, либо forwarded_values.

allowed_methods

dictionary

Словарь, который управляет тем, какие HTTP-методы CloudFront обрабатывает и перенаправляет.

cached_methods

list / elements=string

Список HTTP-методов, к которым вы хотите, чтобы CloudFront применял кэширование.

Это может быть [GET,HEAD], или [GET,HEAD,OPTIONS].

items

list / elements=string

Список HTTP-методов, которые вы хотите, чтобы CloudFront обрабатывал и перенаправлял.

compress

boolean

Хотите ли вы, чтобы CloudFront автоматически сжимал файлы.

Варианты:

  • false
  • true

cookies

dictionary

Словарь, который указывает, хотите ли вы, чтобы CloudFront перенаправлял cookie на origin и, если да, какие именно.

forward

string

Указывает, какие cookie следует перенаправлять на origin для этого поведения кэширования.

Допустимые значения: all, none, или whitelist.

whitelisted_names

list / elements=string

Список cookie, которые следует перенаправлять на origin для этого поведения кэширования.

default_ttl

integer

Умолчательное время, в течение которого объекты должны оставаться в кэшах CloudFront.

field_level_encryption_id

string

Конфигурация шифрования на уровне полей, которую вы хотите, чтобы CloudFront использовал для шифрования определенных полей данных.

headers

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

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

Чтобы передать все заголовки, используйте список, содержащий единственный элемент ‘*’ (['*'])

lambda_function_associations

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

Список ассоциаций с функциями Lambda, которые необходимо использовать для данного кэширования.

event_type

строка

Определяет тип события, который запускает вызов функции Lambda.

Это может быть viewer-request, origin-request, origin-response или viewer-response.

lambda_function_arn

строка

ARN функции Lambda.

max_ttl

целое число

Максимальное время хранения объектов в кэшах CloudFront.

min_ttl

целое число

Минимальное время хранения объектов в кэшах CloudFront.

query_string

логическое

Указывает, нужно ли CloudFront передавать строки запроса источнику, связанному с этим кэшированием.

Варианты:

  • false
  • true

query_string_cache_keys

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

Список параметров строки запроса, которые CloudFront должен использовать в качестве основы для кэширования для данного кэширования.

smooth_streaming

логическое

Распределять ли медиафайлы в формате Microsoft Smooth Streaming.

Варианты:

  • false
  • true

trusted_signers

словарь

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

enabled

логическое

Требовать ли от зрителей использования подписанных URL для доступа к файлам, указанным в path_pattern и target_origin_id

Варианты:

  • false
  • true

items

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

Список доверенных подписывающих сторон для данного кэширования.

viewer_protocol_policy

строка

Протокол, который зрители могут использовать для доступа к файлам в источнике, указанном в target_origin_id, когда запрос соответствует path_pattern.

Допустимые значения — allow-all, redirect-to-https и https-only.

origin_request_policy_id

строка

добавлено в community.aws 7.1.0

Идентификатор политики запроса к источнику для CloudFront, который необходимо использовать для кэширования.

Дополнительную информацию см. в документации CloudFront по адресу https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html

path_pattern

строка

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

response_headers_policy_id

строка

Идентификатор политики заголовков, который CloudFront добавляет к ответам, которые он отправляет зрителям.

target_origin_id

строка

Идентификатор источника, к которому CloudFront должен по умолчанию направлять запросы.

caller_reference

строка

Уникальный идентификатор для создания и обновления распределений CloudFront.

Каждая ссылка вызывающего пользователя должна быть уникальной для всех распределений. Например, ссылка вызывающего пользователя, используемая в веб-распределении, не может быть повторно использована в потоковом распределении. Этот параметр можно использовать вместо distribution_id для ссылки на существующее распределение. Если не указано, по умолчанию используется отметка даты и времени в формате YYYY-MM-DDTHH:MM:SS.ffffff.

comment

строка

Комментарий, описывающий распределение CloudFront.

Если не указано, по умолчанию используется общее сообщение о том, что оно было создано с помощью Ansible, и отметка даты и времени.

END_OF_DOCUMENT_MARKER

custom_error_responses

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

Элемент конфигурации, представляющий собой список[] сложных пользовательских ответов на ошибки, которые необходимо указать для распределения.

Этот атрибут настраивает пользовательские сообщения об ошибках HTTP, возвращаемые пользователю.

error_caching_min_ttl

целое число

Время (в секундах), в течение которого CloudFront будет кэшировать коды состояния.

error_code

целое число

Код ошибки, для которой предназначена пользовательская страница ошибки.

response_code

целое число

Код HTTP-статуса, который CloudFront должен вернуть пользователю, когда источник возвращает код HTTP-статуса, указанный в error_code.

response_page_path

строка

Путь к пользовательской странице ошибки, которую CloudFront должен вернуть просмотрщику, когда источник возвращает код HTTP-статуса, указанный в error_code.

debug_botocore_endpoint_logs

булево

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

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

Варианты:

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

default_cache_behavior

словарь

Словарь, определяющий поведение кэширования по умолчанию для распределения.

Если не указано, target_origin_id определяется как target_origin_id первого допустимого cache_behavior в cache_behaviors с настройками по умолчанию.

cache_policy_id

строка

добавлен в community.aws 7.1.0

Идентификатор политики кэширования для CloudFront, который используется для поведения кэширования по умолчанию.

Поведение должно использовать либо cache_policy_id, либо forwarded_values вариант.

Дополнительную информацию см. в документации CloudFront по адресу https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-the-cache-key.html

forwarded_values

словарь

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

Поведение должно использовать либо cache_policy_id , либо forwarded_values вариант.

allowed_methods

словарь

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

cached_methods

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

Список HTTP-методов, для которых CloudFront должен применять кэширование.

Это может быть [GET,HEAD], или [GET,HEAD,OPTIONS].

items

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

Список HTTP-методов, которые CloudFront должен обрабатывать и пересылать.

compress

булево

Вы хотите, чтобы CloudFront автоматически сжимал файлы?

Варианты:

  • false
  • true

cookies

словарь

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

forward

строка

Указывает, какие куки пересылать источнику для данного поведения кэширования.

Допустимые значения all, none, или whitelist.

whitelisted_names

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

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

default_ttl

целое число

Время по умолчанию, в течение которого объекты должны храниться в кэшах CloudFront.

field_level_encryption_id

строка

Настройка шифрования полей, которую CloudFront должен использовать для шифрования определенных полей данных.

headers

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

Список заголовков, которые нужно переслать источнику для данного поведения кэширования.

Для пересылки всех заголовков используйте список, содержащий один элемент «*» (['*']).

lambda_function_associations

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

Список ассоциаций с функциями Lambda, которые следует использовать для данного поведения кэширования.

event_type

строка

Указывает тип события, который запускает вызов функции Lambda.

Это может быть viewer-request, origin-request, origin-response или viewer-response.

lambda_function_arn

строка

ARN функции Lambda.

max_ttl

целое число

Максимальное время хранения объектов в кэшах CloudFront.

min_ttl

целое число

Минимальное время хранения объектов в кэшах CloudFront.

query_string

логическое значение

Указывает, нужно ли CloudFront пересылать строки запроса источнику, связанному с этим поведением кэширования.

Варианты:

  • false
  • true

query_string_cache_keys

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

Список параметров строки запроса, которые CloudFront должен использовать в качестве основы для кэширования для поведения кэширования.

smooth_streaming

логическое значение

Указывает, нужно ли распределять файлы мультимедиа в формате Microsoft Smooth Streaming.

Варианты:

  • false
  • true

trusted_signers

словарь

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

enabled

логическое значение

Указывает, требуется ли пользователям использовать подписанные URL-адреса для доступа к файлам, указанным в target_origin_id.

Варианты:

  • false
  • true

items

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

Список доверенных подписывающих субъектов для этого поведения кэширования.

viewer_protocol_policy

строка

Протокол, который могут использовать пользователи для доступа к файлам в источнике, указанном параметром target_origin_id.

Допустимые значения allow-all, redirect-to-https и https-only.

origin_request_policy_id

строка

добавлен в community.aws 7.1.0

Идентификатор политики запроса к источнику для CloudFront, который необходимо использовать для поведения кэширования по умолчанию.

Дополнительная информация в документации CloudFront по адресу https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/controlling-origin-requests.html

response_headers_policy_id

строка

Идентификатор политики заголовков, которую CloudFront добавляет к ответам, отправляемым пользователям.

target_origin_id

строка

Идентификатор источника, к которому CloudFront должен по умолчанию перенаправлять запросы.

default_origin_domain_name

строка

Доменное имя, которое следует использовать для источника, если не указаны параметры origins.

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

Не следует использовать совместно с distribution_id, caller_reference или alias.

default_origin_path

строка

Путь к источнику по умолчанию для указания источника, если не указаны параметры origins. По умолчанию пустая строка, если не указано.

default_root_object

строка

Элемент конфигурации, который указывает путь для запроса, когда пользователь запрашивает источник.

Например, если указано «index.html», это соответствует www.example.com/index.html, когда пользователь запрашивает www.example.com.

Это предотвращает раскрытие всего источника распределения на корневом уровне.

distribution_id

строка

Идентификатор распределения CloudFront.

Этот параметр может быть обменён с alias или caller_reference и используется совместно с e_tag.

e_tag

string

Уникальный идентификатор измененного или существующего распределения. Используется совместно с distribution_id.

Определяется автоматически, если не указан.

enabled

boolean

Булево значение, определяющее, включено или выключено распределение.

По умолчанию false.

Варианты:

  • false
  • true

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.

http_version

string

Версия протокола http, используемая для распределения.

AWS по умолчанию использует http2.

Допустимые значения http1.1, http2, http3 и http2and3.

ipv6_enabled

boolean

Определяет, включена ли поддержка IPv6.

По умолчанию false.

Варианты:

  • false
  • true

logging

dictionary

Элемент конфигурации, являющийся сложным объектом, определяющим ведение журнала для распределения.

bucket

string

Ведро S3 для хранения журнала.

enabled

boolean

При enabled=true CloudFront будет регистрировать доступ в ведро S3.

Варианты:

  • false
  • true

include_cookies

boolean

При include_cookies=true CloudFront включит куки в журналы.

Варианты:

  • false
  • true

prefix

string

Префикс, добавляемый в имена объектов S3.

origins

list / elements=dictionary

Элемент конфигурации, представляющий собой список сложных объектов происхождения, которые необходимо указать для распределения. Используется для создания и обновления распределений.

connection_attempts

integer

добавлено в community.aws 6.0.0

Количество попыток подключения CloudFront к источнику. Минимальное значение 1, максимальное 3.

По умолчанию: 3

connection_timeout

integer

добавлено в community.aws 6.0.0

Количество секунд, которое CloudFront ожидает при попытке установить соединение с источником. Минимальный таймаут 1 секунда, максимальный 10 секунд.

По умолчанию: 10

custom_headers

list / elements=dictionary

Пользовательские заголовки, которые вы хотите добавить к запросу перед передачей его источнику.

Дополнительную информацию см. в документации CloudFront по адресу https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/forward-custom-headers.html.

header_name

string

Имя заголовка, который CloudFront должен передать вашему источнику.

header_value

string

Значение заголовка, указанного в поле header_name.

custom_origin_config

dictionary

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

http_port

integer

Порт HTTP, на котором работает настраиваемый источник.

https_port

integer

Порт HTTPS, на котором работает настраиваемый источник.

END_OF_DOCUMENT_MARKER

origin_keepalive_timeout

целое число

Тайм-аут поддержания соединения (в секундах).

origin_protocol_policy

строка

Политика протокола источника, которую нужно применить к вашему источнику.

origin_read_timeout

целое число

Тайм-аут (в секундах) при чтении из источника.

origin_ssl_protocols

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

Список протоколов SSL/TLS, которые вы хотите использовать CloudFront при общении с источником по HTTPS.

domain_name

строка

Доменное имя, которое CloudFront будет использовать в качестве источника.

Дополнительная информация в документации CloudFront по адресу https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesDomainName

id

строка

Уникальный идентификатор источника или группы источников. id должен быть уникальным в пределах распределения.

origin_path

строка

Указывает CloudFront на запрос контента из каталога в вашем Amazon S3-бакете или пользовательском источнике.

origin_shield

словарь

добавлен в community.aws 6.0.0

Укажите параметры защиты источника для источника.

enabled

булево

Указывает, хотите ли вы включить Origin Shield для источника.

Варианты:

  • false
  • true

origin_shield_region

строка

Укажите AWS-регион, который будет использоваться для Origin Shield. Требуется, если Origin Shield включен.

s3_origin_access_identity_enabled

булево

Используйте идентификатор доступа к источнику, чтобы настроить источник таким образом, чтобы пользователи могли получить доступ к объектам в Amazon S3-бакете только через CloudFront.

Автоматически создаст для вас идентификатор, если не указан s3_origin_config.

См. также https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html.

Варианты:

  • false
  • true

s3_origin_config

словарь

Укажите идентификатор доступа к источнику для S3-источников.

origin_access_identity

строка

Существующий идентификатор доступа к источнику в формате origin-access-identity/cloudfront/OID_ID.

price_class

строка

Строка, определяющая ценовой класс распределения. См. https://aws.amazon.com/cloudfront/pricing/

price_class=PriceClass_100 включает регионы США, Канада и Европа.

price_class=PriceClass_200 включает регионы США, Канада, Европа, Япония, Индия, Гонконг, Филиппины, Южная Корея, Сингапур и Тайвань.

price_class=PriceClass_All включает регионы США, Канада, Европа, Япония, Индия, Южная Америка, Австралия, Гонконг, Филиппины, Южная Корея, Сингапур и Тайвань.

AWS по умолчанию использует PriceClass_All.

Допустимые значения PriceClass_100, PriceClass_200 и PriceClass_All

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.

purge_aliases

булево

Указывает, будут ли удалены существующие псевдонимы перед добавлением новых.

При purge_aliases=true существующие псевдонимы удаляются, и добавляются новые псевдонимы.

Варианты:

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

purge_cache_behaviors

булево

Удалить любые кэшированные поведения, которые не перечислены в cache_behaviors.

Этот переключатель также позволяет переупорядочить cache_behaviors.

Варианты:

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

purge_custom_error_responses

boolean

Удалять ли все пользовательские ответы на ошибки, которые не указаны в custom_error_responses.

Варианты:

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

purge_origins

boolean

Удалять ли все источники, которые не указаны в origins.

Варианты:

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

purge_tags

boolean

Если 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.

restrictions

dictionary

Элемент конфигурации, представляющий собой сложный объект, описывающий, как следует ограничивать содержимое распределения.

geo_restriction

dictionary

Применять ограничения на основе местоположения запрашивающего.

items

list / elements=string

Список кодов стран ISO 3166-1 длиной в две буквы (Alpha 2), к которым должны применяться ограничения.

Полный список кодов см. на сайте ISO https://www.iso.org/obp/ui/#search/code/.

restriction_type

string

Метод, который вы хотите использовать для ограничения распространения контента по странам.

Допустимые значения — none, whitelist, blacklist.

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

Желаемое состояние распределения.

state=present создает новое распределение или обновляет существующее распределение.

state=absent удаляет существующее распределение.

Варианты:

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

tags

aliases: resource_tags

dictionary

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

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

validate_certs

boolean

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

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

Варианты:

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

viewer_certificate

dictionary

Словарь, определяющий параметры шифрования распределения.

acm_certificate_arn

string

Идентификатор сертификата, хранящегося в ACM, для использования в HTTPS-соединениях.

Если задан acm_certificate_id, необходимо также указать ssl_support_method.

cloudfront_default_certificate

boolean

Если вы используете домен CloudFront для своего распределения, например, 123456789abcde.cloudfront.net, вы должны установить cloudfront_default_certificate=true.

Если cloudfront_default_certificate=true, не устанавливайте ssl_support_method.

Варианты:

  • false
  • true

iam_certificate_id

string

Идентификатор сертификата, хранящегося в IAM, для использования в HTTPS-соединениях.

Если задан iam_certificate_id, необходимо также указать ssl_support_method.

minimum_protocol_version

string

Политика безопасности, которую вы хотите использовать CloudFront для HTTPS-соединений.

См. https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html для поддерживаемых политик безопасности.

ssl_support_method

string

Как CloudFront должен обрабатывать SSL-сертификаты.

Допустимые значения — sni-only для SNI и vip в случае, если CloudFront настроен на использование выделенного IP-адреса для вашего контента.

wait

boolean

Указывает, ожидать ли завершения обработки создания или обновления распределения модулем.

Варианты:

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

wait_timeout

integer

Указывает время ожидания (в секундах) при таймауте создания или обновления распределения CloudFront.

По умолчанию: 1800

web_acl_id

string

Идентификатор списка управления доступом (ACL) системы защиты веб-приложений (WAF).

Примечания

Примечание

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

Примеры

- name: create a basic distribution with defaults and tags
  community.aws.cloudfront_distribution:
    state: present
    default_origin_domain_name: www.my-cloudfront-origin.com
    tags:
      Name: example distribution
      Project: example project
      Priority: '1'

- name: update a distribution comment by distribution_id
  community.aws.cloudfront_distribution:
    state: present
    distribution_id: E1RP5A2MJ8073O
    comment: modified by ansible cloudfront.py

- name: update a distribution comment by caller_reference
  community.aws.cloudfront_distribution:
    state: present
    caller_reference: my cloudfront distribution 001
    comment: modified by ansible cloudfront.py

- name: update a distribution's aliases and comment using the distribution_id as a reference
  community.aws.cloudfront_distribution:
    state: present
    distribution_id: E1RP5A2MJ8073O
    comment: modified by cloudfront.py again
    aliases:
      - 'www.my-distribution-source.com'
      - 'zzz.aaa.io'

- name: update a distribution's aliases and comment using an alias as a reference
  community.aws.cloudfront_distribution:
    state: present
    caller_reference: my test distribution
    comment: modified by cloudfront.py again
    aliases:
      - www.my-distribution-source.com
      - zzz.aaa.io

- name: update a distribution's comment and aliases and tags and remove existing tags
  community.aws.cloudfront_distribution:
    state: present
    distribution_id: E15BU8SDCGSG57
    comment: modified by cloudfront.py again
    aliases:
      - tested.com
    tags:
      Project: distribution 1.2
    purge_tags: true

- name: create a distribution with an origin, logging and default cache behavior
  community.aws.cloudfront_distribution:
    state: present
    caller_reference: unique test distribution ID
    origins:
      - id: 'my test origin-000111'
        domain_name: www.example.com
        origin_path: /production
        custom_headers:
          - header_name: MyCustomHeaderName
            header_value: MyCustomHeaderValue
    default_cache_behavior:
      target_origin_id: 'my test origin-000111'
      forwarded_values:
        query_string: true
        cookies:
          forward: all
        headers:
          - '*'
      viewer_protocol_policy: allow-all
      smooth_streaming: true
      compress: true
      allowed_methods:
        items:
          - GET
          - HEAD
        cached_methods:
          - GET
          - HEAD
    logging:
      enabled: true
      include_cookies: false
      bucket: mylogbucket.s3.amazonaws.com
      prefix: myprefix/
    enabled: false
    comment: this is a CloudFront distribution with logging

- name: delete a distribution
  community.aws.cloudfront_distribution:
    state: absent
    caller_reference: replaceable distribution

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

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

Ключ

Описание

active_trusted_signers

сложный

Идентификаторы пар ключей, о которых CloudFront знает для каждого доверенного подписчика.

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

enabled

логический

Используются ли доверенные подписчики.

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

Пример: false

items

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

Количество доверенных подписчиков.

Возвращается: когда существуют доверенные подписчики

Пример: ["key_pair_id"]

quantity

целое число

Количество доверенных подписчиков.

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

Пример: 1

aliases

сложный

Псевдонимы, которые ссылаются на распределение.

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

items

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

Список псевдонимов.

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

Пример: ["test.example.com"]

quantity

целое число

Количество псевдонимов.

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

Пример: 1

arn

строка

Идентификатор Amazon Resource Name (ARN) распределения.

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

Пример: "arn:aws:cloudfront::123456789012:distribution/E1234ABCDEFGHI"

cache_behaviors

сложный

Поведение кэша CloudFront.

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

items

сложный

Список поведений кэша.

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

allowed_methods

сложный

Методы, разрешенные поведением кэша.

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

cached_methods

сложный

Методы, кэшируемые поведением кэша.

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

items

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

Список кэшируемых методов.

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

Пример: ["HEAD", "GET"]

quantity

целое число

Количество кэшируемых методов.

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

Пример: 2

items

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

Список методов, разрешенных поведением кэша.

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

Пример: ["HEAD", "GET"]

quantity

целое число

Количество методов, разрешенных поведением кэша.

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

Пример: 2

compress

логический

Включена ли сжатие для поведения кэша.

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

Пример: false

default_ttl

целое число

Значение Time to Live по умолчанию для поведения кэша.

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

Пример: 86400

forwarded_values

complex

Значения, переданные источнику для этого поведения кэша.

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

cookies

complex

Файлы cookie, которые нужно передать источнику.

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

forward

string

Какие файлы cookie нужно передать источнику для этого поведения кэша.

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

Пример: "none"

whitelisted_names

complex

Названия файлов cookie, которые нужно передать источнику для этого поведения кэша.

Возвращено: когда forward=whitelist

items

list / elements=string

Список файлов cookie для пересылки.

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

Пример: ["my_cookie"]

quantity

integer

Количество файлов cookie для пересылки.

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

Пример: 1

headers

complex

Какие заголовки используются для изменения при извлечении из кэша.

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

items

list / elements=string

Список заголовков для изменения.

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

Пример: ["Host"]

quantity

integer

Количество заголовков для изменения.

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

Пример: 1

query_string

boolean

Используется ли строка запроса в поисках в кэше.

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

Пример: false

query_string_cache_keys

complex

Какие ключи строки запроса использовать в поисках в кэше.

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

items

list / elements=string

Список ключей строки запроса для использования в поисках в кэше.

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

quantity

integer

Количество ключей строки запроса для использования в поисках в кэше.

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

Пример: 1

lambda_function_associations

complex

Связи функций Lambda для поведения кэша.

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

items

list / elements=string

Список связей функций Lambda.

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

Пример: [{"event_type": "viewer-response", "lambda_function_arn": "arn:aws:lambda:123456789012:us-east-1/lambda/lambda-function"}]

quantity

integer

Количество связей функций Lambda.

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

Пример: 1

max_ttl

integer

Максимальное время жизни.

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

Пример: 31536000

min_ttl

целое число

Минимальное время хранения в кэше.

Возвращаемое значение: всегда

Пример: 0

path_pattern

строка

Шаблон пути, определяющий данное поведение кэширования.

Возвращаемое значение: всегда

Пример: "/path/to/files/*"

smooth_streaming

булево

Включено ли плавное потоковое воспроизведение.

Возвращаемое значение: всегда

Пример: false

target_origin_id

строка

Идентификатор источника, на который ссылается данное поведение кэширования.

Возвращаемое значение: всегда

Пример: "origin_abcd"

trusted_signers

сложная

Доверенные подписывающие стороны.

Возвращаемое значение: всегда

enabled

булево

Включены ли доверенные подписывающие стороны для данного поведения кэширования.

Возвращаемое значение: всегда

Пример: false

quantity

целое число

Количество доверенных подписывающих сторон.

Возвращаемое значение: всегда

Пример: 1

viewer_protocol_policy

строка

Политика обработки http/https.

Возвращаемое значение: всегда

Пример: "redirect-to-https"

quantity

целое число

Количество настроек поведения кэширования.

Возвращаемое значение: всегда

Пример: 1

caller_reference

строка

Идентификатор идемпотентности, заданный при создании распределения CloudFront.

Возвращаемое значение: всегда

Пример: "1484796016700"

comment

строка

Любые комментарии, которые вы хотите добавить к распределению.

Возвращаемое значение: всегда

Пример: "my first CloudFront distribution"

custom_error_responses

сложная

Настраиваемые ответы на ошибки для обработки ошибок.

Возвращаемое значение: всегда

items

сложная

Список настраиваемых ответов на ошибки.

Возвращаемое значение: всегда

error_caching_min_ttl

целое число

Минимальное время кэширования данного ответа на ошибку.

Возвращаемое значение: всегда

Пример: 300

error_code

целое число

Код ответа источника, который вызывает этот ответ на ошибку.

Возвращаемое значение: всегда

Пример: 500

response_code

строка

Код ответа, который следует вернуть запрошивателю.

Возвращаемое значение: всегда

Пример: "500"

response_page_path

строка

Путь к странице ошибки, которую следует отобразить.

Возвращаемое значение: всегда

Пример: "/errors/5xx.html"

END_OF_DOCUMENT_MARKER

количество

целое число

Количество элементов пользовательских ответов на ошибки

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

Пример: 1

поведение_кэширования_по_умолчанию

сложный

Поведение кэширования по умолчанию.

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

разрешённые_методы

сложный

Методы, разрешённые поведением кэширования.

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

кэшируемые_методы

сложный

Методы, кэшируемые поведением кэширования.

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

элементы

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

Список кэшируемых методов.

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

Пример: ["HEAD", "GET"]

количество

целое число

Количество кэшируемых методов.

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

Пример: 2

элементы

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

Список методов, разрешенных поведением кэширования.

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

Пример: ["HEAD", "GET"]

количество

целое число

Количество методов, разрешенных поведением кэширования.

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

Пример: 2

сжимать

логический

Включена ли сжатие для поведения кэширования.

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

Пример: false

значение_по_умолчанию_ttl

целое число

Время жизни кэша по умолчанию для поведения кэширования.

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

Пример: 86400

передаваемые_значения

сложный

Значения, переданные источнику для этого поведения кэширования.

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

cookies

сложный

Куки, передаваемые источнику.

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

передать

строка

Какие куки передавать источнику для этого поведения кэширования.

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

Пример: "none"

установленные_имена

сложный

Имена куки, которые передавать источнику для этого поведения кэширования.

Возвращается: при передать=белый_список

элементы

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

Список куки для передачи.

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

Пример: ["my_cookie"]

количество

целое число

Количество куки для передачи.

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

Пример: 1

заголовки

сложный

Какие заголовки используются для изменения при получении из кэша.

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

items

list / elements=string

Список заголовков для изменения.

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

Пример: ["Host"]

quantity

integer

Количество заголовков для изменения.

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

Пример: 1

query_string

boolean

Используется ли строка запроса в поисках в кэше.

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

Пример: false

query_string_cache_keys

complex

Какие ключи строки запроса использовать в поисках в кэше.

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

items

list / elements=string

Список ключей кэша строки запроса для использования в поисках в кэше.

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

quantity

integer

Количество ключей кэша строки запроса для использования в поисках в кэше.

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

Пример: 1

lambda_function_associations

complex

Связи функции Lambda для поведения кэша.

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

items

list / elements=string

Список ассоциаций функций Lambda.

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

Пример: [{"event_type": "viewer-response", "lambda_function_arn": "arn:aws:lambda:123456789012:us-east-1/lambda/lambda-function"}]

quantity

integer

Количество ассоциаций функций Lambda.

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

Пример: 1

max_ttl

integer

Максимальное время жизни.

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

Пример: 31536000

min_ttl

integer

Минимальное время жизни.

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

Пример: 0

path_pattern

string

Шаблон пути, определяющий это поведение кэша.

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

Пример: "/path/to/files/*"

smooth_streaming

boolean

Включена ли потоковая передача.

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

Пример: false

target_origin_id

string

ID источника, на который ссылается это поведение кэша.

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

Пример: "origin_abcd"

trusted_signers

complex

Доверенные подписывающие.

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

enabled

boolean

Включены ли доверенные подписывающие для этого поведения кэша.

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

Пример: false

quantity

integer

Количество доверенных подписывающих.

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

Пример: 1

viewer_protocol_policy

string

Политика обработки запросов HTTP/HTTPS.

Возвращаемое значение: всегда

Пример: "redirect-to-https"

default_root_object

string

Объект, который CloudFront запрашивает у источника (например, index.html), когда пользователь запрашивает корневой URL-адрес вашей распределённой системы.

Возвращаемое значение: всегда

Пример: ""

diff

dictionary

Разница между предыдущей и новой конфигурацией.

Возвращаемое значение: всегда

Пример: {}

domain_name

string

Доменное имя распределённой системы CloudFront.

Возвращаемое значение: всегда

Пример: "d1vz8pzgurxosf.cloudfront.net"

enabled

boolean

Включена ли распределённая система CloudFront.

Возвращаемое значение: всегда

Пример: true

http_version

string

Версия HTTP, поддерживаемая распределённой системой.

Возвращаемое значение: всегда

Пример: "http2"

id

string

ID распределённой системы CloudFront.

Возвращаемое значение: всегда

Пример: "E123456ABCDEFG"

in_progress_invalidation_batches

integer

Количество процессов обновления в очереди.

Возвращаемое значение: всегда

Пример: 0

is_ipv6_enabled

boolean

Включен ли IPv6.

Возвращаемое значение: всегда

Пример: true

last_modified_time

string

Дата и время последнего изменения распределённой системы.

Возвращаемое значение: всегда

Пример: "2017-10-13T01:51:12.656000+00:00"

logging

complex

Информация о логировании.

Возвращаемое значение: всегда

bucket

string

Назначение ведения журнала в S3 bucket.

Возвращаемое значение: всегда

Пример: "logs-example-com.s3.amazonaws.com"

enabled

boolean

Включено ли ведение журнала.

Возвращаемое значение: всегда

Пример: true

include_cookies

boolean

Включать ли логирование куки-файлов?

Возвращаемое значение: всегда

Пример: false

prefix

string

Префикс, добавляемый к именам лог-объектов.

Возвращаемое значение: всегда

Пример: "cloudfront/test"

origins

complex

Источники в распределённой системе CloudFront.

Возвращаемое значение: всегда

items

complex

Список источников.

Возвращаемое значение: всегда

connection_attempts

integer

Количество попыток подключения к источнику со стороны CloudFront.

Возвращаемое значение: всегда

Пример: 3

connection_timeout

integer

Количество секунд, в течение которых CloudFront ожидает установления соединения с origin.

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

Пример: 10

custom_headers

complex

Заголовки, передаваемые в origin.

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

quantity

integer

Количество заголовков.

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

Пример: 1

custom_origin_config

complex

Конфигурация origin.

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

http_port

integer

Порт, на котором прослушивается HTTP.

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

Пример: 80

https_port

integer

Порт, на котором прослушивается HTTPS.

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

Пример: 443

origin_keepalive_timeout

integer

Таймаут keep-alive.

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

Пример: 5

origin_protocol_policy

string

Политика поддерживаемых протоколов.

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

Пример: "https-only"

origin_read_timeout

integer

Таймаут чтения из origin.

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

Пример: 30

origin_ssl_protocols

complex

SSL протоколы, разрешенные origin.

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

items

list / elements=string

Список SSL протоколов.

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

Пример: ["TLSv1", "TLSv1.1", "TLSv1.2"]

quantity

integer

Количество SSL протоколов.

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

Пример: 3

domain_name

string

Доменное имя origin.

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

Пример: "test-origin.example.com"

id

string

ID origin.

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

Пример: "test-origin.example.com"

origin_path

string

Подкаталог для префикса запроса из S3 или HTTP origin.

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

Пример: ""

origin_shield

complex

добавлено в community.aws 6.0.0

Конфигурация Origin Shield origin.

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

enabled

boolean

Включен ли Origin Shield или нет.

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

Пример: false

origin_shield_region

string

Регион, используемый Origin Shield.

Возвращается: когда enabled равно true

Пример: "us-east-1"

s3_origin_config

dictionary

Настройка идентификатора доступа к источнику для S3 Origin.

Возвращается: когда s3_origin_access_identity_enabled равно true

origin_access_identity

string

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

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

Пример: "origin-access-identity/cloudfront/EXAMPLEID"

quantity

integer

Количество источников.

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

Пример: 1

price_class

string

Класс цены распределения CloudFront.

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

Пример: "PriceClass_All"

restrictions

complex

Ограничения, используемые CloudFront.

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

geo_restriction

complex

Управление странами, в которых распространяется ваш контент.

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

items

list / elements=string

Список кодов стран, разрешенных или запрещенных.

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

Пример: ["xy"]

quantity

integer

Количество ограничений.

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

Пример: 1

restriction_type

string

Тип ограничения.

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

Пример: "blacklist"

status

string

Состояние распределения CloudFront.

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

Пример: "InProgress"

tags

dictionary

Тэги распределения.

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

Пример: {"Hello": "World"}

viewer_certificate

complex

Сертификат, используемый распределением CloudFront.

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

acm_certificate_arn

string

ARN сертификата ACM.

Возвращается: когда сертификат из ACM

Пример: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-1234-1234-abcd-123456abcdef"

certificate

string

Ссылка на сертификат.

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

Пример: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-1234-1234-abcd-123456abcdef"

certificate_source

string

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

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

Пример: "acm"

minimum_protocol_version

string

Минимальная поддерживаемая версия протокола SSL/TLS для этого распределения.

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

Пример: "TLSv1"

ssl_support_method

string

Поддержка браузеров до SNI.

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

Пример: "sni-only"

web_acl_id

string

Идентификатор списка управления веб-доступом (из службы WAF).

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

Пример: "abcd1234-1234-abcd-abcd-abcd12345678"

Авторы

  • Willem van Ketwich (@wilvk)
  • 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/community/aws/cloudfront_distribution_module.html

Spec-Zone.ru

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