community.vmware.vmware_vm_facts – Возвращение базовой информации о гостевом виртуальном компьютере VMware
Примечание
Этот плагин входит в коллекцию community.vmware (версия 1.6.0).
Для его установки используйте: ansible-galaxy collection install community.vmware.
Для использования в плейбуке укажите: community.vmware.vmware_vm_facts.
Обзор
- Возвращает основную информацию о гостевом виртуальном компьютере vSphere или ESXi.
- Имя кластера, как факт, добавлено в версии 2.7.
- Этот модуль назывался
vmware_vm_factsдо Ansible 2.9. Использование не изменилось.
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- PyVmomi
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| folder строка | Укажите расположение папки с виртуальными машинами для сбора информации. Примеры: folder: /ha-datacenter/vm folder: ha-datacenter/vm folder: /datacenter1/vm folder: datacenter1/vm folder: /datacenter1/vm/folder1 folder: datacenter1/vm/folder1 folder: /folder1/datacenter1/vm folder: folder1/datacenter1/vm folder: /folder1/datacenter1/vm/folder2 | |
| hostname строка | Имя хоста или IP-адрес сервера vCenter vSphere или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_HOST. Поддержка переменных окружения добавлена в Ansible 2.6. | |
| password строка | Пароль сервера vCenter vSphere или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PASSWORD. Поддержка переменных окружения добавлена в Ansible 2.6. Псевдонимы: pass, pwd | |
| port целое число | По умолчанию: 443 | Номер порта сервера vCenter vSphere или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PORT. Поддержка переменных окружения добавлена в Ansible 2.6. |
| proxy_host строка | Адрес прокси-сервера, который будет получать все запросы HTTPS и пересылать их. Формат - имя хоста или IP. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PROXY_HOST. Эта функция зависит от версии pyvmomi, большей, чем v6.7.1.2018.12 | |
| proxy_port целое число | Порт HTTP-прокси, который будет получать все запросы HTTPS и пересылать их. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PROXY_PORT. | |
| show_attribute логическое |
| Атрибуты, связанные с гостевой виртуальной машиной, отображаются только в информации, когда это установлено true. |
| show_tag логическое |
| Теги, связанные с виртуальной машиной, отображаются, если установлено True. |
| username строка | Имя пользователя сервера vCenter vSphere или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_USER. Поддержка переменных окружения добавлена в Ansible 2.6. Псевдонимы: admin, user | |
| validate_certs логическое |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите false, когда сертификаты не доверяются.Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_VALIDATE_CERTS. Поддержка переменных окружения добавлена в Ansible 2.6. Если установлено true, убедитесь, что на данном компьютере установлен Python >= 2.7.9. |
| vm_type строка |
| Если установлено vm, информация собирается только для виртуальных машин.Если установлено template, информация собирается только для шаблонов виртуальных машин.Если установлено all, информация собирается для всех виртуальных машин и шаблонов виртуальных машин. |
Примечания
Примечание
- Тестировалось на ESXi 6.7, vSphere 5.5 и vSphere 6.5
- Начиная с версии 2.8 и выше, информация возвращается как список словарей, а не как словарь.
- Факт о
moidдобавлен в коллекцию VMware 1.4.0.
Примеры
- name: Gather all registered virtual machines
community.vmware.vmware_vm_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
delegate_to: localhost
register: vminfo
- debug:
var: vminfo.virtual_machines
- name: Gather only registered virtual machine templates
community.vmware.vmware_vm_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
vm_type: template
delegate_to: localhost
register: template_info
- debug:
var: template_info.virtual_machines
- name: Gather only registered virtual machines
community.vmware.vmware_vm_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
vm_type: vm
delegate_to: localhost
register: vm_info
- debug:
var: vm_info.virtual_machines
- name: Get UUID from given VM Name
block:
- name: Get virtual machine info
community.vmware.vmware_vm_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
folder: "/datacenter/vm/folder"
delegate_to: localhost
register: vm_info
- debug:
msg: "{{ item.uuid }}"
with_items:
- "{{ vm_info.virtual_machines | json_query(query) }}"
vars:
query: "[?guest_name=='DC0_H0_VM0']"
- name: Get Tags from given VM Name
block:
- name: Get virtual machine info
community.vmware.vmware_vm_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
folder: "/datacenter/vm/folder"
delegate_to: localhost
register: vm_info
- debug:
msg: "{{ item.tags }}"
with_items:
- "{{ vm_info.virtual_machines | json_query(query) }}"
vars:
query: "[?guest_name=='DC0_H0_VM0']"
- name: Gather all VMs from a specific folder
community.vmware.vmware_vm_info:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
folder: "/Asia-Datacenter1/vm/prod"
delegate_to: localhost
register: vm_info
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| virtual_machines список / элементы=строка | успех | список словарей виртуальных машин и их информации Пример: [{'attributes': {'job': 'backup-prepare'}, 'cluster': None, 'datacenter': 'Центр обработки данных-1', 'esxi_hostname': '10.76.33.226', 'folder': '/Центр обработки данных-1/vm', 'guest_fullname': 'Ubuntu Linux (64-bit)', 'guest_name': 'ubuntu_t', 'ip_address': '', 'mac_address': ['00:50:56:87:a5:9a'], 'moid': 'vm-24', 'power_state': 'выключен', 'tags': [{'category_id': 'urn:vmomi:InventoryServiceCategory:b316cc45-f1a9-4277-811d-56c7e7975203:GLOBAL', 'category_name': 'cat_0001', 'description': '', 'id': 'urn:vmomi:InventoryServiceTag:43737ec0-b832-4abf-abb1-fd2448ce3b26:GLOBAL', 'name': 'tag_0001'}], 'uuid': '4207072c-edd8-3bd5-64dc-903fd3a0db04', 'vm_network': {'00:50:56:87:a5:9a': {'ipv4': ['10.76.33.228'], 'ipv6': []}}}] |
Авторы
- Joseph Callen (@jcpowermac)
- Abhijeet Kasurde (@Akasurde)
- Fedor Vompe (@sumkincpp)
© 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/community/vmware/vmware_vm_facts_module.html