ansible-playbook之获取服务器IP存储到本地文件
1.编写获取服务器IP的剧本
vim get_ips.yml
---
- hosts: all
remote_user: root
vars:
ipv4: "{{ ansible_default_ipv4.address }}"
tasks:
- name: Gather facts
setup:- name: Append server IP to local file
lineinfile:
path: "./ip.txt"
line: "{{ ipv4 }}"
create: yes
insertafter: EOF
delegate_to: localhost
- 使用
ansible.builtin.lineinfile
模块来将每个 IP 地址追加到文件ip.txt
中,而不是覆盖文件。每次执行时,它都会将 IP 地址添加到文件末尾。 delegate_to: localhost
:将任务委托给本地机器执行,因此 IP 地址会被追加到本地的ip.txt
文件中
2. 执行获取IP的剧本
ansible-playbook get_ips.yml