Ansibleでリモートファイルをローカルにコピーする方法を教えてください。
Ansibleを使用してリモートファイルをローカルにコピーする方法が2つあります。
- fetchモジュールを使用する:
- – name: Fetch file from remote
hosts:
tasks:
– name: Fetch file
fetch:
src: /path/to/remote/file
dest: /path/to/local/file - このプレイブックを実行すると、リモートホスト上のファイルがローカルホストの指定ディレクトリにコピーされます。
- コマンドモジュールとscpコマンドを使用します。
- playbookでコマンドモジュールを利用して、SCPコマンドでファイルをコピーする。例:- name: ファイルをリモートからコピーする hosts: <リモートホスト> tasks: – name: ファイルをコピーする command: scp <リモートユーザー>@<リモートホスト>:/path/to/remote/file /path/to/local/file args: executable: /usr/bin/ssh
- このPlaybookを実行すると、リモートホスト上のファイルがSCPコマンドによって、ローカルホストで指定したディレクトリにコピーされます。
どちらの方法でもリモートからのファイルをローカルにコピーできます。どちらの方式を使うかは、必要性と好みに応じて決めてください。