community.aws.ec2_launch_template модуль – Управление шаблонами запуска EC2
Примечание
Этот модуль является частью коллекции community.aws (версия 8.0.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.aws. Для использования этого модуля необходимы дополнительные требования. Подробности см. в разделе Требования.
Для использования в плейбуке укажите: community.aws.ec2_launch_template.
Добавлен в community.aws 1.0.0
Обзор
- Создание, изменение и удаление шаблонов запуска EC2, которые можно использовать для создания отдельных экземпляров или с группами автоматического масштабирования.
- Модули amazon.aws.ec2_instance и community.aws.autoscaling_group вместо указания всех параметров в этих задачах могут принимать шаблон запуска, который содержит настройки, такие как размер экземпляра, тип диска, подсеть и многое другое.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- 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 и profile взаимоисключающие. Псевдоним aws_access_key_id был добавлен в релизе 5.1.0 для согласованности с SDK AWS botocore. Псевдоним ec2_access_key устарел и будет удален в релизе после 2024-12-01. Поддержка переменной среды |
aws_ca_bundle путь | Расположение пакета сертификатов CA для проверки сертификатов SSL. Также можно использовать переменную среды |
aws_config словарь | Словарь для изменения конфигурации botocore. Параметры можно найти в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. |
block_device_mappings список / элементы=словарь | Карта блочных устройств. Указание и идентификатора моментального снимка, и значения шифрования как аргументов для карты блочных устройств приводит к ошибке. Это связано с тем, что только пустые тома могут быть зашифрованы при запуске, и они не создаются из моментального снимка. Если моментальный снимок является основой для тома, он содержит данные по определению, и его статус шифрования нельзя изменить с помощью этого действия. |
|
device_name строка |
Имя устройства (например, /dev/sdh или xvdh). |
|
ebs словарь |
Параметры, используемые для автоматической настройки томов EBS при запуске экземпляра. |
|
delete_on_termination логическое |
Указывает, будет ли том EBS удален при завершении работы экземпляра. Варианты:
|
|
encrypted логическое |
Указывает, зашифрован ли том EBS. Зашифрованные тома могут быть подключены только к экземплярам, поддерживающим шифрование Amazon EBS. Если вы создаёте том из моментального снимка, вы не можете указать значение шифрования. Варианты:
|
|
iops целое число |
Количество операций ввода-вывода в секунду (IOPS), поддерживаемых томом. Для io1 это количество IOPS, выделенных для тома. Для gp2 это базовая производительность тома, и скорость, с которой том накапливает кредиты ввода-вывода для увеличения производительности. Подробнее об основной производительности SSD общего назначения, кредитах ввода-вывода и увеличении производительности см. в руководстве пользователя Amazon Elastic Compute Cloud — Типы томов Amazon EBS. Условие: этот параметр необходим для создания томов io1; он не используется для создания томов gp2, st1, sc1 или стандартных томов. |
|
kms_key_id строка |
ARN ключа управления ключами AWS (AWS KMS) CMK, используемого для шифрования. |
|
snapshot_id строка |
Идентификатор моментального снимка для создания тома. |
|
volume_size целое число |
Размер тома в ГБ. По умолчанию: если вы создаёте том из моментального снимка и не указываете размер тома, по умолчанию используется размер моментального снимка. |
|
volume_type строка |
Тип тома |
|
no_device строка |
Исключает указанное устройство из карты блочных устройств AMI. |
|
virtual_name строка |
Виртуальное имя устройства (ephemeralN). Тома памяти экземпляра нумеруются, начиная с 0. Экземпляр типа с 2 доступными томами памяти может указывать сопоставления для ephemeral0 и ephemeral1. Количество доступных томов памяти зависит от типа экземпляра. После подключения к экземпляру необходимо смонтировать том. |
cpu_options словарь | Выберите параметры процессора для создаваемых экземпляров EC2 с помощью этой шаблона. Дополнительная информация: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html |
|
core_count целое число |
Количество ядер процессора для экземпляра. |
|
threads_per_core целое число |
Количество потоков на ядро процессора. Для отключения технологии Intel Hyper-Threading Technology для экземпляра укажите значение 1. В противном случае укажите значение по умолчанию 2. |
credit_specification dictionary | Параметр кредитования для использования процессора экземпляра. Действительно только для экземпляров типа T2 или T3. |
|
cpu_credits string |
Параметр кредитования для использования процессора экземпляра типа T2 или T3. Допустимые значения |
debug_botocore_endpoint_logs boolean | Использовать Также можно использовать переменную среды Варианты:
|
default_version string | Какая версия должна быть по умолчанию, когда пользователи запускают новые экземпляры на основе этой шаблона? По умолчанию последняя версия будет установлена по умолчанию. По умолчанию: |
disable_api_termination boolean | Это помогает защитить экземпляры от случайного завершения работы. Если установлено в значение true, вы не можете завершить работу экземпляра с помощью консоли Amazon EC2, CLI или API. Чтобы изменить этот атрибут на значение false после запуска, используйте ModifyInstanceAttribute. Варианты:
|
ebs_optimized boolean | Указывает, оптимизирован ли экземпляр для ввода/вывода Amazon EBS. Эта оптимизация обеспечивает выделенную пропускную способность для Amazon EBS и оптимизированную конфигурационную стопку для обеспечения оптимальной производительности ввода/вывода Amazon EBS. Эта оптимизация недоступна для всех типов экземпляров. При использовании оптимизированного для EBS экземпляра применяются дополнительные сборы за использование. Варианты:
|
elastic_gpu_specifications list / elements=dictionary | Настройки для подключения Elastic GPU. Подробнее см. https://aws.amazon.com/ec2/elastic-gpus/. |
|
type string |
Тип Elastic GPU для подключения. |
endpoint_url aliases: ec2_url, aws_endpoint_url, s3_url string | URL для подключения вместо стандартных конечных точек AWS. Хотя это можно использовать для подключения к другим службам, совместимым с AWS, коллекции amazon.aws и community.aws протестированы только с AWS. Также можно использовать переменные среды Псевдонимы ec2_url и s3_url устарели и будут удалены в релизе после 2024-12-01. Поддержка переменной среды |
iam_instance_profile string | Имя или ARN профиля IAM экземпляра. Требует разрешений на описание существующих ролей экземпляра для подтверждения того, что ARN сформирован правильно. |
image_id string | ID AMI, который будет использоваться для новых экземпляров, запущенных с этим шаблоном. Это значение зависит от региона, так как AMI не являются глобальными ресурсами. |
instance_initiated_shutdown_behavior string | Указывает, останавливает или завершает работу экземпляр при инициации завершения работы с экземпляра с помощью команды завершения работы операционной системы. Варианты:
|
instance_market_options dictionary | Параметры для альтернативных рынков экземпляров, в настоящее время поддерживается только рынок spot. |
|
market_type string |
Тип рынка. Должно быть всегда 'spot'. |
|
spot_options dictionary |
Настройки, специфичные для рынка spot. |
|
block_duration_minutes integer |
Требуемая продолжительность для Spot Instances (также известные как Spot блоки), в минутах. Это значение должно быть кратно 60 (60, 120, 180, 240, 300 или 360). |
|
instance_interruption_behavior string |
Поведение при прерывании Spot Instance. По умолчанию Варианты:
|
|
max_price string |
Максимальная почасовая цена, которую вы готовы платить за этот Spot Instance. |
|
spot_instance_type string |
Тип запроса, который необходимо отправить. Варианты:
|
instance_type string | Тип экземпляра, например, |
kernel_id string | Идентификатор ядра. Рекомендуется использовать PV-GRUB вместо ядер и дисков RAM. Дополнительную информацию см. на странице http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html. |
key_name string | Имя пары ключей. Вы можете создать пару ключей с помощью модуля amazon.aws.ec2_key. Если вы не укажете пару ключей, подключиться к экземпляру будет невозможно, если вы не выбрали AMI, настроенную для входа другим способом. |
metadata_options dictionary Добавлен в community.aws 1.5.0 | Настройка параметров метаданных EC2. Дополнительную информацию см. в документации по IMDS: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html. |
|
http_endpoint string |
Этот параметр включает или выключает HTTP-точку входа метаданных для ваших экземпляров. Варианты:
|
|
http_protocol_ipv6 string Добавлен в community.aws 3.1.0 |
Варианты:
|
|
http_put_response_hop_limit integer |
Желаемый предел переходов ответа HTTP PUT для запросов метаданных экземпляра. Чем больше число, тем дальше могут проходить запросы метаданных экземпляра. По умолчанию: |
|
http_tokens string |
Состояние использования маркеров для ваших запросов метаданных экземпляра. Варианты:
|
|
instance_metadata_tags string Добавлен в community.aws 3.1.0 |
Доступность тегов экземпляра ( Варианты:
|
monitoring dictionary | Настройки мониторинга экземпляра. |
|
enabled boolean |
Включить подробный мониторинг для новых экземпляров. Это повлечет дополнительные расходы. Варианты:
|
network_interfaces list / elements=dictionary | Один или несколько сетевых интерфейсов. |
|
associate_public_ip_address boolean |
Привязывает публичный IPv4-адрес к eth0 для нового сетевого интерфейса. Варианты:
|
|
delete_on_termination boolean |
Указывает, будет ли сетевой интерфейс удален при завершении работы экземпляра. Варианты:
|
|
description string |
Описание сетевого интерфейса. |
|
device_index integer |
Индекс устройства для подключения сетевого интерфейса. |
|
groups list / elements=string |
Список идентификаторов групп безопасности для включения в этом экземпляре. |
|
ipv6_address_count целое число |
Количество адресов IPv6, которые необходимо назначить сетевому интерфейсу. Amazon EC2 автоматически выбирает адреса IPv6 из диапазона подсети. Данный параметр нельзя использовать, если задан параметр ipv6_addresses. |
|
ipv6_addresses список / элементы=строка |
Список одного или нескольких конкретных адресов IPv6 из диапазона IPv6 CIDR-блока вашей подсети. Данный параметр нельзя использовать, если задано значение для параметра ipv6_address_count. |
|
network_interface_id строка |
Идентификатор сетевого интерфейса (ENI) для подключения. |
|
private_ip_address строка |
Основной частный IPv4-адрес сетевого интерфейса. |
|
subnet_id строка |
Идентификатор подсети для сетевого интерфейса. |
placement словарь | Настройки группы размещения для экземпляра. |
|
affinity строка |
Настройка совместимости для экземпляра на выделенном хосте. |
|
availability_zone строка |
Зона доступности для экземпляра. |
|
group_name строка |
Имя группы размещения для экземпляра. |
|
host_id строка |
Идентификатор выделенного хоста для экземпляра. |
|
tenancy строка |
Тип аренды экземпляра (если экземпляр работает в VPC). Экземпляр с типом аренды dedicated работает на оборудовании с однопользовательской арендой. |
profile псевдонимы: aws_profile строка | Используемый профиль AWS для аутентификации. Дополнительную информацию о профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html. Также может быть использована переменная окружения Параметр profile несовместим с параметрами aws_access_key, aws_secret_key и security_token. |
ram_disk_id строка | Идентификатор диска RAM для запуска экземпляра. Рекомендуется использовать PV-GRUB вместо ядра и дисков RAM. Дополнительную информацию см. в http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html. |
region псевдонимы: aws_region, ec2_region строка | Используемая область AWS. Для глобальных сервисов, таких как IAM, Route53 и CloudFront, region игнорируется. Также могут быть использованы переменные окружения Дополнительную информацию см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region. Псевдоним Поддержка переменной окружения |
secret_key псевдонимы: aws_secret_access_key, aws_secret_key, ec2_secret_key строка | Секретный ключ доступа AWS. Дополнительную информацию о маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также могут быть использованы переменные окружения Параметры secret_key и profile взаимоисключающие. Псевдоним aws_secret_access_key был добавлен в версии 5.1.0 для соответствия AWS botocore SDK. Псевдоним ec2_secret_key устарел и будет удален после версии 2024-12-01. Поддержка переменной окружения |
security_group_ids список / элементы=строка | Список идентификаторов групп безопасности (VPC или EC2-Classic), к которым будут добавлены новые экземпляры. |
security_groups список / элементы=строка | Список имен групп безопасности (Default VPC или EC2-Classic), к которым будут добавлены новые экземпляры. Для любых VPC, кроме Default, необходимо использовать security_group_ids. |
session_token aliases: aws_session_token, security_token, aws_security_token, access_token строка | Токен сессии AWS STS для использования с временными учетными данными. См. документацию AWS для получения дополнительной информации о токенах доступа https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также могут использоваться переменные окружения Параметры 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. Поддержка переменных среды |
source_version строка добавлено в community.aws 4.1.0 | Номер версии шаблона запуска, на основе которого будет создана новая версия. Новая версия наследует те же параметры запуска, что и исходная версия, за исключением параметров, которые вы явно задаете. Снимки, примененные к отображению карты блочных устройств, игнорируются при создании новой версии, если они не указаны явно. По умолчанию: |
state строка | Указывает, должен ли шаблон запуска существовать. Удаление определенных версий шаблона запуска в данный момент не поддерживается. Варианты:
|
tags aliases: resource_tags словарь | Набор пар ключ-значение, которые будут применяться к ресурсам при использовании этого шаблона запуска. Ограничения для ключей тегов: ключи тегов чувствительны к регистру и принимают не более 127 символов Юникода. Не могут начинаться с aws: Ограничения для значений тегов: значения тегов чувствительны к регистру и принимают не более 255 символов Юникода. |
template_id aliases: id строка | Идентификатор шаблона запуска, который можно использовать во всех случаях, кроме создания нового шаблона запуска. |
template_name aliases: name строка | Имя шаблона. Оно должно быть уникальным в сочетании регион-аккаунт, которые вы используете. Если шаблон запуска с указанным именем не существует, создается новый шаблон запуска. Если шаблон запуска с указанным именем уже существует и конфигурация не изменилась, ничего не происходит. Если шаблон запуска с указанным именем уже существует и конфигурация изменилась, создается новая версия шаблона запуска. |
user_data строка | Данные пользователя в кодировке Base64, которые должны быть доступны для экземпляра. Дополнительную информацию см. в документации по данным пользователя для Linux http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html и Windows http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data. |
validate_certs булево | Если установлено значение Настройка validate_certs=false крайне не рекомендуется. В качестве альтернативы, рассмотрите возможность настройки aws_ca_bundle. Варианты:
|
version_description строка добавлено в community.aws 5.5.0 | Описание версии шаблона запуска. По умолчанию: |
Примечания
Примечание
- Внимание: Для модулей переменные окружения и конфигурационные файлы считываются из контекста Ansible «хост», а не из контекста «контроллер». Поэтому файлы могут потребоваться скопировать явно на «хост». Для плагинов поиска и подключения переменные окружения и конфигурационные файлы считываются из контекста Ansible «контроллер», а не из контекста «хост».
- AWS SDK (boto3), используемый Ansible, также может считывать значения по умолчанию для учетных данных и других настроек, таких как регион, из своих конфигурационных файлов в контексте Ansible «хост» (обычно
~/.aws/credentials). См. https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html для получения дополнительной информации.
Примеры
- name: Create an ec2 launch template
community.aws.ec2_launch_template:
name: "my_template"
image_id: "ami-04b762b4289fba92b"
key_name: my_ssh_key
instance_type: t2.micro
iam_instance_profile: myTestProfile
disable_api_termination: true
- name: >
Create a new version of an existing ec2 launch template with a different instance type,
while leaving an older version as the default version
community.aws.ec2_launch_template:
name: "my_template"
default_version: 1
instance_type: c5.4xlarge
- name: Delete an ec2 launch template
community.aws.ec2_launch_template:
name: "my_template"
state: absent
# This module does not yet allow deletion of specific versions of launch templates
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для данного модуля:
Ключ | Описание |
|---|---|
default_version целое число | Версия, которая будет использована, если указано только имя шаблона. Часто это совпадает с последней версией, но не всегда. Возвращается: при state=present |
latest_version целое число | Последняя доступная версия шаблона запуска Возвращается: при state=present |
Ссылки на сборку
© 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/ec2_launch_template_module.html