Как я могу использовать ansible playbook, чтобы получить имя группы на каждом из хостов? - PullRequest
0 голосов
/ 27 февраля 2019

Я использую ansible playbook для сценария аудита. Я использую ansible playbook с Jinja2 для создания панели мониторинга в HTML. Вот мой инвентарь

[Ubuntu16]
target1.com
[CentOS7]
target2.com

Я запускаю все хосты, чтобы проверить соединение, и я хочу сделать следующеешаги

  1. Подсчет всех хостов в инвентаре, разделенных по группам

  2. Если соединение установлено, зарегистрируйтесь в параметре (по группам)

  3. , а затем отправить параметр результата в шаблон Jinja2

Результат должен быть таким

Ubuntu16_sum_all = 1
Ubuntu16_alive = 1
Ubuntu16_dead = 1
CentOS7_sum_all = 1
CentOS7_alive = 1
CentOS7_dead = 1

У меня естьне знаю, как получить имя группы хоста, пока я запускаю все хосты в playbook.Пожалуйста, помогите

1 Ответ

0 голосов
/ 27 февраля 2019

Я не думаю, что есть прямой способ напрямую использовать описанный выше формат инвентаря.Мое предложение было бы взять имена хостов внутри переменной, как показано ниже:

---
hosts:
  - Ubuntu:
      - 1
      - 2
  - Centos:
      - 1
      - 2
  - Fedora:
      - 1
      - 2

В приведенном выше перечне вы можете просмотреть все имена хостов напрямую

...