community.docker.docker_machine – Источник инвентаризации Docker Machine
Примечание
Этот плагин входит в коллекцию community.docker (версия 1.2.2).
Для его установки используйте: ansible-galaxy collection install community.docker.
Для использования в плейбуке укажите: community.docker.docker_machine.
Обзор
- Получение хостов инвентаризации из Docker Machine.
- Использует YAML-файл конфигурации, заканчивающийся на docker_machine.(yml|yaml).
- Плагин устанавливает стандартные переменные хоста
ansible_host,ansible_port,ansible_userиansible_ssh_private_key. - Плагин сохраняет переменные вывода 'env' Docker Machine в переменных хоста с префиксом dm_.
Требования
Ниже перечислены требования к локальному контроллеру, на котором будет выполняться эта инвентаризация.
Параметры
| Параметр | Варианты/Значения по умолчанию | Конфигурация | Комментарии |
|---|---|---|---|
| compose словарь | Значение по умолчанию: {} | Создать переменные из выражений Jinja2. | |
| daemon_env строка |
| Необходимо ли извлекать переменные окружения подключения демона Docker, и как вести себя, если их невозможно извлечь. С require и require-silently, извлечь их и пропустить любой хост, для которого их невозможно извлечь. Будет выведено предупреждение для любого пропущенного хоста, если выбран вариант require. С optional и optional-silently, извлечь их и не пропускать хосты, для которых их невозможно извлечь. Будет выведено предупреждение для хостов, где их невозможно извлечь, если выбран вариант optional. С skip, не пытаться извлечь переменные окружения подключения демона Docker.Если они извлечены успешно, переменные будут иметь префикс dm_ и сохранены как переменные хоста. | |
| groups словарь | Значение по умолчанию: {} | Добавить хосты в группу на основе условных выражений Jinja2. | |
| keyed_groups список / элементы=строка | Значение по умолчанию: [] | Добавить хосты в группу на основе значений переменной. | |
| leading_separator логическое значение добавлен в 2.11 ansible.builtin |
| Используется совместно с keyed_groups. По умолчанию, группа keyed, у которой нет префикса или разделителя, будет иметь имя, начинающееся с подчеркивания. Это происходит потому, что по умолчанию префикс — "" и разделитель — "_". Установите этот параметр в False, чтобы опустить ведущее подчеркивание (или другой разделитель), если префикс не указан. Если имя группы получено из сопоставления, разделитель по-прежнему используется для конкатенации элементов. Чтобы вообще не использовать разделитель в имени группы, установите разделитель для группы keyed на пустую строку. | |
| plugin строка / требуется |
| маркер, гарантирующий, что это файл источника для плагина docker_machine. | |
| running_required логическое значение |
| если true, хосты, которые Docker Machine показывает в состоянии отличном от running, будут пропущены. | |
| strict логическое значение |
| Если yes, то недействительные записи станут фатальной ошибкой, в противном случае будут пропущены и продолжено выполнение.Поскольку в выражениях можно использовать факты, они могут не всегда быть доступными, и по умолчанию эти ошибки игнорируются. | |
| use_extra_vars логическое значение добавлен в 2.11 ansible.builtin |
| записи ini: [inventory_plugins] env:ANSIBLE_INVENTORY_USE_EXTRA_VARS | Объединить дополнительные переменные в доступные переменные для составления (высший приоритет). |
| verbose_output логическое значение |
| если true, включить все доступные данные метаданных узлов (например, Image, Region, Size) как JSON-объект с именем docker_machine_node_attributes. |
Примеры
# Minimal example
plugin: community.docker.docker_machine
# Example using constructed features to create a group per Docker Machine driver
# (https://docs.docker.com/machine/drivers/), e.g.:
# $ docker-machine create --driver digitalocean ... mymachine
# $ ansible-inventory -i ./path/to/docker-machine.yml --host=mymachine
# {
# ...
# "digitalocean": {
# "hosts": [
# "mymachine"
# ]
# ...
# }
strict: no
keyed_groups:
- separator: ''
key: docker_machine_node_attributes.DriverName
# Example grouping hosts by Digital Machine tag
strict: no
keyed_groups:
- prefix: tag
key: 'dm_tags'
# Example using compose to override the default SSH behaviour of asking the user to accept the remote host key
compose:
ansible_ssh_common_args: '"-o StrictHostKeyChecking=accept-new"'
Авторы
- Ximon Eighteen (@ximon18)
© 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/community/docker/docker_machine_inventory.html