openstack – Источник инвентаризации OpenStack
Обзор
- Получение хостов инвентаризации из облаков OpenStack
- Использует конфигурационный файл openstack.(yml|yaml) YAML для настройки плагина инвентаризации
- Использует стандартный конфигурационный файл clouds.yaml YAML для настройки учетных данных облака
Требования
Ниже приведены требования к локальному узлу-мастеру, который выполняет эту инвентаризацию.
- openstacksdk
Параметры
| Параметр | Варианты/Значения по умолчанию | Конфигурация | Комментарии |
|---|---|---|---|
| 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. Если это значение указано, оно будет проверено в первую очередь. По умолчанию скрипт инвентаризации добавляет /etc/ansible/openstack.yaml и /etc/ansible/openstack.yml к стандартным расположениям, документированным по адресу https://docs.openstack.org/os-client-config/latest/user/configuration.html#config-files | |
| 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
Статус
- Эта инвентаризация не гарантирует обратной совместимости. [превью]
- Эта инвентаризация поддерживается сообществом Ansible. [сообщество]
Авторы
- Marco Vito Moscaritolo <marco@agavee.com>
- Jesse Keating <jesse.keating@rackspace.com>
Подсказка
Если вы заметили какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
Подсказка
Записи конфигурации для каждого типа записи имеют порядок приоритета от низкого к высокому. Например, переменная, которая стоит ниже в списке, переопределит переменную, которая стоит выше.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/plugins/inventory/openstack.html