0Pricing
Ansible Academy · Урок

Исследование фактов с модулем setup

Выводите и изучайте дерево фактов узла.

«Исследование фактов с модулем setup» — бесплатный урок Ansible Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ansible Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ansible Academy содержит 4 уроков всего.

Сборщик фактов

Скрытый шаг «Сбор фактов» на самом деле выполняется одним модулем — модулем setup. Вы можете вызвать его самостоятельно для исследования. 🌟

Запуск setup в режиме ad hoc

Направьте ad hoc-команду на узел с помощью -m setup, чтобы вывести всё дерево его фактов прямо в терминал.

ansible host1 -m setup

Возвращает JSON

Результат представляет собой большой объект JSON внутри ansible_facts. Каждый ключ — это факт, который позже можно использовать в playbook.

"ansible_facts": {
  "distribution": "Ubuntu"
}

Это очень много

Полный вывод может занимать сотни строк. Чтобы найти нужное, можно фильтровать факты, вместо того чтобы просматривать всё подряд.

Фильтрация по шаблону

Модуль setup принимает аргумент filter. Передайте glob-шаблон — и он вернёт только соответствующие ключи фактов.

ansible host1 -m setup -a "filter=ansible_distribution*"

Какие факты часто ищут

Полезные ключи включают ansible_distribution, ansible_os_family, ansible_memtotal_mb и ansible_default_ipv4 для работы с сетью.

Вложенные сетевые факты

Некоторые факты являются вложенными. Основной IP узла находится внутри ansible_default_ipv4, под ключом address, к которому нужно перейти.

ansible_default_ipv4:
  address: 10.0.0.5

setup внутри playbook

Вы также можете указать setup как задачу, чтобы повторно собрать факты в середине play. Это полезно после изменения чего-либо на узле.

- name: Refresh facts
  ansible.builtin.setup:

Ограничение собираемых данных

Параметр gather_subset сужает область сбора, например оставляет только сетевые факты, поэтому setup выполняется быстрее, когда нужна лишь часть данных.

- ansible.builtin.setup:
    gather_subset:
      - network

Исследуйте перед созданием

Сначала запустить setup — отличная привычка. Посмотрите реальные имена фактов на своём узле, а затем уверенно ссылайтесь на них в задачах.

Только чтение и безопасность

Модуль setup только читает информацию и ничего не изменяет на узле. Запускайте его столько раз, сколько нужно для исследования.

Быстрая проверка

Как вывести факты одного узла на экран?

Повторение

Вы использовали модуль setup, чтобы вывести и отфильтровать факты, и узнали реальные имена ключей, прежде чем полагаться на них в playbook. ✨

Часто задаваемые вопросы

Урок «Исследование фактов с модулем setup» бесплатный?

Да — полный текст урока «Исследование фактов с модулем setup» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ansible Academy, подпишись на CoddyKit PRO. Курс Ansible Academy содержит 4 уроков всего.

Чему я научусь в уроке «Исследование фактов с модулем setup»?

Выводите и изучайте дерево фактов узла. Ты практикуешь Ansible Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Ansible Academy?

Предыдущий опыт не требуется. Ansible Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Исследование фактов с модулем setup»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Ansible Academy?

Да. Каждый урок Ansible Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Что такое факты и зачем они нужны
  2. Исследование фактов с модулем setup
  3. Использование ansible_facts в задачах
  4. Отключение сбора фактов для ускорения
← Назад к Ansible Academy