Ansible - 在服务器之间复制

时间:2017-11-22 07:38:18

标签: ansible

我和Ansible有点新手。我有一个包含4个主机的主机文件。

我还有一个'copymap'字典,我为了在服务器之间复制数据(文件夹)而构建(完整的'copymap'字典比下面的例子大得多)。

copymap:
      - {service: "zeppelin", src: '3.3.3.3', dest: '2.2.2.2'}
      - {service: "local_data", src: '4.4.4.4', dest: '1.1.1.1'}

我想在服务器之间复制数据,当源为copymap.src且目标为copymap.dest时。

我知道如何使用'with_items'进行迭代,但我不确定我是否理解如何指定源和目标服务器。有没有人使用内置的“复制”模块从动态远程复制到远程服务器?

1 个答案:

答案 0 :(得分:0)

使用synchronizehttp://docs.ansible.com/ansible/latest/synchronize_module.html

examples部分,您可以找到推拉样本。

推送:

# Synchronization using rsync protocol on delegate host (push)
- synchronize:
    src: /some/absolute/path/
    dest: rsync://somehost.com/path/
  delegate_to: delegate.host

拉​​线:

# Synchronization using rsync protocol on delegate host (pull)
- synchronize:
    mode: pull
    src: rsync://somehost.com/path/
    dest: /some/absolute/path/
  delegate_to: delegate.host