如何解决如何使用Ansible获取主机IP和主机名
我正在尝试创建一个任务,该任务将获取清单中的主机目标IP地址和主机名,然后将其保存到本地目录中的文件中。
很乐意像这样保存数据:
hostname:ip-address
从哪里开始?
解决方法
我建议使用“ delegate_to
”,我在计算机上尝试了一下,然后正常工作。我将第一步删除该文件(如果存在),以便可以多次执行。这是一个非常快速的示例,我建议对路径使用变量,等等。但是我认为您可以理解
---
- hosts: your_inventory
tasks:
- name: delete the file if exists
file:
path: /home/yourpath/host_ip.txt
state: absent
delegate_to: localhost
- name: get data to a file
lineinfile:
dest: /home/yourpath/host_ip.txt
create: yes
line: "{{hostvars[inventory_hostname].ansible_hostname}}:{{hostvars[inventory_hostname].ansible_default_ipv4.address}}"
delegate_to: localhost
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。