Spec-Zone.ru › Ansible 2.11

Использование плагина динамического инвентаризации VMware - Имена хостов

  • Требования
  • Ожидаемые результаты
  • Устранение неполадок

Плагин динамического инвентаризации VMware - настройка имён хостов

Плагин инвентаризации VMware позволяет настроить имена хостов с помощью параметра конфигурации hostnames.

В этом руководстве мы рассмотрим, как настроить имена хостов для заданных виртуальных машин VMware в инвентаризации.

Требования

Для использования плагинов динамической инвентаризации VMware необходимо установить pyVmomi на узле управления (хосте, на котором работает Ansible).

Для включения информации о тегах виртуальных машин в вашу динамическую инвентаризацию вам также потребуется vSphere Automation SDK, который поддерживает функции REST API, такие как тегирование и библиотеки контента, на вашем узле управления. Вы можете установить vSphere Automation SDK следуя этим инструкциям.

$ pip install pyvmomi

Начиная с Ansible 2.10, плагин динамической инвентаризации VMware доступен в community.vmware коллекции, включённой в Ansible. Для установки последней community.vmware коллекции:

$ ansible-galaxy collection install community.vmware

Для использования этого плагина динамической инвентаризации VMware:

  1. Вначале активируйте его, указав следующее в файле ansible.cfg:
[inventory]
enable_plugins = community.vmware.vmware_vm_inventory
  1. Создайте файл, который заканчивается на vmware.yml или vmware.yaml в вашей рабочей директории.

Плагин инвентаризации vmware_vm_inventory принимает ту же информацию об аутентификации, что и другие модули VMware.

Вот пример валидного файла инвентаризации с настроенным именем хоста для данной виртуальной машины VMware:

plugin: community.vmware.vmware_vm_inventory
strict: False
hostname: 10.65.223.31
username: administrator@vsphere.local
password: Esxi@123$%
validate_certs: False
with_tags: False
hostnames:
- config.name

Здесь мы настроили пользовательское имя хоста, установив параметр hostnames в значение config.name. Это позволит извлечь свойство config.name из виртуальной машины и заполнить им инвентаризацию.

Вы можете проверить все разрешенные свойства для данной виртуальной машины на странице Использование атрибутов виртуальных машин в плагине динамической инвентаризации VMware.

Выполнение ansible-inventory --list -i <filename>.vmware.yml создаст список виртуальных машин, готовых к настройке с помощью Ansible.

Ожидаемые результаты

Вы заметите, что вместо стандартного отображения имени хоста как config.name + _ + config.uuid, имена хостов в инвентаризации будут отображаться как config.name.

{
  "_meta": {
    "hostvars": {
        "template_001": {
            "config.name": "template_001",
            "guest.toolsRunningStatus": "guestToolsNotRunning",
            ...
            "guest.toolsStatus": "toolsNotInstalled",
            "name": "template_001"
        },
        "vm_8046": {
            "config.name": "vm_8046",
            "guest.toolsRunningStatus": "guestToolsNotRunning",
            ...
            "guest.toolsStatus": "toolsNotInstalled",
            "name": "vm_8046"
        },
    ...
}

Устранение неполадок

Если указанное в hostnames свойство не работает:

  • Проверьте правильность введенных значений для имени пользователя и пароля.
  • Убедитесь, что это допустимое свойство. Смотрите Использование атрибутов виртуальных машин в плагине динамической инвентаризации VMware.
  • Используйте strict: True для получения дополнительной информации об ошибке.
  • Пожалуйста, убедитесь, что вы используете последнюю версию коллекции VMware.

См. также

pyVmomi

Страница GitHub проекта pyVmomi

Система отслеживания ошибок pyVmomi

Система отслеживания ошибок проекта pyVmomi

Страница GitHub проекта vSphere Automation SDK

Страница GitHub проекта vSphere Automation SDK для Python

Система отслеживания ошибок vSphere Automation SDK

Система отслеживания ошибок проекта vSphere Automation SDK для Python

Использование атрибутов виртуальных машин в плагине динамической инвентаризации VMware

Использование атрибутов виртуальных машин в плагине динамической инвентаризации VMware

Работа с playbook'ами

Введение в playbook'и

Использование зашифрованных переменных и файлов

Использование Vault в playbook'ах

© 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/scenario_guides/vmware_scenarios/vmware_inventory_hostnames.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API