NSX Manager のデータ バックアップは、FTP もしくは SFTP サーバに取得できます。
たとえば、下記のように Linux サーバを簡易的なバックアップ先とすることもできます。
NSX-v の簡易バックアップサーバ (SFTP) を Linux で用意する。
ただ、NSX Manager のバックアップは自動削除されません。
下記のように、取得したバックアップ ファイルはひたすら残ります。
※これは NSX 6.3.1 の NSX Manager の画面です。
この「Backup History」に表示されているバックアップは、
バックアップ先でファイルを削除すれば、Web UI 側からも表示されなくなります。
そこで、Linux の cron を使用してバックアップをクリーンアップしてみます。
今回は、以前の投稿(下記)の環境で実施しています。
NSX-v の簡易バックアップサーバ (SFTP) を Linux で用意する。
1回の NSX Manager のバックアップでは、
バックアップ先に指定したフォルダ配下に、下記のような2つのファイルセットが作成されます。
<Backup Directory>/<Backup Prefix><タイムスタンプ>.backupproperties
<Backup Directory>/<Backup Prefix><タイムスタンプ>
具体的には、下記のような感じのファイル名になります。
/home/nsx-bk-user01/nsxmgr01-17_10_00_Sun18Jun2017.backupproperties
/home/nsx-bk-user01/nsxmgr01-17_10_00_Sun18Jun2017
これらのバックアップ ファイルを、cron で定期的に自動削除します。
今回は、下記のような corn 定義ファイルを作成してみました。
1行だけ記載した /etc/cron.d/nsx-backup-cleanup ファイルを新規作成しています。
内容は下記のような感じです。
- 毎時 15分に自動実行。
NSX Manager を毎時10分にバックアップ取得するように設定しているので、その少し後。 - nsx-bk-user01 ユーザで実行。
SFTP 接続用として作成したユーザにあわせて。root などでもよい。 - 今回は 3世代のバックアップファイルを残す。
世代数をわかりやすくするため、あえて GEN=3 と指定してみた。 - バックアップファイル名は、NSX Manager の「Backup Directory」と「Backup Prefix」
に合わせて「/home/nsx-bk-user01/nsxmgr01-」。 - ls コマンドで、タイムスタンプ順にバックアップファイルをリスト。
そして「残す世代数 * 1回のバックアップセット(2つ)」 以降のファイルを
tail コマンドで取得して、xargs コマンドで削除(rm)する。
[root@nsx-work ~]# cat /etc/cron.d/nsx-backup-cleanup
15 * * * * nsx-bk-user01 GEN=3; ls -t /home/nsx-bk-user01/nsxmgr01-* | tail -n +`expr $GEN \* 2 + 1` | xargs rm
この cron ファイルを作成して、自動実行されるのを待つと、
下記のような感じで 3世代分のファイルだけ残して、他のバックアップ ファイルは削除されます。
[root@nsx-work ~]# ls -t /home/nsx-bk-user01/nsxmgr01-*
/home/nsx-bk-user01/nsxmgr01-17_10_00_Sun18Jun2017.backupproperties
/home/nsx-bk-user01/nsxmgr01-17_10_00_Sun18Jun2017
/home/nsx-bk-user01/nsxmgr01-16_10_00_Sun18Jun2017.backupproperties
/home/nsx-bk-user01/nsxmgr01-16_10_00_Sun18Jun2017
/home/nsx-bk-user01/nsxmgr01-15_10_00_Sun18Jun2017.backupproperties
/home/nsx-bk-user01/nsxmgr01-15_10_00_Sun18Jun2017
[root@nsx-work ~]#
NSX Manager から見える Backup History も、3世代分だけになっています。
このような感じで、バックアップ先のファイルを削除すれば、
NSX Manger から見たバックアップ履歴も削除されます。
ただ、ファイル削除はしっかり検証 / 動作確認したうえで実装してもらえればと思います。
以上、NSX Manager のデータ バックアップのクリーンアップをしてみる話でした。