Плагины инвентаризации
Плагины инвентаризации позволяют пользователям указывать источники данных для составления инвентаризации хостов, которые Ansible использует для назначения задач, либо через параметры командной строки -i /path/to/file и/или -i 'host1, host2, либо из других источников конфигурации.
Включение плагинов инвентаризации
Большинство плагинов инвентаризации, поставляемых с Ansible, по умолчанию отключены и должны быть включены в ваш файл ansible.cfg, чтобы работать. Вот как выглядит список по умолчанию в файле конфигурации, поставляемом с Ansible:
[inventory] enable_plugins = host_list, script, yaml, ini, auto
Этот список также определяет порядок, в котором каждый плагин пытается разобрать источник инвентаризации. Любые плагины, отсутствующие в списке, не будут рассматриваться, поэтому вы можете «оптимизировать» загрузку инвентаризации, сведя её к минимуму, используя только необходимые плагины. Например:
[inventory] enable_plugins = advanced_host_list, constructed, yaml
Использование плагинов инвентаризации
Единственное требование для использования плагина инвентаризации после его включения — это предоставление источника инвентаризации для разбора. Ansible будет пытаться использовать список включенных плагинов инвентаризации в определённом порядке для каждого предоставленного источника инвентаризации. Как только плагин инвентаризации успешно разбирает источник, любые оставшиеся плагины инвентаризации будут пропущены для этого источника.
Список плагинов
Вы можете использовать ansible-doc -t inventory -l для просмотра списка доступных плагинов. Используйте ansible-doc -t inventory <plugin name> для просмотра документации и примеров, относящихся к конкретному плагину.
- advanced_host_list — Разбирает список хостов с диапазонами
- auto — Загружает и выполняет плагин инвентаризации, указанный в конфигурации YAML
- aws_ec2 — Источник инвентаризации ec2
- constructed — Использует Jinja2 для создания переменных и групп на основе существующей инвентаризации.
- host_list — Разбирает строку списка хостов
- ini — Использует файл Ansible INI в качестве источника инвентаризации.
- k8s — Источник инвентаризации Kubernetes (K8s)
- openshift — Источник инвентаризации OpenShift
- openstack — Источник инвентаризации OpenStack
- script — Выполняет скрипт инвентаризации, возвращающий JSON
- virtualbox — Источник инвентаризации virtualbox
- yaml — Использует файл YAML в качестве источника инвентаризации.
См. также
- О Playbook
- Вступление к Playbook
- Плагины обратного вызова
- Плагины обратного вызова Ansible
- Плагины подключения
- Плагины подключения Ansible
- Фильтры
- Плагины фильтров Jinja2
- Тесты
- Плагины тестов Jinja2
- Поиски
- Плагины поисков Jinja2
- Плагины переменных
- Плагины переменных Ansible
- Список рассылки пользователей
- У вас есть вопрос? Загляните на форум!
- irc.freenode.net
- #ansible IRC чат-канал
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/plugins/inventory.html