システムのバックアップや復元機能が Tower の設定 Playbook に統合され、必要に応じて Tower インスタンスを簡単にバックアップ、複製できるようになりました。
注釈
復元するには、バックアップしたバージョンと同じバージョンに復元するようにしてください。ただし、Tower インストールのバージョンをバックアップおよび復元する場合は、最新のマイナーバージョンを必ず使用するようにしてください。たとえば、現在使用している Tower のバージョンが 3.0.0、3.0.1 または 3.0.2 の場合は、3.0.2 のインストーラーのみを使用してください。
Tower の設定 Playbook は、Tower のインストーラーの tar ファイルを解凍したパスから setup.sh
として呼び出されます。このシェルは、Tower のインストールウィザードが記述する tower_setup_conf.yml
および inventory
ファイルを使用します。設定スクリプトでは、以下の引数を指定してバックアップと復元を行うことができます。
-b
データベースのインストールではなくバックアップを実行します。-r
データベースのインストールではなく復元を実行します。root ユーザーとして、適切なパラメーターを指定して setup.sh
と設定通りに Tower のバックアップと復元を呼び出します。
root@localhost:~$ ./setup.sh -b
root@localhost:~$ ./setup.sh -r
以下のコード例に記載されているように、EXTRA_VARS
でデフォルト以外のパスを指定しない限り、デフォルトの復元パスが使用されます。
root@localhost:~$ ./setup.sh -e 'restore_backup_file=/path/to/nondefault/location' -r
setup.sh
の設定 Playbook が含まれる install.yml
ファイルの他に、 バックアップや復元用の backup.yml
と restore.yml
ファイルもあります。
これらの Playbook には 2 つの機能があります。
backup.yml
ファイルは以下のようになります。
---
- hosts: primary
gather_facts: yes
roles:
- backup
これは、setup.sh
内に以下のように呼び出されます。
b)
PLAYBOOK="backup.yml"
TEMP_LOG_FILE="backup.log"
OPTIONS="$OPTIONS --force-handlers"
;;
restore.yml
ファイルは以下のようになります。
---
- hosts: primary
gather_facts: yes
roles:
- restore
これは、setup.sh
内に以下のように呼び出されます。
r)
PLAYBOOK="restore.yml"
TEMP_LOG_FILE="restore.log"
OPTIONS="$OPTIONS --force-handlers"
;;
システムを復元する際には、Tower はバックアップファイルが存在するかどうか確認してから復元を開始します。バックアップファイルがない場合には、復元に失敗します。
注釈
ホストファイル内で SSH キーまたはユーザー/パスワード変数を指定して、Tower ホストが正しく設定されており、そのユーザーに sudo アクセスが設定されていることを確認します。
sudo
アクセスが必要です。リモートシステムでは、バックアップまたは復元しようとしているリモートシステムへのアクセス権を授与するために異なる認証情報が必要になる場合があります。setup.sh
を使用して復元を行う場合には -r
を指定して復元する必要がありますが、それ以上引数を受け入れなくなります。デフォルト以外の復元パスを指定する必要がある場合には、ユーザーは extra var として指定する必要があります (-e 'restore_backup_file=/path/to/nondefault
)。