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 Bundle считывается со стороны модуля и, возможно, должен быть скопирован из контроллера, если запуск не осуществляется локально. | |
| aws_config словарь | Словарь для изменения конфигурации botocore. Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Только ключ 'user_agent' используется для модулей boto. См. 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 | |
| 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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/aws/ec2_ami_copy_module.html