Модуль amazon.aws.ec2_ami — создание или удаление образа (AMI) в EC2
Примечание
Этот модуль входит в коллекцию amazon.aws (версия 11.3.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install amazon.aws. Для использования этого модуля требуются дополнительные компоненты. Подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: amazon.aws.ec2_ami.
Добавлено в amazon.aws 1.0.0
Обзор
- Регистрирует или отменяет регистрацию образов EC2.
Требования
Перечисленные ниже компоненты требуются на хосте, который выполняет этот модуль.
- 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. |
architecture string | Целевая архитектура регистрируемого образа. По умолчанию: |
aws_ca_bundle path | Путь к пакету центров сертификации (CA), используемому для проверки SSL-сертификатов. Также можно использовать переменную окружения |
aws_config dictionary | Словарь для изменения конфигурации botocore. Параметры описаны в документации AWS: https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. |
billing_products list / elements=string | Список действительных кодов выставления счетов. Используется продавцами AWS Marketplace с действительными учетными записями. |
boot_mode string добавлено в amazon.aws 5.5.0 | Режим загрузки AMI. Подробнее см. в документации AWS: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html. Поддержка Варианты:
|
debug_botocore_endpoint_logs boolean | Используйте регистратор Также можно использовать переменную окружения Варианты:
|
delete_snapshot boolean | Удалять снимки при отмене регистрации AMI. Варианты:
|
description string | Понятное пользователю описание содержимого и назначения AMI. По умолчанию: |
device_mapping list / elements=dictionary | Список хешей/словарей устройств с пользовательскими настройками (те же параметры сопоставления блочных устройств). |
|
delete_on_termination boolean |
Следует ли автоматически удалять устройство при завершении работы экземпляра. Варианты:
|
|
device_name string / обязательный |
Имя устройства. Например, |
|
encrypted boolean |
Следует ли шифровать том. Варианты:
|
|
iops integer |
При использовании |
|
no_device boolean |
Исключает указанное устройство из сопоставления блочных устройств AMI. Варианты:
|
|
snapshot_id string |
Идентификатор снимка. |
|
virtual_name string |
Виртуальное имя устройства. Подробнее см. в документации AWS: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_BlockDeviceMapping.html. |
|
volume_size aliases: size integer |
Размер тома (в ГиБ). |
|
volume_type string |
Тип тома. Если значение не задано, используется |
endpoint_url aliases: aws_endpoint_url string | URL-адрес для подключения вместо конечных точек AWS по умолчанию. Его можно использовать для подключения к другим совместимым с AWS сервисам, однако коллекции amazon.aws и community.aws тестируются только с AWS. Также можно использовать переменную окружения |
enhanced_networking boolean | Логическое значение, указывающее, включена ли расширенная сеть с ENA. Варианты:
|
image_id string | Идентификатор образа, регистрацию которого нужно отменить. |
image_location string | Расположение образа в S3, который будет использоваться для AMI. |
instance_id string | Идентификатор экземпляра, на основе которого создается AMI. |
kernel_id string | Идентификатор целевого ядра регистрируемого образа. |
launch_permissions dictionary | Разрешения на запуск AMI. Чтобы изменить существующие разрешения на запуск, необходимо передать все требуемые разрешения (передача только групп удалит всех пользователей). |
|
group_names list / elements=string |
Список имен групп. |
|
org_arns list / elements=string добавлено в amazon.aws 6.5.0 |
Список имен ресурсов Amazon (ARN) организации или организаций. |
|
org_unit_arns list / elements=string добавлено в amazon.aws 6.5.0 |
Список имен ресурсов Amazon (ARN) организационных подразделений (OU). |
|
user_ids list / elements=string |
Список идентификаторов учетных записей. |
name string | Имя нового AMI. |
no_reboot boolean | Флаг, указывающий, что процесс создания образа не должен пытаться выключить экземпляр перед созданием образа. Если для этого флага задано значение Варианты:
|
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. |
purge_tags boolean | Если задано значение Если параметр Ключи тегов, начинающиеся с Варианты:
|
ramdisk_id string | Идентификатор RAM-диска. |
region aliases: aws_region string | Регион AWS, который следует использовать. Для глобальных сервисов, таких как IAM, Route53 и CloudFront, параметр region игнорируется. Также можно использовать переменную окружения Дополнительную информацию см. в документации Amazon AWS: http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region. |
root_device_name string | Имя корневого устройства регистрируемого образа. |
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 являются взаимоисключающими. |
sriov_net_support string | Установите значение simple, чтобы включить расширенную сеть с интерфейсом Intel 82599 Virtual Function для AMI и всех экземпляров, запускаемых из этого AMI. |
state string | Зарегистрировать AMI или отменить его регистрацию. Варианты:
|
tags aliases: resource_tags dictionary | Словарь тегов, применяемых к ресурсу. Если параметр |
tpm_support string добавлено в amazon.aws 5.5.0 | Установите значение Если для образа настроена поддержка NitroTPM, значение равно Требуется, чтобы для Требуется тип экземпляра, совместимый с Nitro. Подробнее см. в документации AWS: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html. |
uefi_data string добавлено в amazon.aws 5.5.0 | Представление в формате Base64 энергонезависимого хранилища переменных UEFI. Подробнее см. в документации AWS: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/uefi-secure-boot.html. |
validate_certs boolean | Если задано значение Настоятельно не рекомендуется задавать validate_certs=false; вместо этого рассмотрите возможность использования параметра aws_ca_bundle. Варианты:
|
virtualization_type string | Тип виртуализации регистрируемого образа. По умолчанию: |
wait boolean | Ожидать, пока AMI не перейдет в состояние «available», прежде чем возвращать управление. Варианты:
|
wait_timeout integer | Время ожидания до прекращения ожидания, в секундах. По умолчанию: |
Примечания
Примечание
- Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста «host» Ansible, а не из контекста «controller». Поэтому файлы может потребоваться явно скопировать на «host». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста «controller» Ansible, а не из контекста «host».
- Используемый Ansible пакет AWS SDK (boto3) также может считывать значения по умолчанию для учётных данных и других параметров, например региона, из файлов конфигурации в контексте «host» 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: Basic AMI Creation
amazon.aws.ec2_ami:
instance_id: i-xxxxxx
wait: true
name: newtest
tags:
Name: newtest
Service: TestService
- name: Basic AMI Creation, without waiting
amazon.aws.ec2_ami:
instance_id: i-xxxxxx
wait: false
name: newtest
- name: AMI Registration from EBS Snapshot
amazon.aws.ec2_ami:
name: newtest
state: present
architecture: x86_64
virtualization_type: hvm
root_device_name: /dev/xvda
device_mapping:
- device_name: /dev/xvda
volume_size: 8
snapshot_id: snap-xxxxxxxx
delete_on_termination: true
volume_type: gp2
- name: AMI Creation, with a custom root-device size and another EBS attached
amazon.aws.ec2_ami:
instance_id: i-xxxxxx
name: newtest
device_mapping:
- device_name: /dev/sda1
size: XXX
delete_on_termination: true
volume_type: gp2
- device_name: /dev/sdb
size: YYY
delete_on_termination: false
volume_type: gp2
- name: AMI Creation, excluding a volume attached at /dev/sdb
amazon.aws.ec2_ami:
instance_id: i-xxxxxx
name: newtest
device_mapping:
- device_name: /dev/sda1
size: XXX
delete_on_termination: true
volume_type: gp2
- device_name: /dev/sdb
no_device: true
- name: AMI Creation with boot_mode and tpm_support
amazon.aws.ec2_ami:
name: newtest
state: present
architecture: x86_64
virtualization_type: hvm
root_device_name: /dev/sda1
device_mapping:
- device_name: /dev/sda1
snapshot_id: "{{ snapshot_id }}"
wait: true
region: us-east-1
boot_mode: uefi
uefi_data: data_file.bin
tpm_support: v2.0
- name: Deregister/Delete AMI (keep associated snapshots)
amazon.aws.ec2_ami:
image_id: "{{ instance.image_id }}"
delete_snapshot: false
state: absent
- name: Deregister AMI (delete associated snapshots too)
amazon.aws.ec2_ami:
image_id: "{{ instance.image_id }}"
delete_snapshot: true
state: absent
- name: Update AMI Launch Permissions, making it public
amazon.aws.ec2_ami:
image_id: "{{ instance.image_id }}"
state: present
launch_permissions:
group_names: ['all']
- name: Allow AMI to be launched by another account
amazon.aws.ec2_ami:
image_id: "{{ instance.image_id }}"
state: present
launch_permissions:
user_ids: ['123456789012']
- name: Update AMI Launch Permissions, share AMI across an Organization and Organizational Units
amazon.aws.ec2_ami:
image_id: "{{ instance.image_id }}"
state: present
launch_permissions:
org_arns: ['arn:aws:organizations::123456789012:organization/o-123ab4cdef']
org_unit_arns: ['arn:aws:organizations::123456789012:ou/o-123example/ou-1234-5example']
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
architecture string | Архитектура образа. Возвращается: если AMI создан или уже существует Пример: |
block_device_mapping dictionary | Сопоставление блочных устройств, связанное с образом. Возвращается: если AMI создан или уже существует Пример: |
creationDate string | Дата создания образа. Возвращается: если AMI создан или уже существует Пример: |
description string | Описание образа. Возвращается: если AMI создан или уже существует Пример: |
enhanced_networking boolean | Указывает, включена ли улучшенная сеть с ENA. Возвращается: если AMI создан или уже существует Пример: |
hypervisor string | Тип гипервизора. Возвращается: если AMI создан или уже существует Пример: |
image_id string | Идентификатор образа. Возвращается: если AMI создан или уже существует Пример: |
image_owner_alias string | Псевдоним владельца ( amazon | aws-marketplace). Возвращается: если AMI создан или уже существует Пример: |
image_type string | Тип образа. Возвращается: если AMI создан или уже существует Пример: |
is_public boolean | Является ли образ общедоступным. Возвращается: если AMI создан или уже существует Пример: |
kernel_id string | Ядро, связанное с образом, если оно есть. Применимо только к машинным образам. Возвращается: если AMI создан или уже существует Пример: |
launch_permission list / elements=string | Разрешения, позволяющие другим учётным записям получать доступ к AMI. Возвращается: если AMI создан или уже существует Пример: |
location string | Расположение образа. Возвращается: если AMI создан или уже существует Пример: |
name string | Имя AMI образа. Возвращается: если AMI создан или уже существует Пример: |
ownerId string | Владелец образа. Возвращается: если AMI создан или уже существует Пример: |
platform string | Платформа образа. Возвращается: если AMI создан или уже существует Пример: |
product_codes list / elements=string | Все коды продуктов, связанные с AMI. Возвращается: если AMI создан или уже существует Пример: |
ramdisk_id string | RAM-диск, связанный с образом, если он есть. Применимо только к машинным образам. Возвращается: если AMI создан или уже существует |
root_device_name string | Имя корневого устройства образа. Возвращается: если AMI создан или уже существует Пример: |
root_device_type string | Тип корневого устройства образа. Возвращается: если AMI создан или уже существует Пример: |
snapshots_deleted list / elements=string | Список идентификаторов снимков, удалённых после отмены регистрации образа. Возвращается: после отмены регистрации AMI, если delete_snapshot=true Пример: |
sriov_net_support string | Указывает, включена ли улучшенная сеть с интерфейсом Intel 82599 Virtual Function. Возвращается: если AMI создан или уже существует Пример: |
state string | Состояние образа. Возвращается: если AMI создан или уже существует Пример: |
state_reason dictionary | Причина изменения состояния. Возвращается: если AMI создан или уже существует Пример: |
tags dictionary | Словарь тегов, назначенных образу. Возвращается: если AMI создан или уже существует Пример: |
virtualization_type string | Тип виртуализации образа. Возвращается: если AMI создан или уже существует Пример: |
Ссылки на коллекцию
© 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_ami_module.html