synchronizeモジュールを使用するためには、以下のようなタスクをAnsibleのPlaybookに定義する必要があります。
- name: ファイル同期の例
synchronize:
src: /path/to/source/file
dest: /path/to/destination/file
上記の例では、src
パラメータにはコピー元のパスを、dest
パラメータにはコピー先のパスを指定しています。Ansibleは指定されたパスのファイルやディレクトリの状態を確認し、必要に応じて同期を行います。
synchronizeモジュールには、さまざまなオプションがあります。例えば、delete
オプションをyes
に設定すると、コピー先に存在しないファイルやディレクトリが削除されます。また、rsync_opts
オプションを使用すると、rsyncコマンドのオプションを指定することができます。
- name: ディレクトリ同期の例
synchronize:
src: /path/to/source/directory/
dest: /path/to/destination/directory/
delete: yes
rsync_opts:
- "--exclude='*.log'"
上記の例では、delete
オプションにyes
を設定しており、同期先に存在しないファイルやディレクトリが削除されます。さらに、rsync_opts
オプションにはrsyncコマンドのオプションを指定しています。この場合、--exclude='*.log'
オプションを使用して、拡張子が.logのファイルを同期対象から除外しています。
Ansibleのsynchronizeモジュールは、ファイルやディレクトリの同期を容易に行うための強力なツールです。このモジュールを使用することで、サーバ間でのファイルのコピー、削除、更新などを簡単に実現することができます。