我需要从远程主机复制文件'/etc/resolv.cof'并将其复制到多个远程主机上.
my hosts:
Ansible
ubuntu1-4
Run Code Online (Sandbox Code Playgroud)
我想将文件从ubuntu1复制到ubuntu2,ubuntu3和ubuntu4我尝试同步模块但我不能/不能在ubuntu1-4上使用rsync作为恶魔
有没有比在Ansible和Ansible上复制到ubuntu2-4更好的方法?
lar*_*sks 10
如果您只是在谈论单个文件,则不需要该synchronize模块.您可以使用该fetch模块从远程主机获取文件.在本地系统上拥有该文件后,您只需使用该copy模块将其分发给其他主机即可.
就像是:
- hosts: ubuntu1
tasks:
- fetch:
src: /etc/resolv.conf
dest: ./resolv.conf
flat: true
- hosts: all:!ubuntu1
tasks:
- copy:
src: ./resolv.conf
dest: /etc/resolv.conf
Run Code Online (Sandbox Code Playgroud)
虽然这有效,但更好的解决方案是将适当的维护resolv.conf作为ansible配置的一部分并将其分发给所有主机,而不是将其从一个远程复制到其他主机.