amazon.aws.ec2_tag – создание и удаление тегов для ресурсов ec2
Примечание
Этот плагин входит в коллекцию amazon.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install amazon.aws.
Для использования в плейбуке укажите: amazon.aws.ec2_tag.
Введено в версии 1.0.0: модуля amazon.aws
Обзор
- Создаёт, изменяет и удаляет теги для любого ресурса EC2.
- Ресурсы ссылаются на их идентификатор ресурса (например, инстанс — i-XXXXXXX, VPC — vpc-XXXXXXX).
- Этот модуль предназначен для использования с комплексными аргументами (тегами), см. примеры.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- boto
- boto3
- botocore
- 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'. См. 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 также может быть использована. |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется. псевдонимы: aws_endpoint_url, endpoint_url | |
| 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 | |
| purge_tags булево |
| Удалить не указанные теги из ресурса. Обратите внимание, что в сочетании с state=absent, указанные теги с несовпадающими значениями не удаляются. |
| 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 строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если установлен параметр profile, этот параметр игнорируется. Передача параметров security_token и profile одновременно устарела и будет сделана взаимоисключающей после 2022-06-01. псевдонимы: aws_security_token, access_token | |
| state строка |
| Устанавливать теги на ресурсе или нет. Использование state=list для запроса тегов инстанса устарело и будет удалено после 2022-06-01. Функциональность «список» перенесена в отдельный модуль amazon.aws.ec2_tag_info. |
| tags словарь | Словарь тегов для добавления или удаления из ресурса. Если значение, предоставленное для ключа, не установлено и state=absent, тег будет удалён независимо от его текущего значения. Обязательно при state=present или state=absent. | |
| validate_certs булево |
| При значении "нет", SSL-сертификаты для boto версий >= 2.6.0 не будут проверяться. |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
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: Ensure tags are present on a resource
amazon.aws.ec2_tag:
region: eu-west-1
resource: vol-XXXXXX
state: present
tags:
Name: ubervol
env: prod
- name: Ensure all volumes are tagged
amazon.aws.ec2_tag:
region: eu-west-1
resource: '{{ item.id }}'
state: present
tags:
Name: dbserver
Env: production
loop: '{{ ec2_vol.volumes }}'
- name: Remove the Env tag
amazon.aws.ec2_tag:
region: eu-west-1
resource: i-xxxxxxxxxxxxxxxxx
tags:
Env:
state: absent
- name: Remove the Env tag if it's currently 'development'
amazon.aws.ec2_tag:
region: eu-west-1
resource: i-xxxxxxxxxxxxxxxxx
tags:
Env: development
state: absent
- name: Remove all tags except for Name from an instance
amazon.aws.ec2_tag:
region: eu-west-1
resource: i-xxxxxxxxxxxxxxxxx
tags:
Name: ''
state: absent
purge_tags: true
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| added_tags словарь | Если теги были добавлены | Словарь тегов, которые были добавлены к ресурсу |
| removed_tags словарь | Если теги были удалены | Словарь тегов, которые были удалены из ресурса |
| tags словарь | всегда | Словарь, содержащий теги на ресурсе |
Авторы
- Lester Wade (@lwade)
- Paul Arthur (@flowerysong)
© 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/amazon/aws/ec2_tag_module.html