Spec-Zone.ru › Ansible

community.general.opennebula inventory — источник инвентаризации OpenNebula

Примечание

Этот плагин инвентаризации входит в коллекцию community.general (версия 12.6.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install community.general.

Чтобы использовать её в плейбуке, укажите: community.general.opennebula.

Добавлено в community.general 3.8.0

  • Краткое описание
  • Параметры
  • Примечания
  • Примеры

Краткое описание

  • Получение хостов инвентаризации из облака OpenNebula.
  • Использует файл конфигурации YAML с расширением opennebula.yml или opennebula.yaml для задания значений параметров.
  • Использует api_authfile, ~/.one/one_auth или ONE_AUTH, указывающий на файл с учетными данными OpenNebula.

Параметры

Параметр

Комментарии

api_authfile

string

Если не заданы ни api_username, ни api_password, выполняется попытка аутентификации с помощью файла авторизации ONE. Путь по умолчанию: ~/.one/one_auth.

Задайте переменную окружения ONE_AUTH, чтобы переопределить этот путь.

Конфигурация:

  • Переменная окружения: ONE_AUTH

api_password

string

Пароль или токен пользователя для входа на RPC-сервер OpenNebula.

Если значение не задано, используется значение переменной окружения ONE_PASSWORD.

Конфигурация:

  • Переменная окружения: ONE_PASSWORD

api_url

string / обязательный

URL RPC-сервера OpenNebula.

Рекомендуется использовать HTTPS, чтобы имя пользователя и пароль передавались по сети в зашифрованном виде.

Если значение не задано, используется значение переменной окружения ONE_URL.

Конфигурация:

  • Переменная окружения: ONE_URL

api_username

string

Имя пользователя для входа на RPC-сервер OpenNebula. Если значение не задано, используется значение переменной окружения ONE_USERNAME.

Конфигурация:

  • Переменная окружения: ONE_USERNAME

compose

dictionary

Создание переменных на основе выражений Jinja2.

По умолчанию: {}

filter_by_label

string

Возвращать только серверы, отфильтрованные по этой метке.

group_by_labels

boolean

Создавать группы хостов по меткам виртуальных машин.

Варианты:

  • false
  • true ← (по умолчанию)

groups

dictionary

Добавлять хосты в группы на основе условий Jinja2.

По умолчанию: {}

hostname

string

Поле для сопоставления с именем хоста. Обратите внимание: v4_first_ip соответствует первому обнаруженному IPv4-адресу виртуальной машины.

Варианты:

  • "v4_first_ip" ← (по умолчанию)
  • "v6_first_ip"
  • "name"

keyed_groups

list / элементы=dictionary

Добавлять хосты в группы на основе значений переменной.

По умолчанию: []

default_value

string

добавлено в ansible-core 2.12

Значение по умолчанию, если значение переменной хоста равно None или является пустой строкой.

Этот параметр нельзя использовать одновременно с keyed_groups[].trailing_separator.

key

string

Ключ входного словаря, используемый для создания групп.

parent_group

string

Родительская группа для группы, созданной по ключу.

prefix

string

Имя группы, созданной по ключу, будет начинаться с этого префикса.

По умолчанию: ""

separator

string

Разделитель, используемый при формировании имени группы по ключу.

По умолчанию: "_"

trailing_separator

boolean

добавлено в ansible-core 2.12

Задайте для этого параметра значение false, чтобы опустить keyed_groups[].separator после переменной хоста, если её значение равно None или является пустой строкой.

Этот параметр нельзя использовать одновременно с keyed_groups[].default_value.

Варианты:

  • false
  • true ← (по умолчанию)

leading_separator

boolean

добавлено в ansible-core 2.11

Используйте совместно с keyed_groups.

По умолчанию имя группы, созданной по ключу без указанного префикса или разделителя, начинается с символа подчёркивания.

Это связано с тем, что префикс по умолчанию — "", а разделитель по умолчанию — "_".

Задайте для этого параметра значение false, чтобы опустить начальный символ подчёркивания (или другой разделитель), если префикс не указан.

Если имя группы образуется из отображения, разделитель всё равно используется для объединения элементов.

Чтобы вообще не использовать разделитель в имени группы, задайте для группы, созданной по ключу, пустую строку в качестве разделителя.

Варианты:

  • false
  • true ← (по умолчанию)

plugin

string / обязательный

Токен, подтверждающий, что этот файл является источником данных для плагина «opennebula».

Варианты:

  • "community.general.opennebula"

strict

boolean

Если yes, недопустимые записи вызывают критическую ошибку; в противном случае они пропускаются, и выполнение продолжается.

Поскольку в выражениях можно использовать факты, они могут быть доступны не всегда; по умолчанию такие ошибки игнорируются.

Варианты:

  • false ← (по умолчанию)
  • true

use_extra_vars

boolean

добавлено в ansible-core 2.11

Объединять дополнительные переменные с переменными, доступными для композиции (наивысший приоритет).

Варианты:

  • false ← (по умолчанию)
  • true

Конфигурация:

  • Запись INI:

    [inventory_plugins]
    use_extra_vars = false
    
  • Переменная окружения: ANSIBLE_INVENTORY_USE_EXTRA_VARS

Примечание

Указанные выше записи конфигурации для каждого типа записей (переменная Ansible, переменная окружения и т. д.) расположены в порядке приоритета от низкого к высокому. Например, переменная, расположенная ниже в списке, переопределяет переменную, расположенную выше. Типы записей также упорядочены по приоритету от низкого к высокому. Например, запись в ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).

Примечания

Примечание

  • На этом этапе инвентаризация ещё не окончательно сформирована, поэтому автоматически заполненные группы all и ungrouped будут отражать только то, что в них явно добавили предыдущие источники инвентаризации.
  • Во время построения инвентаризации «магические переменные» времени выполнения недоступны. Например, groups и hostvars ещё не существуют.

Примеры

# inventory_opennebula.yml file in YAML format
# Example command line: ansible-inventory --list -i inventory_opennebula.yml

# Pass a label filter to the API
plugin: community.general.opennebula
api_url: https://opennebula:2633/RPC2
filter_by_label: Cache

Авторы

  • Kristian Feldsam (@feldsam)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Запросить помощь
  • Сообщить об ошибке
  • Запросить новую функцию
  • Связь

© 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/general/opennebula_inventory.html

Spec-Zone.ru

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