Модуль amazon.aws.ec2_spot_instance — запрос, остановка, перезагрузка или отмена спотового экземпляра
Примечание
Этот модуль входит в коллекцию amazon.aws (версия 11.3.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install amazon.aws. Для использования этого модуля необходимы дополнительные требования. Подробнее см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: amazon.aws.ec2_spot_instance.
Добавлено в amazon.aws 2.0.0
Краткое описание
- Создаёт или отменяет запросы на спотовые экземпляры.
Требования
Следующие требования должны быть выполнены на хосте, на котором выполняется этот модуль.
- python >= 3.6
- boto3 >= 1.35.0
- botocore >= 1.35.0
Параметры
Параметр | Комментарии |
|---|---|
access_key aliases: aws_access_key_id, aws_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 и profile являются взаимоисключающими. Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для соответствия AWS SDK botocore. |
aws_ca_bundle path | Путь к пакету центров сертификации, используемому для проверки сертификатов SSL. Также можно использовать переменную среды |
aws_config dictionary | Словарь для изменения конфигурации botocore. Список параметров приведен в документации AWS: https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. |
client_token string | Токен идемпотентности, указанный при запуске экземпляра, если применимо. |
count integer | Количество запускаемых экземпляров. По умолчанию: |
debug_botocore_endpoint_logs boolean | Использовать регистратор Также можно использовать переменную среды Варианты:
|
endpoint_url aliases: aws_endpoint_url string | URL для подключения вместо конечных точек AWS по умолчанию. Этот параметр можно использовать для подключения к другим сервисам, совместимым с AWS, однако коллекции amazon.aws и community.aws тестируются только с AWS. Также можно использовать переменную среды |
interruption string | Поведение при прерывании работы точечного экземпляра. Варианты:
|
launch_group string | Группа запуска для запросов на точечные экземпляры. См. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/how-spot-instances-work.html#spot-launch-group. |
launch_specification dictionary | Спецификация запуска. |
|
block_device_mappings list / elements=dictionary |
Список хеш-таблиц/словарей томов, которые нужно добавить к новому экземпляру. |
|
device_name string |
Имя устройства (например, /dev/sdh или xvdh). |
|
ebs dictionary |
Параметры автоматической настройки томов EBS при запуске экземпляра. См. https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2.html#EC2.Client.request_spot_instances. |
|
no_device string |
Чтобы исключить устройство из сопоставления блочных устройств, укажите пустую строку. |
|
virtual_name string |
Имя виртуального устройства |
|
ebs_optimized boolean |
Использует ли экземпляр оптимизированные тома EBS. См. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html. Варианты:
|
|
iam_instance_profile dictionary |
Профиль экземпляра IAM. |
|
arn string |
Имя ресурса Amazon (ARN) профиля экземпляра. Можно указать только один из параметров |
|
name string |
Имя профиля экземпляра. Можно указать только один из параметров |
|
image_id string |
Идентификатор AMI. |
|
instance_type string |
Тип запускаемого экземпляра. См. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html. Обязателен при создании нового экземпляра. |
|
kernel_id string |
Идентификатор ядра. |
|
key_name string |
Ключ для использования на экземпляре. Чтобы использовать этот аргумент, ключ SSH уже должен существовать в AWS. Ключи можно создавать и удалять с помощью модуля amazon.aws.ec2_key. |
|
monitoring dictionary |
Указывает, включен ли для экземпляра базовый или подробный мониторинг. |
|
enabled boolean |
Указывает, включен ли подробный мониторинг. В противном случае включен базовый мониторинг. Варианты:
|
|
network_interfaces list / elements=dictionary |
Один или несколько сетевых интерфейсов. Если указан сетевой интерфейс, идентификаторы подсетей и групп безопасности необходимо указать с помощью этого интерфейса. По умолчанию: |
|
associate_carrier_ip_address boolean |
Указывает, следует ли назначить сетевому интерфейсу IP-адрес оператора связи. Варианты:
|
|
associate_public_ip_address boolean |
Указывает, следует ли назначить общедоступный IPv4-адрес экземпляру, запускаемому в VPC. Варианты:
|
|
delete_on_termination boolean |
Если задано значение true, интерфейс удаляется при завершении работы экземпляра. Значение true можно указать только при создании нового сетевого интерфейса во время запуска экземпляра. Варианты:
|
|
description string |
Описание сетевого интерфейса. Применяется только при создании сетевого интерфейса во время запуска экземпляра. |
|
device_index integer |
Позиция сетевого интерфейса в порядке подключения. Индекс основного сетевого интерфейса равен 0. При указании сетевого интерфейса во время запуска экземпляра необходимо также указать индекс устройства. |
|
groups list / elements=string |
Идентификаторы групп безопасности для сетевого интерфейса. Применяется только при создании сетевого интерфейса во время запуска экземпляра. |
|
interface_type string |
Тип сетевого интерфейса. Варианты:
|
|
ipv4_prefix_count integer |
Количество делегированных префиксов IPv4, которые будут автоматически назначены сетевому интерфейсу |
|
ipv4_prefixes list / elements=dictionary |
Один или несколько делегированных префиксов IPv4 для назначения сетевому интерфейсу. |
|
ipv6_address_count integer |
Количество IPv6-адресов для назначения сетевому интерфейсу |
|
ipv6_addresses list / elements=dictionary |
Один или несколько IPv6-адресов для назначения сетевому интерфейсу. |
|
ipv6address string |
IPv6-адрес. |
|
ipv6_prefix_count integer |
Количество делегированных префиксов IPv6, которые будут автоматически назначены сетевому интерфейсу |
|
ipv6_prefixes list / elements=dictionary |
Один или несколько делегированных префиксов IPv6 для назначения сетевому интерфейсу |
|
network_card_index integer |
Индекс сетевой карты. |
|
network_interface_id string |
Идентификатор сетевого интерфейса. |
|
private_ip_address string |
Частный IPv4-адрес сетевого интерфейса |
|
private_ip_addresses list / elements=dictionary |
Один или несколько частных IPv4-адресов для назначения сетевому интерфейсу |
|
secondary_private_ip_address_count integer |
Количество дополнительных частных IPv4-адресов. |
|
subnet_id string |
Идентификатор подсети, связанной с сетевым интерфейсом |
|
placement dictionary |
Сведения о размещении экземпляра. |
|
availability_zone string |
Зона доступности. |
|
group_name string |
Имя группы размещения. |
|
tenancy string |
Тип аренды узла Варианты:
|
|
ramdisk_id string |
Идентификатор RAM-диска. |
|
security_group_ids list / elements=string |
Идентификатор группы безопасности (или список идентификаторов) для использования с экземпляром. |
|
security_groups list / elements=string |
Имя группы безопасности (или список имен групп) для использования с экземпляром. Поддерживается только в EC2 Classic. Для запуска в VPC используйте |
|
subnet_id string |
Идентификатор подсети, в которой нужно запустить экземпляр. |
|
user_data string |
Данные пользователя для экземпляра в кодировке Base64. Размер данных пользователя ограничен 16 КБ. |
profile aliases: aws_profile string | Именованный профиль AWS для аутентификации. Дополнительные сведения об именованных профилях см. в документации AWS https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html. Также можно использовать переменную среды Параметр profile несовместим с параметрами aws_access_key, aws_secret_key и session_token. |
region aliases: aws_region string | Регион AWS, который следует использовать. Для глобальных сервисов, таких как IAM, Route53 и CloudFront, параметр region игнорируется. Также можно использовать переменную среды Дополнительные сведения см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region. |
secret_key aliases: aws_secret_access_key, aws_secret_key string | Секретный ключ доступа 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 SDK botocore. |
session_token aliases: aws_session_token string | Токен сеанса AWS STS для использования с временными учетными данными. Дополнительные сведения о токенах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys. Также можно использовать переменную среды Параметры session_token и profile несовместимы. |
spot_instance_request_ids list / elements=string | Список строк с идентификаторами запросов на спотовые инстансы, которые требуется отменить |
spot_price string | Максимальная цена ставки для спотового инстанса. Если значение не задано, запрашивается обычный инстанс по модели оплаты по требованию. Запрос на спотовый инстанс создается с этой максимальной ставкой. После выполнения запроса запускается инстанс. |
spot_type string | Тип запроса на спотовый инстанс. После прерывания спотовый инстанс типа Варианты:
|
state string | Следует ли создать или удалить запрос на спотовый инстанс. Если задано значение Если задано значение Варианты:
|
tags dictionary | Словарь пар «ключ-значение» для добавления тегов к запросу на спотовый инстанс при его создании. |
terminate_instances boolean добавлено в amazon.aws 5.4.0 | Логическое значение, определяющее, следует ли завершать инстансы, связанные с запросом на спотовый инстанс. Можно использовать только при Варианты:
|
validate_certs boolean | Если задано значение Настоятельно не рекомендуется задавать validate_certs=false; вместо этого рассмотрите возможность указать aws_ca_bundle. Варианты:
|
zone_group string | Имя для логической группировки запросов на спотовые инстансы. Все спотовые инстансы в запросе запускаются в одной зоне доступности. |
Примечания
Примечание
- Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста Ansible «хост», а не из контекста «контроллер». Поэтому файлы может потребоваться явно скопировать на «хост». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста Ansible «контроллер», а не из контекста «хост».
- Используемый Ansible пакет AWS SDK (boto3) также может считывать значения по умолчанию для учетных данных и других параметров, таких как регион, из файлов конфигурации в контексте Ansible «хост» (обычно
~/.aws/credentials). Дополнительные сведения см. по адресу https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
- name: Simple Spot Request Creation
amazon.aws.ec2_spot_instance:
launch_specification:
image_id: ami-123456789
key_name: my-keypair
instance_type: t2.medium
- name: Spot Request Creation with more options
amazon.aws.ec2_spot_instance:
launch_specification:
image_id: ami-123456789
key_name: my-keypair
instance_type: t2.medium
subnet_id: subnet-12345678
block_device_mappings:
- device_name: /dev/sdb
ebs:
delete_on_termination: true
volume_type: gp3
volume_size: 5
- device_name: /dev/sdc
ebs:
delete_on_termination: true
volume_type: io2
volume_size: 30
network_interfaces:
- associate_public_ip_address: false
delete_on_termination: true
device_index: 0
placement:
availability_zone: us-west-2a
monitoring:
enabled: false
spot_price: 0.002
tags:
Environment: Testing
- name: Spot Request Termination
amazon.aws.ec2_spot_instance:
spot_instance_request_ids: ['sir-12345678', 'sir-abcdefgh']
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
cancelled_spot_request string | Сведения об отмененном запросе на спотовый инстанс. Возвращается: при успешной отмене Пример: |
spot_request dictionary | Сведения о запросе на спотовый инстанс после его создания. Возвращается: при успешном выполнении Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/amazon/aws/ec2_spot_instance_module.html