Добавлен небольшой совет к действительно хорошему ответу выше, если вы хотите программно поковыряться, вы можете
Используйте существующий ответ для hostvars:
ansible -m debug myhost -a "var=hostvars[inventory_hostname].ansible_version"
Но ansible _facts пуст, потому что debug
не запускает модуль setup
. Поэтому вам нужно попробовать что-то еще, например jq
, после обрезки вывода, чтобы сделать его действительным json.
ansible -m setup myhost | sed 's#.*SUCCESS =>##' | jq.ansible_facts.ansible_all_ipv4_addresses
Я подумал, что это может оказаться полезным для людей, исследующих гигантскую стену текста, которая появляется в анзиблируемых фактах, когда вы просто хотите что-то вродеjq.ansible_facts.ansible_devices.vda.size
systemctl --no-pager status httpd | grep Active
должен вернуть желаемый результат.