community.aws.ec2_launch_template – Управление шаблонами запуска EC2
Примечание
Этот плагин является частью коллекции community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в плейбуке укажите: community.aws.ec2_launch_template.
Новый в версии 1.0.0: от community.aws
Обзор
- Создание, изменение и удаление шаблонов запуска EC2, которые могут использоваться для создания отдельных экземпляров или с группами автоматического масштабирования.
- Модули community.aws.ec2_instance и community.aws.ec2_asg могут, вместо указания всех параметров в этих задачах, передавать шаблон запуска, который содержит такие параметры, как размер экземпляра, тип диска, подсеть и многое другое.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- boto
- boto3 >= 1.6.0
- botocore
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | ||
|---|---|---|---|---|
| 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 | |||
| block_device_mappings список / элементы=словарь | Карта блочных устройств. Указание ID моментального снимка и значения шифрования в качестве аргументов для карты блочных устройств приводит к ошибке. Это связано с тем, что только пустые тома могут быть зашифрованы при запуске, и они не создаются на основе моментального снимка. Если моментный снимок является основой для тома, он содержит данные по определению, и его статус шифрования нельзя изменить с помощью этого действия. | |||
| device_name строка | Имя устройства (например, /dev/sdh или xvdh). | |||
| ebs словарь | Параметры, используемые для автоматической настройки томов EBS при запуске экземпляра. | |||
| delete_on_termination логическое значение |
| Указывает, удаляется ли том EBS при завершении работы экземпляра. | ||
| encrypted логическое значение |
| Указывает, зашифрован ли том EBS. Зашифрованные тома могут быть подключены только к экземплярам, поддерживающим шифрование Amazon EBS. Если вы создаете том из моментального снимка, вы не можете указать значение шифрования. | ||
| iops целое число | Количество операций ввода-вывода в секунду (IOPS), поддерживаемое томом. Для io1 это количество IOPS, выделенных для тома. Для gp2 это базовая производительность тома и скорость накопления кредитов I/O для повышения производительности. Дополнительную информацию о базовой производительности SSD общего назначения, кредитах I/O и повышении производительности см. в разделе Типы томов Amazon EBS в руководстве пользователя Amazon Elastic Compute Cloud. Условие: Этот параметр является обязательным для запросов на создание томов 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 для экземпляра укажите значение 1. В противном случае укажите значение по умолчанию 2. | |||
| credit_specification словарь | Вариант кредитов для использования ЦП экземпляра. Действительно только для экземпляров T2 или T3. | |||
| cpu_credits строка | Вариант кредитов для использования ЦП экземпляра T2 или T3. Допустимые значения - standard и unlimited. | |||
| debug_botocore_endpoint_logs логическое значение |
| Используйте регистратор botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, вывода набора в ключ resource_actions в результатах задачи. Используйте обратный вызов aws_resource_action для вывода общего списка, созданного во время выполнения игры. Также может использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS. | ||
| default_version строка | Значение по умолчанию: "latest" | Какая версия должна быть по умолчанию, когда пользователи запускают новые экземпляры на основе этого шаблона? По умолчанию последняя версия будет установлена по умолчанию. | ||
| disable_api_termination логическое значение |
| Это помогает защитить экземпляры от случайного завершения работы. Если установлено в значение true, вы не сможете завершить работу экземпляра с помощью консоли Amazon EC2, CLI или API. Чтобы изменить этот атрибут на false после запуска, используйте ModifyInstanceAttribute. | ||
| ebs_optimized логическое значение |
| Указывает, оптимизирован ли экземпляр для ввода-вывода Amazon EBS. Эта оптимизация обеспечивает выделенную пропускную способность для Amazon EBS и оптимизированную конфигурационную сборку для обеспечения оптимальной производительности ввода-вывода Amazon EBS. Эта оптимизация не доступна для всех типов экземпляров. При использовании оптимизированного экземпляра EBS применяются дополнительные расходы. | ||
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковое имеется. псевдонимы: aws_endpoint_url, endpoint_url | |||
| elastic_gpu_specifications список / элементы=словарь | Настройки для подключения Elastic GPU. Подробнее см. по адресу https://aws.amazon.com/ec2/elastic-gpus/. | |||
| type строка | Тип Elastic GPU для подключения | |||
| iam_instance_profile строка | Имя или ARN профиля IAM для экземпляра. Требуются разрешения для описания существующих ролей экземпляров, чтобы подтвердить, что ARN сформирован правильно. | |||
| image_id строка | Идентификатор AMI для использования для новых экземпляров, запущенных с этим шаблоном. Это значение зависит от региона, так как AMI не являются глобальными ресурсами. | |||
| instance_initiated_shutdown_behavior строка |
| Указывает, останавливает или завершает работу экземпляр при инициализации завершения работы с помощью команды завершения работы операционной системы. | ||
| instance_market_options словарь | Варианты альтернативных рынков экземпляров, в настоящее время поддерживается только рынок spot. | |||
| тип_рынка строка | Тип рынка. Должен всегда быть 'spot'. | |||
| spot_options словарь | Настройки, специфичные для рынка Spot. | |||
| продолжительность_блока_минут целое_число | Требуемая продолжительность экземпляров Spot (также известных как блоки Spot), в минутах. Это значение должно быть кратным 60 (60, 120, 180, 240, 300 или 360). | |||
| поведение_при_прерывании_экземпляра строка |
| Поведение при прерывании экземпляра Spot. По умолчанию terminate. | ||
| максимальная_цена строка | Максимальная почасовая цена, которую вы готовы платить за этот экземпляр Spot. | |||
| тип_экземпляра_spot строка |
| Тип запроса для отправки. | ||
| тип_экземпляра строка | Тип экземпляра, например c5.2xlarge. Полный список типов экземпляров см. на странице http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html. | |||
| kernel_id строка | Идентификатор ядра. Рекомендуется использовать PV-GRUB вместо ядер и дисков RAM. Дополнительную информацию см. на странице http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html
| |||
| имя_ключа строка | Имя пары ключей. Вы можете создать пару ключей, используя amazon.aws.ec2_key. Если вы не укажете пару ключей, вы не сможете подключиться к экземпляру, если не выберите AMI, настроенную для разрешения пользователей другого способа входа. | |||
| мониторинг словарь | Настройки мониторинга экземпляра. | |||
| включен логическое_значение |
| Включить подробный мониторинг новых экземпляров. Это повлечёт дополнительные расходы. | ||
| сетевые_интерфейсы список / элементы=словарь | Один или несколько сетевых интерфейсов. | |||
| присоединить_публичный_ip_адрес логическое_значение |
| Присоединяет публичный IPv4-адрес к eth0 для нового сетевого интерфейса. | ||
| удалить_при_завершении логическое_значение |
| Указывает, будет ли удален сетевой интерфейс при завершении экземпляра. | ||
| описание строка | Описание сетевого интерфейса. | |||
| индекс_устройства целое_число | Индекс устройства для подключения сетевого интерфейса. | |||
| группы список / элементы=строка | Список идентификаторов групп безопасности для включения в этот экземпляр. | |||
| количество_адресов_ipv6 целое_число | Количество IPv6-адресов для назначения сетевому интерфейсу. Amazon EC2 автоматически выбирает IPv6-адреса из диапазона подсети. Вы не можете использовать этот параметр, если задан параметр ipv6_addresses. | |||
| ipv6_addresses список / элементы=строка | Список одного или нескольких конкретных IPv6-адресов из диапазона IPv6 CIDR-блока вашей подсети. Вы не можете использовать этот параметр, если задано значение ipv6_address_count. | |||
| id_сетевого_интерфейса строка | Идентификатор сетевого интерфейса для подключения. | |||
| приватный_ip_адрес строка | Основной приватный IPv4-адрес сетевого интерфейса. | |||
| id_подсети строка | Идентификатор подсети для сетевого интерфейса. | |||
| размещение словарь | Настройки группы размещения для экземпляра. | |||
| сродство строка | Настройка сродства для экземпляра на выделенном узле. | |||
| зона_доступности строка | Зона доступности для экземпляра. | |||
| имя_группы строка | Имя группы размещения для экземпляра. | |||
| id_узла строка | Идентификатор выделенного узла для экземпляра. | |||
| аренда строка | Тип аренды экземпляра (если экземпляр запущен в VPC). Экземпляр с типом аренды dedicated работает на аппаратном обеспечении с единым арендатором. | |||
| профиль строка | Использует профиль 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 | |||
| id_диска_ram строка | Идентификатор диска RAM для запуска экземпляра. Рекомендуется использовать PV-GRUB вместо ядер и дисков RAM. Дополнительную информацию см. на странице http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html
| |||
| регион строка | Регион AWS для использования. Если не указан, используется значение переменной среды AWS_REGION или EC2_REGION, если таковая есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | |||
| id_групп_безопасности список / элементы=строка | Список идентификаторов групп безопасности (VPC или EC2-Classic), к которым будут добавлены новые экземпляры. | |||
| группы_безопасности список / элементы=строка | Список имён групп безопасности (по умолчанию VPC или EC2-Classic), к которым будут добавлены новые экземпляры. Для любых VPC, кроме Default, необходимо использовать security_group_ids. | |||
| security_token строка | AWS STS security token. Если не задан, то используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задан profile, этот параметр игнорируется. Использование параметров security_token и profile одновременно устарело и будет сделано взаимоисключающим после 2022-06-01. псевдонимы: aws_security_token, access_token | |||
| состояние строка |
| Указывает, должен ли шаблон запуска существовать или нет. Удаление определенных версий шаблона запуска в настоящее время не поддерживается. | ||
| метки словарь | Набор пар ключ-значение, которые будут применены к ресурсам при использовании этого шаблона запуска. Ограничения на ключи меток: ключи меток чувствительны к регистру и принимают максимум 127 Unicode символов. Не должны начинаться с aws:
Ограничения на значения меток: значения меток чувствительны к регистру и принимают максимум 255 Unicode символов. | |||
| id_шаблона строка | Идентификатор шаблона запуска, может использоваться во всех случаях, кроме создания нового шаблона запуска. псевдонимы: id | |||
| имя_шаблона строка | Имя шаблона. Оно должно быть уникальным в сочетании с регионом и учетной записью. псевдонимы: имя | |||
| данные_пользователя строка | Данные пользователя в кодировке 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 boolean |
| Если установлено значение "нет", сертификаты SSL не будут проверяться для версий boto >= 2.6.0. | ||
Примечания
Примечание
- Если параметры не установлены в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
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
Примеры
- 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 | Последняя доступная версия шаблона запуска |
Авторы
- Ryan Scott Brown (@ryansb)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/aws/ec2_launch_template_module.html