community.vmware.vmware_tag_manager – Управление ассоциацией тегов VMware с объектами VMware
Примечание
Этот плагин входит в коллекцию community.vmware (версия 1.7.0).
Для его установки используйте: ansible-galaxy collection install community.vmware.
Для использования в книге задач укажите: community.vmware.vmware_tag_manager.
Обзор
- Этот модуль может использоваться для назначения/удаления тегов VMware из заданных объектов VMware.
- Функция тегов была введена в vSphere 6 версии, поэтому этот модуль не поддерживается в более ранних версиях vSphere.
- Все переменные и имена объектов VMware чувствительны к регистру.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- PyVmomi
- vSphere Automation SDK
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| hostname строка | Имя хоста или IP-адрес сервера vCenter vSphere. Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_HOST. | |
| moid строка добавлен в 1.4.0 community.vmware | Идентификатор управляемого объекта для данного объекта. Требуется, если object_name не задано. | |
| object_name строка | Имя объекта, с которым необходимо работать. Для DistributedVirtualPortgroups формат должен быть "имя_коммутатора:имя_группы_портов" Требуется, если moid не задано. | |
| object_type строка / обязательно |
| Тип объекта, с которым необходимо работать. |
| password строка | Пароль сервера vCenter vSphere. Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_PASSWORD.псевдонимы: pass, pwd | |
| port целое число | По умолчанию: 443 | Номер порта сервера vCenter vSphere. Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_PORT. |
| protocol строка |
| Протокол подключения. |
| state строка |
| Если state установлено в add или present, теги будут добавлены к существующему списку тегов заданного объекта.Если state установлено в remove или absent, теги будут удалены из существующего списка тегов заданного объекта.Если state установлено в set, теги заданных объектов будут заменены на пользовательский список тегов. |
| tag_names список / элементы=сырые / обязательно | Список тегов, которые необходимо управлять. Пользователь также может указать имя категории, указав значение, разделенное двоеточием. Например, "имя_категории:имя_тега". Пользователь также может указать тег и категорию в виде словаря, когда тег или категория содержат двоеточие. См. пример для получения дополнительной информации. Добавлен в версии 2.10. Пользователь может пропустить имя категории, если у вас есть уникальные имена тегов. | |
| username строка | Имя пользователя сервера vCenter vSphere. Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_USER.псевдонимы: admin, user | |
| validate_certs логическое |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите в False при недоверенных сертификатах.Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_VALIDATE_CERTS. |
Примечания
Примечание
- Тестировалось на vSphere 6.5
Примеры
- name: Add tags to a virtual machine
community.vmware.vmware_tag_manager:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
tag_names:
- Sample_Tag_0002
- Category_0001:Sample_Tag_0003
object_name: Fedora_VM
object_type: VirtualMachine
state: add
delegate_to: localhost
- name: Specify tag and category as dict
community.vmware.vmware_tag_manager:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
tag_names:
- tag: tag_0001
category: cat_0001
- tag: tag_0002
category: cat_0002
object_name: Fedora_VM
object_type: VirtualMachine
state: add
delegate_to: localhost
- name: Remove a tag from a virtual machine
community.vmware.vmware_tag_manager:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
tag_names:
- Sample_Tag_0002
object_name: Fedora_VM
object_type: VirtualMachine
state: remove
delegate_to: localhost
- name: Add tags to a distributed virtual switch
community.vmware.vmware_tag_manager:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
tag_names:
- Sample_Tag_0003
object_name: Switch_0001
object_type: DistributedVirtualSwitch
state: add
delegate_to: localhost
- name: Add tags to a distributed virtual portgroup
community.vmware.vmware_tag_manager:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
tag_names:
- Sample_Tag_0004
object_name: Switch_0001:Portgroup_0001
object_type: DistributedVirtualPortgroup
state: add
delegate_to: localhost
- name: Get information about folders
community.vmware.vmware_folder_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
datacenter: 'Asia-Datacenter1'
delegate_to: localhost
register: r
- name: Set Managed object ID for the given folder
ansible.builtin.set_fact:
folder_mo_id: "{{ (r.flat_folder_info | selectattr('path', 'equalto', '/Asia-Datacenter1/vm/tier1/tier2') | map(attribute='moid'))[0] }}"
- name: Add tags to a Folder using managed object id
community.vmware.vmware_tag_manager:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
tag_names:
- Sample_Cat_0004:Sample_Tag_0004
object_type: Folder
moid: "{{ folder_mo_id }}"
state: add
delegate_to: localhost
Значения возврата
Общие значения возврата описаны в документации, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| tag_status список / элементы=строка | при успехе | метаданные о тегах, связанных с конфигурацией объекта Пример: {'current_tags': ['backup', 'security'], 'desired_tags': ['security'], 'previous_tags': ['backup', 'security']} |
Авторы
- Abhijeet Kasurde (@Akasurde)
- Frederic Van Reet (@GBrawl)
© 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/vmware/vmware_tag_manager_module.html