Модуль community.vmware.vmware_host_facts — сбор сведений об удаленной хост-системе ESXi
Примечание
Этот модуль входит в коллекцию community.vmware (версия 6.2.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.vmware.
Чтобы использовать её в сценарии, укажите: community.vmware.vmware_host_facts.
Краткое описание
- Этот модуль собирает сведения, например о ЦП, памяти, хранилище данных, сети и системе, для хост-системы ESXi.
- Укажите имя хоста или IP-адрес хост-системы ESXi в качестве
hostname. - Если имя хоста или IP-адрес vCenter указан как
hostname, аesxi_hostnameне задан, модуль выдаст ошибку. - Обратите внимание: если состояние подключения хоста ESXi не равно
connected, сведения, полученные от vCenter, могут быть устаревшими. Рекомендуется проверять значение состояния подключения и принимать соответствующее решение в сценарии.
Параметры
Параметр | Описание |
|---|---|
esxi_hostname string | Имя хоста ESXi. Будут возвращены сведения об указанном сервере ESXi. Задав этот параметр, вы можете выбрать, сведения о какой хост-системе ESXi вернуть при подключении к vCenter. |
hostname string | Имя хоста или IP-адрес сервера vSphere vCenter. Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
password псевдонимы: pass, pwd string | Пароль сервера vSphere vCenter. Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
port integer | Номер порта сервера vSphere vCenter. Если значение не указано в задаче, вместо него будет использовано значение переменной среды По умолчанию: |
properties list / элементы=string | Укажите свойства, которые необходимо получить. Если параметр не задан, будут получены все свойства (рекурсивно). Результаты возвращаются в структуре, идентичной API vsphere. Пример: properties: [ “hardware.memorySize”, “hardware.cpuInfo.numCpuCores”, “config.product.apiVersion”, “overallStatus” ] Действительно только при |
proxy_host string | Адрес прокси-сервера, который будет получать и перенаправлять все HTTPS-запросы. Формат: имя хоста или IP-адрес. Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
proxy_port integer | Порт HTTP-прокси, который будет получать и перенаправлять все HTTPS-запросы. Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
schema string | Укажите желаемую схему выходных данных. Схема выходных данных Схема выходных данных Варианты:
|
show_datacenter boolean добавлено в community.vmware 4.2.0 | Если задано значение Варианты:
|
show_tag boolean | Если задано значение Варианты:
|
username псевдонимы: admin, user string | Имя пользователя сервера vSphere vCenter. Если значение не указано в задаче, вместо него будет использовано значение переменной среды |
validate_certs boolean | Разрешает подключение, если SSL-сертификаты недействительны. Установите значение Если значение не указано в задаче, вместо него будет использовано значение переменной среды Варианты:
|
Примечания
Примечание
- Для всех модулей требуется доступ на запись через API, поэтому они не поддерживаются при использовании бесплатной лицензии ESXi.
- Все переменные и имена объектов VMware чувствительны к регистру.
- Модули могут использовать библиотеку Python ‘requests’, которая по умолчанию не использует системное хранилище сертификатов. Чтобы указать хранилище сертификатов, задайте переменную среды REQUESTS_CA_BUNDLE. Обратите внимание: в некоторых случаях наличие этой переменной может привести к тому, что значение ‘false’ параметра ‘validate_certs’ будет проигнорировано. Пример: ‘export REQUESTS_CA_BUNDLE=/path/to/your/ca_bundle.pem’
Примеры
- 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 }}"
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/vmware/vmware_host_facts_module.html