coaxial.backup
バックアップロール
このAnsibleロールは、暗号化されたバックアップを定期的に作成するために、tarsnapとtarsnapperをインストールおよび設定します。
これらのバックアップは、Amazon S3を使用するtarsnapに保存されます。
真に不安な人のためのオンラインバックアップ Tarsnapについてもっと知る
要件
- 残高のあるtarsnapアカウント
- このロールはUbuntu 16.04でのみテストされています(他のプラットフォームに拡張予定ですので、興味があれば問題を開いてお知らせください)
- プレイブック内の
templates/tarsnapper.yml.j2
にtarsnapperの設定ファイルが必要です(tarsnapper設定ファイルの書き方) - プレイブック内の
templates/tarsnap.conf.j2
にtarsnapの設定ファイルが必要です(tarsnap設定ファイルの書き方)
ロール変数
変数 | デフォルト値 | 目的 |
---|---|---|
backup__rebuild_cache |
false |
tarsnap --fsck をスキップします |
backup__tarsnap_cachedir |
/usr/local/tarsnap-cache |
tarsnapがバックアップをキャッシュするために使用するディレクトリを設定します(cf. tarsnap.conf マンページ) |
backup__tarsnap_keyfile |
/root/tarsnap.key |
tarsnapキーが保存されるパスを設定します |
backup__tarsnap_apt_key |
40B98B68F04DE775 |
tarsnapパッケージに署名するために使用されるキーのID |
backup__tarsnap_username |
[email protected] |
tarsnap.comのユーザー名(新しいtarsnapキーを生成する場合のみ必要) |
backup__tarsnap_password |
encrypt me |
tarsnap.comのパスワード(新しいtarsnapキーを生成する場合のみ必要) |
backup__tarsnapper_config_file |
/etc/tarsnapper.yml |
tarsnapperジョブ設定がターゲットホストに保存されるパスを設定します |
backup__tarsnapper_log_file |
/var/log/tarsnapper.log |
cronジョブのログが書き込まれるパスを設定します |
backup__cron_{minute,hour,dom,month,dow} |
それぞれ:28 , 3 , * , * , * |
バックアップ用のtarsnapを実行する間隔 |
注意
files/{{ ansible_hostname }}.yml
にtarsnapキーが見つからない場合、backup__tarsnap_username
とbackup__tarsnap_password
を使用して新しいTarsnapキーが生成され、新しいマシンが{{ ansible_host }}
として登録されます。
files/{{ ansible_hostname }}.yml
にtarsnapキーがある場合、そのキーが使用され、新しいキーの生成やマシンの登録は行われません。
Add tarsnap apt key
タスクが失敗した場合、パッケージのキーが変更されたことを意味し、まだロールを更新していないことを示しています。最新のキーはhttps://www.tarsnap.com/pkg-deb.htmlをチェックし、その値を`backup__tarsnap_apt_key`変数で上書きし、新しいキーでロールを更新できるように問題を開いてください。
依存関係
なし。
例プレイブック
- hosts: all
roles:
- role: coaxial.backup
ライセンス
MIT
著者情報
Coaxial <64b.it>