ec2_tag — создание и удаление тегов для ресурсов EC2.
Новое в версии 1.3.
Описание
- Создаёт, удаляет и перечисляет теги для любого ресурса EC2. Ресурс ссылается на его идентификатор ресурса (например, экземпляр i-XXXXXXX). Разработан для использования со сложными аргументами (тегами), см. примеры. Этот модуль зависит от python-boto.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- boto
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| aws_access_key | Значение по умолчанию: None | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key |
| aws_secret_key | Значение по умолчанию: None | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key |
| ec2_url | Значение по умолчанию: None | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не указан, используется значение переменной окружения EC2_URL. |
| profile (добавлено в 1.6) | Значение по умолчанию: None | Использует профиль 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 обязательно | Значение по умолчанию: None | Идентификатор ресурса EC2. |
| security_token (добавлено в 1.6) | Значение по умолчанию: None | AWS STS токен безопасности. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token |
| state |
| Указывает, должны ли теги присутствовать или отсутствовать на ресурсе. Используйте list для запроса тегов экземпляра. |
| tags обязательно | Значение по умолчанию: None | словарь/список тегов для добавления к ресурсу; '{"ключ":"значение"}' и '{"ключ":"значение","ключ":"значение"}' |
| validate_certs (добавлено в 1.5) |
| При значении "no", сертификаты SSL не будут проверены для версий boto >= 2.6.0. |
Примечания
Примечание
- Если параметры не заданы в модуле, могут быть использованы следующие переменные среды в порядке убывания приоритета
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
Примеры
- 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 }}'
Статус
Этот модуль помечен как stableinterface, что означает, что авторы этого модуля гарантируют, что не будут вноситься обратные несовместимые изменения в интерфейс.
Автор
- Lester Wade (@lwade)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/ec2_tag_module.html