setup - Сбор фактов о удаленных хостах
Описание
- Этот модуль автоматически вызывается playbook'ами для сбора полезных переменных о удалённых хостах, которые могут быть использованы в playbook'ах. Он также может быть выполнен напрямую
/usr/bin/ansibleдля проверки доступных переменных для хоста. Ansible автоматически предоставляет множество фактов о системе. - Этот модуль также поддерживает цели Windows.
Параметры
| параметр | обязательно | значение по умолчанию | варианты | комментарии |
|---|---|---|---|---|
| fact_path (добавлено в 1.3)
| нет | /etc/ansible/facts.d | Путь, используемый для локальных фактов ansible (*.fact) - файлы в этой директории будут выполнены (если исполняемые) и их результаты будут добавлены в ansible_local факты, если файл не исполняемый, он будет прочитан. См. примечания для вариантов Windows. (с версии 2.1) Формат файла/результатов может быть json или ini. | |
| filter | нет | * | Если указано, возвращаются только факты, которые соответствуют этому шаблону (fnmatch). | |
| gather_subset (добавлено в 2.1)
| нет | all | Если указано, ограничивает дополнительные собранные факты заданным подмножеством. Возможные значения: all, min, hardware, network, virtual, ohai, и facter. Можно указать список значений, чтобы указать более широкое подмножество. Значения также могут быть использованы с начальным ! для указания, что конкретное подмножество не должно собираться. Например: !hardware, !network, !virtual, !ohai, !facter. Если указано !all, то собирается только подмножество min. Чтобы избежать сбора даже подмножества min, укажите !all и !min подмножества. Чтобы собрать только определенные факты, используйте !all, !min и укажите конкретные подмножества фактов. Используйте параметр filter, если вы не хотите отображать некоторые собранные факты. | |
| gather_timeout (добавлено в 2.2)
| нет | 10 | Установите время ожидания по умолчанию в секундах для индивидуального сбора фактов |
Примеры
# Display facts from all hosts and store them indexed by I(hostname) at C(/tmp/facts). # ansible all -m setup --tree /tmp/facts # Display only facts regarding memory found by ansible on all hosts and output them. # ansible all -m setup -a 'filter=ansible_*_mb' # Display only facts returned by facter. # ansible all -m setup -a 'filter=facter_*' # Collect only facts returned by facter. # ansible all -m setup -a 'gather_subset=!all,!any,facter' # Display only facts about certain interfaces. # ansible all -m setup -a 'filter=ansible_eth[0-2]' # Restrict additional gathered facts to network and virtual (includes default minimum facts) # ansible all -m setup -a 'gather_subset=network,virtual' # Collect only network and virtual (excludes default minimum facts) # ansible all -m setup -a 'gather_subset=!all,!any,network,virtual' # Do not call puppet facter or ohai even if present. # ansible all -m setup -a 'gather_subset=!facter,!ohai' # Only collect the default minimum amount of facts: # ansible all -m setup -a 'gather_subset=!all' # Collect no facts, even the default minimum subset of facts: # ansible all -m setup -a 'gather_subset=!all,!min' # Display facts from Windows hosts with custom facts stored in C(C:\custom_facts). # ansible windows -m setup -a "fact_path='c:\custom_facts'"
Примечания
Примечание
- В последующих версиях будут добавлены дополнительные факты ansible. Если facter или ohai установлены, переменные из этих программ также будут сохранены в файле JSON для использования в шаблонировании. Эти переменные имеют префиксы
facter_иohai_, чтобы легко определить их источник. Все переменные передаются вызывающей стороне. Использование фактов ansible и отказ от установки facter и ohai позволяет избежать зависимостей от Ruby на удалённых системах. (См. также facter и ohai.) - Параметр filter фильтрует только подключаемые ключи первого уровня под ansible_facts.
- Если целевой хост - Windows, у вас пока нет возможности использовать
filter, так как это обеспечивается более простой реализацией модуля. - Если целевой хост - Windows, теперь вы можете использовать
fact_path. Убедитесь, что этот путь существует на целевом хосте. Файлы в этом пути ДОЛЖНЫ быть скриптами PowerShell (*.ps1) и их вывод должен быть форматируемым в JSON (Ansible позаботится об этом). Протестируйте вывод ваших скриптов. Этот параметр был добавлен в Ansible 2.1. - Этот модуль также поддерживает цели Windows.
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики этого модуля гарантируют, что не будет вноситься обратной совместимости интерфейса.
Информация о техническом обслуживании
Для получения дополнительной информации о поддержке этого модуля Red Hat, пожалуйста, обратитесь к этому knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>
Для получения помощи в разработке модулей, если вы так заинтересованы, прочитайте Информацию о сообществе и сотрудничестве, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/setup_module.html