我在 Ansible 剧本中有这个任务:
- name: Copy volumes.zip to local
fetch:
src: "/tmp/volumes.zip"
dest: "/home/user/volumes/"
flat: true
它永远不会结束。
volumes.zip
大小约为500MB。调试后,可以看到连接正常。事实上,我在同一剧本中有一些之前的任务(用于生成 volumes.zip
文件)并且它们工作得很好。
发生了什么事?
fetch
模块有其他替代方案吗?
500Mb 文件对于
fetch
模块来说太大了。您可以使用 synchronize
模块或简单的 bash 命令,例如 rsync
或 scp
。
示例为
synchronize
- name: Copy volumes.zip to local
synchronize:
src: /tmp/volumes.zip
dest: /home/user/volumes/
示例为
scp
- name: Copy volumes.zip to local
shell: ' scp /tmp/volumes.zip remote_server:/home/user/volumes/volumes.zip"'
delegate_to: localhost