バックアップからの製品データの復元
自動リストア: コマンドの使用ncc restore
コマンドで ncc backup
作成したバックアップからParagon Active Assuranceシステムを復元するには、まずサービスを停止します。
sudo ncc services stop --with-kafka --with-zookeeper --without-timescaledb
次に、バックアップのtarボールで次のコマンドを実行します。
ncc restore paa_backup-yyyy-mm-dd_hh-mm-ss.tar.gz
最後に、サービスを再起動します。
sudo ncc services start --with-kafka --with-zookeeper --without-timescaledb
restore コマンドは、次のすべてを実行します。
- メインのPostgreSQLデータベースを削除、再作成、および復元します
- プラグインPostgreSQLデータベースを削除、再作成、および復元します
- プラグインのtarballと署名キーを復元します
- 既存の RRD を削除し、RRD ファイルを復元します。
- タイムスケールDBデータベースとタイムスケールDBデータを復元します。
- タイムスケールDBの設定ファイルを復元します
- 既存のOpenVPNキーをすべて削除し、OpenVPNキーを復元します
-
SSL証明書とキーを復元します
- コントロール・センターの設定ファイルをリストア
- ライセンスのアクティブ化
オプション:
--timescaledb-in-place
: デフォルトでは、ncc restore
このコマンドは別のホストでリストアを実行していることを前提としています。TimescaleDB データベースのインプレース復元を実行する場合は、このオプションをコマンドに追加します。
復元されたシステムの新規ライセンスのアクティブ化
新しいホストでシステムを復元する場合、または同じホストで異なる UUID を使用してシステムを復元する場合は、システムに新しいライセンスが必要です。ライセンスの取得方法とアクティベーション方法の詳細については、インストールガイドの「 Paragon Active Assuranceの開始ガイド」の章を参照してください。
部分復元の実行
必要に応じて、バックアップの特定の部分を復元操作から除外できます。
必須ではないバックアップ ファイルのみを復元から除外できます。
次のファイルは自由に省略できます。
paa-cc-backup.log
paa_cc_rrd.tar.gz
paa_cc_configs.tar.gz
次のファイルは両方とも省略できますが、一方は他方なしでは無効です。
paa_cc_postgres.sql
paa_cc_plugins.sql
次の手順に進みます (読みやすくするために、バックアップ バージョンとタイムスタンプは以下で省略されています)。
-
除外する部分を識別するために、バックアップ tarball の内容をリストします。
tar -tf paa-cc-backup-<...>.tar.gz
-
バックアップtarボールを解凍し、必要に応じてファイルを除外します。以下は、RRDファイルが除外されている例です。
tar -zxvf paa-cc-backup-<...>.tar.gz --exclude "paa-cc-backup-<...>/paa_cc_rrd.tar.gz"
-
バックアップフォルダの名前を、意図した最終的なtarball名と一致するように変更します。
mv paa-cc-backup-<...> paa-cc-backup-without-rrd-<...>
-
残りのファイルから新しいtarballを作成します。
tar -pczf paa-cc-backup-without-rrd-<...>.tar.gz paa-cc-backup-without-rrd-<...>/
トラブルシューティング: 手動復元
何らかの理由でコマンドが失敗した場合 ncc restore
は、このセクションの説明に従って、システムを手動で復元できます。
以下では、バックアップファイルには、 製品データのバックアップの章と同じ方法で名前が付けられていると見なされます。
以下の手順では、コントロール・センターが (データベースが存在するように netrounds
) インストール済みであること、およびバックアップ・ファイルがインストールされているバージョンと同じバージョンのコントロール・センターのものであることが必要です。
-
データベースにアクセスしているすべてのParagon Active Assuranceサービスを停止します。
sudo ncc services stop --with-kafka --with-zookeeper --without-timescaledb
-
メインのPostgreSQLデータベースとプラグインデータベースを削除します。
sudo -u postgres psql -c "DROP DATABASE netrounds;" sudo -u postgres psql -c 'DROP DATABASE "paa-plugins";'
-
メインのPostgreSQLデータベースとプラグインデータベースを再作成します。
sudo -u postgres psql -c "CREATE DATABASE netrounds OWNER netrounds ENCODING 'UTF8' TEMPLATE 'template0';" sudo -u postgres psql -c 'CREATE DATABASE "paa-plugins" OWNER netrounds ENCODING "UTF8" TEMPLATE "template0";'
-
メインのPostgreSQLデータベースとプラグインデータベースを復元します。
sudo -u postgres psql --set ON_ERROR_STOP=on netrounds < cc_postgres.sql sudo -u postgres psql --set ON_ERROR_STOP=on paa-plugins < paa_plugins.sql
on に設定すると
ON_ERROR_STOP
、エラーが発生した場合に psql が終了します。詳細については、PostgreSQL のドキュメントを参照してください: https://www.postgresql.org/docs/9.4/backup-dump.html#BACKUP-DUMP-RESTORE.バックアップ形式にはいくつかのオプションがあります。プレーンな.sql以外のものを使用している場合は、psqlドキュメント(https://www.postgresql.org/docs/)を参照してください。
データベースをバイナリ形式で(手動で)バックアップした場合は、次のコマンドを使用してデータベースを復元します(デフォルトでは「netrounds」であるパスワードの入力を求められます)。
pg_restore -Fc -h localhost -d netrounds -c --verbose --disable-triggers cc_postgres.binary -U netrounds --password pg_restore -Fc -h localhost -d paa-plugins -c --verbose --disable-triggers paa_plugins.binary -U netrounds --password
-
プラグインのtarボールと署名キーを復元します。
sudo tar -xzf paa_plugins.tar.gz -C / sudo tar -xzf paa_plugin_keys.tar.gz -C /
-
OpenVPN キーを復元します。
# Remove any existing OpenVPN keys sudo rm -rf /var/lib/netrounds/openvpn # Unpack the backed-up keys sudo tar -xzf cc_openvpn.tar.gz -C /
-
SSL 証明書とキーを復元します。
sudo tar -xzf paa_cc_certs.tar.gz -C /
-
tarボールまたはスナップショットからRRDファイルを復元します。製品データのバックアップの章を比較してください。tarball の場合、手順は次のとおりです。
# Remove any existing RRDs sudo rm -rf /var/lib/netrounds/rrd # Unpack the backed-up RRDs sudo tar -xzf cc_rrd.tar.gz -C /
-
タイムスケールDB データベースを復元します。
バックアップ ディレクトリは、 の下に
/var/lib/netrounds/rrd/timescaledb/pgbackrest/repo/
格納する必要があります。復元を実行する前に、データディレクトリ
/var/lib/netrounds/rrd/timescaledb/data/
内のファイルを別の場所にコピーします.conf
。これにより、最後の完全バックアップ以降に実行された構成変更を復元できます。-
インプレース データベース復元を実行するには、次の手順に従います。
- ディレクトリ
/tmp/timescaledb_conf
を作成します。 *.conf
ファイルを/var/lib/netrounds/rrd/timescaledb/data
/tmp/timescaledb_conf
にコピーします。-
コマンドを実行します
sudo /etc/netrounds/backup-restore-timescaledb.sh --restore <backup dir>
- から
/tmp/timescaledb_conf
に/var/lib/netrounds/rrd/timescaledb/data
ファイルをコピーします*.conf
。
- ディレクトリ
-
ホスト A から 別のホスト B にデータベースをリストアするには、次の手順に従います。
- ホストBで、 Paragon Active Assuranceインストールガイドに従ってコントロールセンターをインストールして設定し、メトリックサービスを有効にします。
- ホストAから、の内容
/var/lib/netrounds/rrd/timescaledb/pgbackrest
をホストBの同じディレクトリにコピーします。 -
ホスト B で、次のコマンドを実行します
sudo /etc/netrounds/backup-restore-timescaledb.sh --restore <backup dir>
- ホスト A から、ホスト
/var/lib/netrounds/rrd/timescaledb/data
B の同じディレクトリにファイルをコピー*.conf
します。
-
-
ライセンス ファイルを元の場所にコピーします。(または、Juniper EMSポータルからライセンスファイルをもう一度ダウンロードし、 インストールガイドで説明されているように、 コマンドを使用して適用
ncc license activate
することもできます)。 -
開始 Paragon Active Assuranceサービス:
sudo ncc services start --with-kafka --with-zookeeper --without-timescaledb