openstack.cloud.openstack – Источник инвентаризации OpenStack
Примечание
Этот плагин входит в коллекцию openstack.cloud (версия 1.2.1).
Для его установки используйте: ansible-galaxy collection install openstack.cloud.
Для использования в playbook укажите: openstack.cloud.openstack.
Обзор
- Получение хостов инвентаризации из OpenStack облаков
- Использует файл конфигурации openstack.(yml|yaml) YAML для настройки плагина инвентаризации
- Использует стандартный файл конфигурации clouds.yaml YAML для настройки учетных данных облака
Требования
Ниже приведены требования к локальному узлу-контроллеру, на котором выполняется эта инвентаризация.
- openstacksdk >= 0.28
Параметры
| Параметр | Варианты/Значения по умолчанию | Конфигурация | Комментарии |
|---|---|---|---|
| all_projects boolean |
| Отображает серверы всех проектов | |
| cache boolean |
| записи ini: [inventory] переменная среды:ANSIBLE_INVENTORY_CACHE | Включение/выключение кэширования исходных данных инвентаризации, требует настройки плагина кэша для работы. |
| cache_connection string | записи ini: [defaults] [inventory] переменная среды:ANSIBLE_CACHE_PLUGIN_CONNECTION переменная среды:ANSIBLE_INVENTORY_CACHE_CONNECTION | Данные или путь к соединению кэша, для получения подробной информации обратитесь к документации плагина кэша. | |
| cache_plugin string | Значение по умолчанию: "memory" | записи ini: [defaults] [inventory] переменная среды:ANSIBLE_CACHE_PLUGIN переменная среды:ANSIBLE_INVENTORY_CACHE_PLUGIN | Плагин кэширования для использования исходных данных инвентаризации. |
| cache_prefix string | Значение по умолчанию: "ansible_inventory_" | записи ini: [default] [inventory] переменная среды:ANSIBLE_CACHE_PLUGIN_PREFIX переменная среды:ANSIBLE_INVENTORY_CACHE_PLUGIN_PREFIX | Префикс для использования в файлах/таблицах плагина кэша |
| cache_timeout integer | Значение по умолчанию: 3600 | записи ini: [defaults] [inventory] переменная среды:ANSIBLE_CACHE_PLUGIN_TIMEOUT переменная среды:ANSIBLE_INVENTORY_CACHE_TIMEOUT | Время кэширования в секундах |
| clouds_yaml_path list / elements=string | переменная среды:OS_CLIENT_CONFIG_FILE | Переопределение пути к файлу clouds.yaml. Если это значение задано, оно будет проверяться в первую очередь. По умолчанию, скрипт инвентаризации ansible добавляет /etc/ansible/openstack.yaml и /etc/ansible/openstack.yml к обычным местоположениям, указанным в https://docs.openstack.org/os-client-config/latest/user/configuration.html#config-files | |
| compose dictionary | Значение по умолчанию: {} | Создание переменных из выражений jinja2. | |
| expand_hostvars boolean |
| Выполнение дополнительных команд на каждом хосте для получения дополнительной информации о хосте. Может запрашивать информацию у cinder и neutron и может быть ресурсоемким для пользователей с большим количеством хостов. (Обратите внимание, что значение по умолчанию противоположно значению параметра expand_hostvars в старом скрипте инвентаризации openstack.py) | |
| fail_on_errors boolean |
| Приводит к ошибке инвентаризации и возвращает без хостов, если одно облако потерпело неудачу (например, плохие учетные данные или недоступность). Если установлено в значение False, инвентаризация вернет столько хостов, сколько сможет, из тех облаков, с которыми сможет связаться. (Обратите внимание, что значение по умолчанию противоположно значению параметра fail_on_errors в старом скрипте инвентаризации openstack.py) | |
| groups dictionary | Значение по умолчанию: {} | Добавление хостов в группу на основе условных выражений Jinja2. | |
| inventory_hostname string |
| Что зарегистрировать в качестве имени хоста инвентаризации. Если установлено в 'uuid', будет использоваться uuid сервера и будет создана группа для имени сервера. Если установлено в 'name', будет использоваться имя сервера, если нет более одного сервера с одинаковым именем, в этом случае используется логика 'uuid'. Значение по умолчанию - 'name', что противоположно значению параметра use_hostnames в старом скрипте инвентаризации openstack.py) | |
| keyed_groups list / elements=string | Значение по умолчанию: [] | Добавление хостов в группу на основе значений переменной. | |
| leading_separator boolean добавлен в версии 2.11 ansible.builtin |
| Используется в сочетании с keyed_groups. По умолчанию, группа с ключом, не имеющая префикса или разделителя, будет иметь имя, начинающееся с подчеркивания. Это связано с тем, что значение по умолчанию для префикса - "" и для разделителя - "_". Установите этот параметр в значение False, чтобы опустить начальное подчеркивание (или другой разделитель), если префикс не указан. Если имя группы получено из отображения, разделитель по-прежнему используется для конкатенации элементов. Чтобы вообще не использовать разделитель в имени группы, установите разделитель для группы с ключом в пустую строку. | |
| only_clouds list / elements=string | Значение по умолчанию: [] | Список облаков из clouds.yaml для использования вместо использования всего списка. | |
| plugin string / required |
| Токен, гарантирующий, что это исходный файл для плагина 'openstack'. | |
| private boolean |
| Использовать частный интерфейс каждого сервера, если он есть, как IP-адрес хоста в инвентаризации. Это может быть полезно, если вы запускаете ansible внутри сервера в облаке и предпочитаете взаимодействовать со своими серверами через частную сеть. | |
| show_all boolean |
| Переключает отображение всех виртуальных машин по сравнению с отображением только тех, у которых работает IP-адрес. | |
| strict boolean |
| Если yes сделать недействительные записи ошибкой, иначе пропустить и продолжить.Поскольку в выражениях можно использовать факты, они могут быть недоступны, и мы игнорируем эти ошибки по умолчанию. | |
| use_extra_vars boolean добавлен в версии 2.11 ansible.builtin |
| записи ini: [inventory_plugins] переменная среды:ANSIBLE_INVENTORY_USE_EXTRA_VARS | Объединить дополнительные переменные с доступными переменными для композиции (высший приоритет). |
Примеры
# file must be named openstack.yaml or openstack.yml # Make the plugin behave like the default behavior of the old script plugin: openstack expand_hostvars: yes fail_on_errors: yes all_projects: yes
Авторы
- OpenStack Ansible SIG
© 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/openstack/cloud/openstack_inventory.html