community.aws.ec2_ami_copy – копирует AMI между областями AWS, возвращает новый идентификатор образа
Примечание
Этот плагин входит в состав коллекции community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в книге задач укажите: community.aws.ec2_ami_copy.
Новое в версии 1.0.0: коллекции community.aws
Обзор
- Копирует AMI из исходной области в целевую область. С версии 2.3 этот модуль зависит от boto3.
Требования
Ниже перечислены требования, необходимые на хосте, выполняющем этот модуль.
- boto
- boto3
- 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'. Дополнительные конфигурации boto см. по адресу http://boto.cloudhackers.com/en/latest/boto_config_tut.html#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 | |
| debug_botocore_endpoint_logs логический |
| Использовать логгер botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, созданного во время выполнения книги задач. Переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована. |
| description строка | Необязательная строка для отображения, описывающая содержимое и назначение нового AMI. | |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется область. Должен быть указан для всех остальных модулей, если область не используется. Если не задано, используется значение переменной среды EC2_URL, если таковое есть. псевдонимы: aws_endpoint_url, endpoint_url | |
| encrypted логический |
| Зашифрованы ли целевые снимки скопированного AMI. |
| kms_key_id строка | Идентификатор ключа KMS, используемого для шифрования образа. Если не указано, используется стандартный ключ шифрования EBS Customer Master Key (CMK) для вашей учетной записи. | |
| name строка | По умолчанию: "default" | Имя нового AMI для копирования. (С версии 2.3 по умолчанию default, в предыдущих версиях было null.) |
| profile строка | Использует профиль 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 | |
| region строка | Область AWS для использования. Если не задано, используется значение переменной среды AWS_REGION или EC2_REGION, если таковое есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region псевдонимы: aws_region, ec2_region | |
| security_token строка | Токен безопасности AWS STS. Если не задано, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задан параметр profile, этот параметр игнорируется. Одновременное использование параметров security_token и profile устарело и параметры станут взаимоисключающими после 2022-06-01. псевдонимы: aws_security_token, access_token | |
| source_image_id строка / обязательно | Идентификатор AMI в исходной области, который должен быть скопирован. | |
| source_region строка / обязательно | Исходная область, из которой должен быть скопирован AMI. | |
| tag_equality логический |
| Использовать теги, если исходный AMI уже существует в целевой области. Если это значение установлено и все теги совпадают в существующем AMI, AMI не будет копироваться повторно. |
| tags словарь | Словарь тегов для добавления к новому скопированному AMI: {"key":"value"} и {"key":"value","key":"value"} | |
| validate_certs логический |
| Если установлено «нет», SSL-сертификаты не будут проверены для версий boto >= 2.6.0. |
| wait логический |
| Ожидать, пока скопированный AMI не перейдет в состояние available перед возвратом. |
| wait_timeout целое число | По умолчанию: 600 | Время ожидания, прежде чем ожидание будет прервано, в секундах. До версии 2.3 значение по умолчанию было 1200.С версии 2.3 по 2.5 этот параметр устарел в пользу значений по умолчанию для ожидания boto3. Он был повторно включен в 2.6, чтобы разрешить таймауты больше 10 минут. |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
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: Basic AMI Copy
community.aws.ec2_ami_copy:
source_region: us-east-1
region: eu-west-1
source_image_id: ami-xxxxxxx
- name: AMI copy wait until available
community.aws.ec2_ami_copy:
source_region: us-east-1
region: eu-west-1
source_image_id: ami-xxxxxxx
wait: yes
wait_timeout: 1200 # Default timeout is 600
register: image_id
- name: Named AMI copy
community.aws.ec2_ami_copy:
source_region: us-east-1
region: eu-west-1
source_image_id: ami-xxxxxxx
name: My-Awesome-AMI
description: latest patch
- name: Tagged AMI copy (will not copy the same AMI twice)
community.aws.ec2_ami_copy:
source_region: us-east-1
region: eu-west-1
source_image_id: ami-xxxxxxx
tags:
Name: My-Super-AMI
Patch: 1.2.3
tag_equality: yes
- name: Encrypted AMI copy
community.aws.ec2_ami_copy:
source_region: us-east-1
region: eu-west-1
source_image_id: ami-xxxxxxx
encrypted: yes
- name: Encrypted AMI copy with specified key
community.aws.ec2_ami_copy:
source_region: us-east-1
region: eu-west-1
source_image_id: ami-xxxxxxx
encrypted: yes
kms_key_id: arn:aws:kms:us-east-1:XXXXXXXXXXXX:key/746de6ea-50a4-4bcb-8fbc-e3b29f2d367b
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| image_id строка | всегда | Идентификатор AMI скопированного AMI Пример: ami-e689729e |
Авторы
- Amir Moulavi (@amir343) <amir.moulavi@gmail.com>
- Tim C (@defunctio) <defunct@defunct.io>
© 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_ami_copy_module.html