利用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