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 строка | записи ini: [defaults] [inventory] переменная среды: ANSIBLE_CACHE_PLUGIN_CONNECTION переменная среды: ANSIBLE_INVENTORY_CACHE_CONNECTION | Данные или путь подключения к кэшу, см. документацию плагина кэша для подробностей. | |
| cache_plugin строка | По умолчанию: "memory" | записи ini: [defaults] [inventory] переменная среды: ANSIBLE_CACHE_PLUGIN переменная среды: ANSIBLE_INVENTORY_CACHE_PLUGIN | Плагин кэша для использования с исходными данными инвентаризации. |
| cache_prefix строка | По умолчанию: "ansible_inventory_" | записи ini: [default] [inventory] переменная среды: ANSIBLE_CACHE_PLUGIN_PREFIX переменная среды: ANSIBLE_INVENTORY_CACHE_PLUGIN_PREFIX | Префикс для файлов/таблиц плагина кэша. |
| cache_timeout целое число | По умолчанию: 3600 | записи ini: [defaults] [inventory] переменная среды: ANSIBLE_CACHE_PLUGIN_TIMEOUT переменная среды: ANSIBLE_INVENTORY_CACHE_TIMEOUT | Срок действия кэша в секундах |
| clouds_yaml_path список / элементы=строка | переменная среды: OS_CLIENT_CONFIG_FILE | Замена пути к файлу clouds.yaml. Если это значение указано, оно будет проверяться в первую очередь. По умолчанию в инвентаризации ansible к стандартным расположениям, описанным в https://docs.openstack.org/os-client-config/latest/user/configuration.html#config-files, добавляются /etc/ansible/openstack.yaml и /etc/ansible/openstack.yml. | |
| compose словарь | По умолчанию: {} | Создаёт переменные из выражений jinja2. | |
| expand_hostvars boolean |
| Выполнение дополнительных команд на каждом хосте для получения дополнительной информации о хосте. Может взаимодействовать с cinder и neutron и может быть дорогостоящим для пользователей с большим количеством хостов. (Обратите внимание, что значение по умолчанию отличается от значения по умолчанию старого скрипта инвентаризации openstack.py опции expand_hostvars). | |
| fail_on_errors boolean |
| Приводит к завершению инвентаризации с ошибкой и отсутствием хостов, если одно облако завершилось ошибкой (например, плохие учетные данные или недоступность). При значении False инвентаризация вернёт столько хостов, сколько сможет, от тех облаков, с которыми сможет связаться. (Обратите внимание, что значение по умолчанию отличается от значения по умолчанию старого скрипта инвентаризации openstack.py опции fail_on_errors). | |
| groups словарь | По умолчанию: {} | Добавляет хосты в группу на основе условных выражений Jinja2. | |
| inventory_hostname строка |
| Что зарегистрировать в качестве имени хоста инвентаризации. Если установлено в 'uuid', будет использоваться uuid сервера, и будет создана группа для имени сервера. Если установлено в 'name', будет использоваться имя сервера, если имя сервера встречается более одного раза, то используется логика 'uuid'. Значение по умолчанию — 'name', что отличается от значения по умолчанию старого скрипта инвентаризации openstack.py опции use_hostnames). | |
| keyed_groups список / элементы=строка | По умолчанию: [] | Добавляет хосты в группу на основе значений переменной. | |
| only_clouds список / элементы=строка | По умолчанию: [] | Список облаков из clouds.yaml для использования, вместо использования всего списка. | |
| plugin строка / обязательный |
| токен, который гарантирует, что это файл исходного кода для плагина 'openstack'. | |
| private boolean |
| Использует частный интерфейс каждого сервера, если он есть, как IP-адрес хоста в инвентаризации. Это может быть полезно, если ansible запускается внутри сервера в облаке, и вы предпочитаете взаимодействие с вашими серверами через частную сеть. | |
| show_all boolean |
| переключает отображение всех ВМ по отношению к отображению только тех, у которых есть рабочий IP-адрес | |
| strict boolean |
| Если yes, то некорректные записи становятся фатальной ошибкой, иначе они пропускаются и процесс продолжается.Поскольку можно использовать факты в выражениях, они могут не всегда быть доступными, и такие ошибки пропускаются по умолчанию. |
Примеры
# 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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/openstack/cloud/openstack_inventory.html