Что я не понимаю, так это то, что вы вызываете сервер, чтобы собрать информацию о его интерфейсах и отправить файл обратно на тот же сервер с информацией, которую вы можете собрать снова в любое время. Я не вижу смысла, но здесь мы идем.
Применение принципа KISS: вызовите ifconfig
, который вернет подробности обо всех интерфейсах и сохранит результат в файле на удаленном хосте
playbook.yml
- name: Simple interface info dump on hosts
hosts: whatevergroup_you_need
become: true
gather_facts: false
tasks:
- name: dump ifconfig result to /root/network_interface.txt
shell: ifconfig > /root/network_interfaces.txt
Примечания:
become: true
требуется только потому, что вы хотите записать свой файл в домашний каталог root. Если вы записываете файл где-либо еще с надлежащими разрешениями, сам ifconfig может быть выполнен любым пользователем
- Поскольку нет необходимости собирать какую-либо другую информацию с хоста,
gather_facts: false
ускорит игру для этой единственной простой задачи.
shell
модуль обязателен для перенаправления вывода в файл. Если вас беспокоит безопасность, вы можете вместо этого использовать модуль command
(без перенаправления файлов), захватить вывод с помощью register
и записать содержимое в файл в следующей задаче
- Я предполагал, что вы звоните на хост Linux, и
ifconfig
выводит необходимую вам информацию. Если это не так, вам нужно переписать свой вопрос и быть более точным в отношении того, чего вы пытаетесь достичь.