利用Ansible模块copy和fetch进行主机间文件的传递


场景:

java应用程序和Ansible不在同一台机子,要读取的文件又在另一台主机。

主机a不能保存文件,可以临时保存。

文件都在主机b上保存。

需求:

需要将文件从主机c传到主机b,再从主机b传到主机c,使用完之后删除。

方案:

文件传递可以使用linux的scp命令,但是在传递过程中需要输入密码,不现实;

最后选择使用Ansible的copy和fetch模块。

fetch模块

从远程到本地

- fetch:
    src: /tmp/somefile
    dest: /tmp/fetched

如果dest指定文件名则传过来的文件就会重命名。

copy模块

从本地到远程

 - copy:
    src: /srv/myfiles/foo.conf
    dest: /etc/foo.conf
    mode: 0644

从主机c到主机b使用fetch,从主机b到主机c使用copy,只需要在Ansible的hosts文件中配置好用户名和密码。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM