community.hrobot.robot – Инвентаризация роботов Hetzner
Примечание
Этот плагин является частью коллекции community.hrobot (версия 1.1.0).
Для его установки используйте: ansible-galaxy collection install community.hrobot.
Для использования в книге задач укажите: community.hrobot.robot.
В версии 1.1.0: плагина community.hrobot
Обзор
- Читает серверы из API Hetzner Robot.
- Использует файл конфигурации YAML, который заканчивается
robot.ymlилиrobot.yaml. - Плагин инвентаризации добавляет все значения из https://robot.your-server.de/doc/webservice/en.html#get-server, предваряемые
hrobot_, в инвентаризацию сервера. Например, переменнаяhrobot_dcсодержит данные центра обработки данных, в котором расположен сервер.
Параметры
| Параметр | Варианты/Значения по умолчанию | Конфигурация | Комментарии |
|---|---|---|---|
| cache boolean |
| записи ini: [inventory] переменная среды:ANSIBLE_INVENTORY_CACHE | Включить/отключить кэширование исходных данных инвентаризации, для работы требуется настройка плагина кэширования. |
| cache_connection строка | записи ini: [defaults] [inventory] переменная среды:ANSIBLE_CACHE_PLUGIN_CONNECTION переменная среды:ANSIBLE_INVENTORY_CACHE_CONNECTION | Данные подключения или путь к кэшу, подробности см. в документации плагина кэширования. | |
| cache_plugin строка | По умолчанию: "память" | записи 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 | Срок действия кэша в секундах |
| compose словарь | По умолчанию: {} | Создание переменных из выражений jinja2. | |
| filters словарь | По умолчанию: {} | Словарь пар фильтров. Доступные фильтры перечислены здесь, как ключи сервера, например status или server_ip. См. https://robot.your-server.de/doc/webservice/en.html#get-server для всех возможных значений. | |
| groups словарь | По умолчанию: {} | Добавление хостов в группу на основе условных выражений Jinja2. | |
| hetzner_password строка / обязательно | переменная среды:HROBOT_API_PASSWORD | Пароль для пользователя веб-сервиса Robot. | |
| hetzner_user строка / обязательно | переменная среды:HROBOT_API_USER | Имя пользователя для пользователя веб-сервиса Robot. | |
| keyed_groups список / элементы=строка | По умолчанию: [] | Добавление хостов в группу на основе значений переменной. | |
| plugin строка / обязательно |
| Токен, подтверждающий, что это исходный файл для плагина. | |
| strict boolean |
| Если yes, считать некорректные записи ошибкой, иначе пропустить и продолжить.Поскольку использование фактов в выражениях возможно, они могут быть недоступны, и по умолчанию эти ошибки игнорируются. |
Примеры
# Fetch all hosts in Hetzner Robot
plugin: community.hrobot.robot
# Filters all servers in ready state
filters:
status: ready
# Example using constructed features to create groups
plugin: community.hrobot.robot
filters:
status: ready
traffic: unlimited
# keyed_groups may be used to create custom groups
strict: false
keyed_groups:
# Add e.g. groups for every data center
- key: hrobot_dc
separator: ""
# Use the IP address to connect to the host
compose:
server_name_ip: hrobot_server_name ~ '-' ~ hrobot_server_ip
Авторы
- Oleksandr Stepanov (@alexandrst88)
© 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/community/hrobot/robot_inventory.html