我要复制存储在SERVER-A上的文件。该文件需要复制到SERVER-B。
我当前正在使用它。...但是它花费了很长时间,并且无法正常工作(?)
有更好的解决方法吗?
主要事实:
a)我需要SSH密钥进行复制。它称为 my-key ,我将其传递给shell命令
b)SERVER-A上的文件位于: /etc/conf/myConf.xml
c)需要将文件复制到SERVER-B的默认位置: / home / ubuntu / conf_dir /
d)ansible脚本从服务器b框运行。
- name:
"copy file from server-a to server-b"
shell: scp -q -o StrictHostKeyChecking=no -i ./my-key ubuntu@10.33.5.44:/etc/conf/myConf.xml /home/ubuntu/conf_dir/
args:
executable: /bin/bash
become_user: ubuntu
答案 0 :(得分:1)
只需使用ansible复制模块,整个shell伏都教徒就容易出错。.
https://docs.ansible.com/ansible/latest/modules/copy_module.html
您可以为此特定任务设置自定义ssh密钥。请注意,这只会更改当前正在运行的主机的ssh私钥文件。
- set_fact: ansible_ssh_private_key_file=/path/to/keyfile