community.vmware.vmware_host_facts – Сбор фактов о удалённом хосте ESXi
Примечание
Этот плагин является частью коллекции community.vmware (версия 1.7.0).
Для установки используйте: ansible-galaxy collection install community.vmware.
Для использования в плейбуке укажите: community.vmware.vmware_host_facts.
Описание
- Этот модуль может использоваться для сбора фактов, таких как процессор, память, хранилище данных, сеть и система, и т.д. о системе ESXi.
- Укажите имя хоста или IP-адрес системы ESXi как
hostname. - Если имя хоста или IP-адрес vCenter указаны как
hostnameиesxi_hostnameне указано, то модуль выдаст ошибку. - Факты VSAN добавлены в версии 2.7.
- Факт SYSTEM uuid добавлен в версии 2.10.
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- PyVmomi
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| esxi_hostname строка | Имя хоста ESXi. Будут возвращены факты о указанном сервере ESXi. Указав этот параметр, можно выбрать, какой хост ESXi возвращается при подключении к vCenter. | |
| hostname строка | Имя хоста или IP-адрес сервера vSphere vCenter или ESXi. Если значение не указано в задаче, вместо него будет использоваться значение переменной окружения VMWARE_HOST.Поддержка переменных окружения добавлена в Ansible 2.6. | |
| password строка | Пароль сервера vSphere vCenter или ESXi. Если значение не указано в задаче, вместо него будет использоваться значение переменной окружения VMWARE_PASSWORD.Поддержка переменных окружения добавлена в Ansible 2.6. алиасы: pass, pwd | |
| port целое число | По умолчанию: 443 | Номер порта сервера vSphere vCenter или ESXi. Если значение не указано в задаче, вместо него будет использоваться значение переменной окружения VMWARE_PORT.Поддержка переменных окружения добавлена в Ansible 2.6. |
| properties список / элементы=строка | Укажите свойства, которые необходимо получить. Если не указано, все свойства извлекаются (глубоко). Результаты возвращаются в структуре, идентичной структуре API vSphere. Пример: properties: [ "hardware.memorySize", "hardware.cpuInfo.numCpuCores", "config.product.apiVersion", "overallStatus" ] Только применимо, когда schema равно vsphere. | |
| proxy_host строка | Адрес прокси-сервера, который будет принимать все запросы HTTPS и перенаправлять их. Формат - имя хоста или IP-адрес. Если значение не указано в задаче, вместо него будет использоваться значение переменной окружения VMWARE_PROXY_HOST.Эта функция зависит от версии pyvmomi, большей чем v6.7.1.2018.12 | |
| proxy_port целое число | Порт HTTP прокси-сервера, который будет принимать все запросы HTTPS и перенаправлять их. Если значение не указано в задаче, вместо него будет использоваться значение переменной окружения VMWARE_PROXY_PORT. | |
| schema строка |
| Укажите желаемую схему вывода. Схема вывода 'summary' - это устаревшая схема вывода модуля. Схема вывода 'vsphere' - это определение класса API vSphere, которое требует pyvmomi>6.7.1 |
| show_tag логическое значение |
| Теги, связанные с хостом, отображаются, если установлено значение True. |
| username строка | Имя пользователя сервера vSphere vCenter или ESXi. Если значение не указано в задаче, вместо него будет использоваться значение переменной окружения VMWARE_USER.Поддержка переменных окружения добавлена в Ansible 2.6. алиасы: admin, user | |
| validate_certs логическое значение |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите значение false при отсутствии доверия к сертификатам.Если значение не указано в задаче, вместо него будет использоваться значение переменной окружения VMWARE_VALIDATE_CERTS.Поддержка переменных окружения добавлена в Ansible 2.6. Если установлено значение true, убедитесь, что на данном компьютере установлен Python >= 2.7.9. |
Примеры
- name: Gather vmware host facts
community.vmware.vmware_host_facts:
hostname: "{{ esxi_server }}"
username: "{{ esxi_username }}"
password: "{{ esxi_password }}"
register: host_facts
delegate_to: localhost
- name: Gather vmware host facts from vCenter
community.vmware.vmware_host_facts:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
esxi_hostname: "{{ esxi_hostname }}"
register: host_facts
delegate_to: localhost
- name: Gather vmware host facts from vCenter with tag information
community.vmware.vmware_host_facts:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
esxi_hostname: "{{ esxi_hostname }}"
show_tag: True
register: host_facts_tag
delegate_to: localhost
- name: Get VSAN Cluster UUID from host facts
community.vmware.vmware_host_facts:
hostname: "{{ esxi_server }}"
username: "{{ esxi_username }}"
password: "{{ esxi_password }}"
register: host_facts
- set_fact:
cluster_uuid: "{{ host_facts['ansible_facts']['vsan_cluster_uuid'] }}"
- name: Gather some info from a host using the vSphere API output schema
community.vmware.vmware_host_facts:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
esxi_hostname: "{{ esxi_hostname }}"
schema: vsphere
properties:
- hardware.memorySize
- hardware.cpuInfo.numCpuCores
- config.product.apiVersion
- overallStatus
register: host_facts
- name: Gather information about powerstate and connection state
community.vmware.vmware_host_facts:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
esxi_hostname: "{{ esxi_hostname }}"
schema: vsphere
properties:
- runtime.connectionState
- runtime.powerState
- name: How to retrieve Product, Version, Build, Update info for ESXi from vCenter
block:
- name: Gather product version info for ESXi from vCenter
community.vmware.vmware_host_facts:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
esxi_hostname: "{{ esxi_hostname }}"
schema: vsphere
properties:
- config.product
- config.option
register: gather_host_facts_result
- name: Extract update level info from option properties
set_fact:
update_level_info: "{{ item.value }}"
loop: "{{ gather_host_facts_result.ansible_facts.config.option }}"
when:
- item.key == 'Misc.HostAgentUpdateLevel'
- name: The output of Product, Version, Build, Update info for ESXi
debug:
msg:
- "Product : {{ gather_host_facts_result.ansible_facts.config.product.name }}"
- "Version : {{ gather_host_facts_result.ansible_facts.config.product.version }}"
- "Build : {{ gather_host_facts_result.ansible_facts.config.product.build }}"
- "Update : {{ update_level_info }}"
Авторы
- Wei Gao (@woshihaoren)
© 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_host_facts_module.html