【问题标题】:How to synchronize a file between two remote servers in Ansible?如何在 Ansible 中的两个远程服务器之间同步文件?
【发布时间】:2019-07-31 12:49:59
【问题描述】:

我的最终目标是将file.txtHost2 复制到Host1。但是,每当我执行该功能时,我都会收到相同的错误。我已经三次检查了我的间距,并确保我拼写正确,但似乎没有任何效果。

启动 playbook 的命令:

ansible-playbook playbook_name.yml -i inventory/inventory_name -u username -k

我的代码:

- hosts: Host1
  tasks: 


  - name: Synchronization using rsync protocol on delegate host (pull)
    synchronize:
        mode: pull
        src: rsync://Host2.linux.us.com/tmp/file.txt
        dest: /tmp
    delegate_to: Host2.linux.us.com

预期结果:

Successfully working

实际结果:

fatal: [Host1.linux.us.com]: FAILED! => {"changed": false, "cmd": "sshpass", "msg": "[Errno 2] No such file or directory", "rc": 2}

【问题讨论】:

  • 您正在尝试从 host2 复制到 host1。在这种情况下,您不需要模式:拉。删除模式:拉一下试试
  • 这个问题已经在多个案例中得到了回答。 stackoverflow.com/questions/25505146/…

标签: ansible synchronize


【解决方案1】:

我和你一样的问题,在目标主机上安装sshpass可以正常工作 yum install -y sshpass

【讨论】:

  • 添加一些关于解决方案的解释。谢谢
  • 我也遇到了同样的问题。安装 sshpass 后,我可以运行同步模块 playbook。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-07-07
  • 1970-01-01
  • 1970-01-01
  • 2021-03-10
  • 2016-12-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多