ec2_tag - создание и удаление тегов для ресурсов ec2.
Новое в версии 1.3.
Описание
- Создаёт, удаляет и отображает теги для любых ресурсов EC2. Ресурс указывается по его идентификатору (например, экземпляр с i-XXXXXXX). Разработан для использования с комплексными аргументами (тегами), см. примеры. Этот модуль зависит от python-boto.
Требования (к хосту, на котором выполняется модуль)
- python >= 2.6
- boto
Параметры
| параметр | обязателен | значение по умолчанию | варианты | комментарии |
|---|---|---|---|---|
| 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 | нет | Адрес для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию используется конечная точка EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковое есть. | ||
| profile (добавлено в 1.6)
| нет | Использует профиль boto. Работает только с boto >= 2.24.0. | ||
| region | нет | Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковое есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | ||
| resource | да | Идентификатор ресурса EC2. | ||
| security_token (добавлено в 1.6)
| нет | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | ||
| state | нет | present |
| Указывает, должны ли теги присутствовать или отсутствовать на ресурсе. Используйте list для запроса тегов экземпляра. |
| tags | да | Словарь тегов для добавления к ресурсу; '{"key":"value"}' и '{"key":"value","key":"value"}' | ||
| validate_certs (добавлено в 1.5)
| нет | да |
| При значении "нет", сертификаты SSL не будут проверятся для boto версии >= 2.6.0. |
Примеры
- name: Ensure tags are present on a resource
ec2_tag:
region: eu-west-1
resource: vol-XXXXXX
state: present
tags:
Name: ubervol
env: prod
- name: Ensure one dbserver is running
ec2:
count_tag:
Name: dbserver
Env: production
exact_count: 1
group: '{{ security_group }}'
keypair: '{{ keypair }}'
image: '{{ image_id }}'
instance_tags:
Name: dbserver
Env: production
instance_type: '{{ instance_type }}'
region: eu-west-1
volumes:
- device_name: /dev/xvdb
device_type: standard
volume_size: 10
delete_on_termination: True
wait: True
register: ec2
- name: Retrieve all volumes for a queried instance
ec2_vol:
instance: '{{ item.id }}'
region: eu-west-1
state: list
with_items: '{{ ec2.tagged_instances }}'
register: ec2_vol
- name: Ensure all volumes are tagged
ec2_tag:
region: eu-west-1
resource: '{{ item.id }}'
state: present
tags:
Name: dbserver
Env: production
with_items:
- ec2_vol.volumes
- name: Get EC2 facts
action: ec2_facts
- name: Retrieve all tags on an instance
ec2_tag:
region: '{{ ansible_ec2_placement_region }}'
resource: '{{ ansible_ec2_instance_id }}'
state: list
register: ec2_tags
- name: List tags, such as Name and env
debug:
msg: '{{ ec2_tags.tags.Name }} {{ ec2_tags.tags.env }}'
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
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), если данные учетных данных не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONможно использовать для указания региона AWS, если это необходимо, но это также можно настроить в конфигурационном файле boto
Статус
Этот модуль помечен как stableinterface, что означает, что авторы модуля гарантируют отсутствие несовместимых с предыдущими версиями изменений интерфейса.
Для получения помощи в разработке модулей, если вы заинтересованы, пожалуйста, ознакомьтесь с Информация о сообществе и вклад, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/ec2_tag_module.html