ec2_ami_find – Поиск AMI для получения идентификатора AMI и другой информации
Новая версия с 2.0.
УСТАНОВЛЕНО
| Удалено в Ansible: | |
|---|---|
| версия: 2.9 | |
| Почему: | Различные модули AWS были объединены и заменены на ec2_ami_facts. |
| Альтернатива: | Используйте ec2_ami_facts вместо этого. |
Описание
- Возвращает список соответствующих AMI с идентификатором AMI и другой полезной информацией
- Может искать AMI разных владельцев
- Может искать по совпадению тега(ов), имени AMI и/или другим критериям
- Результаты могут быть отсортированы и ограничены
Требования
Нижеперечисленные требования необходимы на хосте, на котором выполняется этот модуль.
- boto
- python >= 2.6
Параметры
| Параметр | Выборы/Значения по умолчанию | Комментарии |
|---|---|---|
| ami_id - | Идентификатор AMI для сопоставления. | |
| ami_tags - | Словарь тегов для сопоставления с AMI. | |
| architecture - | Тип архитектуры для сопоставления (например, x86_64). | |
| aws_access_key - | Ключ доступа AWS. Если не задан, используется значение переменной среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. алиасы: ec2_access_key, access_key | |
| aws_secret_key - | Секретный ключ AWS. Если не задан, используется значение переменной среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. алиасы: ec2_secret_key, secret_key | |
| ec2_url - | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной среды EC2_URL, если таковое имеется. | |
| hypervisor - | Тип гипервизора для сопоставления (например, xen). | |
| is_public boolean |
| Является ли образ(ы) общедоступным. |
| name - | Имя AMI для сопоставления. | |
| no_result_action - |
| Действие при отсутствии результатов. 'успех' сообщает об успехе и возвращает пустой массив 'сбой' заставляет модуль сообщить об ошибке |
| owner - | Поиск AMI, принадлежащих указанному владельцу Можно указать ID учетной записи AWS или одно из специальных значений 'self', 'amazon' или 'aws-marketplace' Если не указано, будут найдены все AMI EC2 в указанном регионе. В многих опциях поиска можно использовать подстановочные знаки. Звездочка (*) соответствует нулю или более символам, а знак вопроса (?) — ровно одному символу. Вы можете экранировать специальные символы, поставив перед ними обратную косую черту (\). Например, значение \*amazon\?\\ ищет строку *amazon?\. | |
| platform - | Тип платформы для сопоставления. | |
| product_code - добавлен в 2.3 | Код продукта Marketplace для сопоставления. | |
| profile - добавлен в 1.6 | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| region - / обязательно | AWS регион для использования. алиасы: aws_region, ec2_region | |
| root_device_type - добавлен в 2.5 | Тип корневого устройства для сопоставления (например, ebs, instance-store). | |
| security_token - добавлен в 1.6 | Токен безопасности AWS STS. Если не задан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. алиасы: access_token | |
| sort - |
| Дополнительный атрибут для сортировки результатов. Если указан 'tag', требуется параметр 'tag_name'. Начиная с версии 2.1, поддерживаются дополнительные варианты сортировки: architecture, block_device_mapping, creationDate, hypervisor, is_public, location, owner_id, platform, root_device_name, root_device_type, state и virtualization_type. |
| sort_end - | Номер результата для завершения сортировки (при сортировке). Соответствует синтаксису среза в Python. | |
| sort_order - |
| Порядок сортировки результатов. Используется только при указании параметра 'sort'. |
| sort_start - | Номер результата для начала сортировки (при сортировке). Соответствует синтаксису среза в Python. | |
| sort_tag - | Имя тега для сортировки результатов. Требуется при указании 'sort=tag'. | |
| state - | Значение по умолчанию: "доступен" | Состояние AMI для сопоставления. |
| validate_certs boolean добавлен в 1.5 |
| При значении "нет", сертификаты SSL не будут проверяться для версий boto >= 2.6.0. |
| virtualization_type - | Тип виртуализации для сопоставления (например, hvm). |
Примечания
Примечание
- Этот модуль несовместим с предыдущей версией модуля ec2_search_ami, который работал только с AMIs Ubuntu, перечисленными на cloud-images.ubuntu.com.
- См. пример ниже, чтобы получить предложение о поиске по дистрибутиву/релизу.
- Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
AWS_URLилиEC2_URL,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. - Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это необходимо, но это также можно настроить в конфигурационном файле boto
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
# Search for the AMI tagged "project:website"
- ec2_ami_find:
owner: self
ami_tags:
project: website
no_result_action: fail
register: ami_find
# Search for the latest Ubuntu 14.04 AMI
- ec2_ami_find:
name: "ubuntu/images/ebs/ubuntu-trusty-14.04-amd64-server-*"
owner: 099720109477
sort: name
sort_order: descending
sort_end: 1
register: ami_find
# Launch an EC2 instance
- ec2:
image: "{{ ami_find.results[0].ami_id }}"
instance_type: m3.medium
key_name: mykey
wait: yes
Значения возврата
Общие значения возврата описаны здесь, ниже приведены поля, уникальные для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| ami_id строка | при обнаружении AMI | идентификатор найденной amazon-образа Пример: ami-e9095e8c |
| architecture строка | при обнаружении AMI | архитектура образа Пример: x86_64 |
| block_device_mapping словарь | при обнаружении AMI | отображение блочных устройств, связанных с образом Пример: { '/dev/xvda': { 'delete_on_termination': true, 'encrypted': false, 'size': 8, 'snapshot_id': 'snap-ca0330b8', 'volume_type': 'gp2' } |
| creationDate строка | при обнаружении AMI | дата создания образа Пример: 2015-10-15T22:43:44.000Z |
| description строка | при обнаружении AMI | описание образа Пример: test-server01 |
| hypervisor строка | при обнаружении AMI | тип гипервизора Пример: xen |
| is_public булево | при обнаружении AMI | является ли образ общедоступным |
| location строка | при обнаружении AMI | местоположение образа Пример: 435210894375/test-server01-20151015-234343 |
| name строка | при обнаружении AMI | имя AMI образа Пример: test-server01-20151015-234343 |
| owner_id строка | при обнаружении AMI | владелец образа Пример: 435210894375 |
| platform строка | при обнаружении AMI | платформа образа |
| root_device_name строка | при обнаружении AMI | имя корневого устройства образа Пример: /dev/xvda |
| root_device_type строка | при обнаружении AMI | тип корневого устройства образа Пример: ebs |
| state строка | при обнаружении AMI | состояние образа Пример: available |
| tags словарь | при обнаружении AMI | теги, назначенные образу Пример: { 'Environment': 'devel', 'Name': 'test-server01', 'Role': 'web' } |
| virtualization_type строка | при обнаружении AMI | тип виртуализации образа Пример: hvm |
Статус
- Этот модуль будет удален в версии 2.9. [устаревший]
- Для получения дополнительной информации см. УСТАРЕВШИЙ.
Авторы
- Tom Bamford (@tombamford)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/ec2_ami_find_module.html