オフサイトと復旧¶
ローカルバックアップは、コンテナの喪失や不良な更新からあなたを守ります。オフサイト複製とテスト済みのリカバリーキットは、マシン全体、ランサムウェア、または火災からあなたを守ります。このページでは、オフサイトへの複製、そのコピーを改ざん不能にすること、復元できることの証明、そして BombVault 自身が失われたときの復旧を扱います。
オフサイト複製¶
高速なローカルバックアップを保ちつつ、ひとつ以上のオフサイトレプリカを追加します。Settings, Off-site タブでドメインごとにリポジトリを設定します。BombVault はベストエフォート方式で restic copy により新しいスナップショットをそこへ複製するため、オフサイトの不調でローカルバックアップが失敗することはありません。ローカルリポジトリが主のままです。
- ドメインごとに複数のオフサイトターゲット。 各ドメイン(コンテナ、VM、フラッシュ、config、ファイルセット)は、ひとつだけでなく複数のオフサイトデスティネーションへ同時に複製できます。そのため、たとえば友人のマシン上の rest-server と S3 バケットを並行して保てます。Settings, Off-site で追加のターゲットを加え、それぞれに独自のリポジトリ、S3 ストレージクラス、追記専用フラグ、保持、成長予算を設定します。既存の単一オフサイトセットアップは最初のターゲットとしてそのまま引き継がれ、ドメインのすべてのターゲットは、そのドメインのオフサイトスケジュールで複製されます。
- ドメインごとのオフサイトスケジュール(他のすべてのスケジュールと並んで Settings, Schedules で編集): 空欄のままにすると各ローカルバックアップの後に複製し、頻度(たとえば
weekly Sun 03:00)を設定すると、ローカルでバックアップするより少ない頻度でオフサイトへ送れます。今すぐ複製ボタンがオンデマンドの実行をカバーします。 - オフサイトの保持は Settings, Off-site にあり、オフサイトのコピーをアーカイブとして長く保てます。ポリシーをすべてゼロのままにすると、オフサイトのスナップショットを自動整理しません。
- 帯域幅制限(Settings, Off-site)は、restic のアップロード/ダウンロードレートに上限を設け、複製が WAN を飽和させないようにします。
- 複製インジケーターは、実行中にどのドメインが複製しているかを示します(そのページとダッシュボードで)。これはアクティブなインジケーターであり、パーセンテージバーではありません。
restic copyが機械可読な進捗を公開しないためです。
Restore straight from off-site
どのバックアップブラウザにも Local / Off-site スイッチがあるため、ローカルリポジトリが失われたり破損したりした場合でも、オフサイトのレプリカから直接一覧表示して復元できます。削除はソースごとです: バックアップの削除は、いま表示しているコピーにのみ影響します。
イミュータブル(追記専用)オフサイト¶
オフサイトリポジトリを追記専用としてフラグ付けすると、ランサムウェアや侵害されたホストがバックアップを削除したり書き換えたりできなくなります。相手側(--append-only モードで実行される restic/rest-server)がそれを強制します。BombVault はそれを常に検証するだけで、設定上の主張だけで緑を表示することは決してありません。
ガイド付きオフサイトセットアップウィザードは、バックエンドの選択(rest-server / rclone / S3)から、すぐ貼り付けられる rest-server のデプロイスニペット、接続テスト、イミュータブルの切り替え(これはすぐに改ざんテストを実行します)、保持戦略までを案内します。そのため、追記専用のオフサイトに、設定を手で編集することなく到達できます。
Immutable repos are never pruned from this box
イミュータブルなオフサイトは、意図的に古いスナップショットを決して整理しません。リポジトリサイズが暴走する前に警告を受け取れるよう、それに成長予算アラームを設定してください。
改ざんテスト¶
BombVault は定期的に、オフサイトリポジトリに対して実際に削除を試みる(存在しないオブジェクトを狙う)ことで、追記専用の保証を証明します:
- 拒否は保護されていることを意味します。
- 受理は保護されていないことを意味します。
- 判定不能の結果(サーバー到達不能、認証エラー)が、保存された判定を覆すことは決してありません。
保護状態から非保護状態への実際の反転は、単一のアラートを発火させます。
DR ドリル¶
BombVault は、バックアップが単に存在するだけでなく、実際に復元可能であることについて、2 段階の証明を提供します。
- 復元検証ドリル(ローカル)。 BombVault は定期的に
restic check --read-data-subsetを実行し(範囲を限定し、ディスクを埋め尽くす完全復元は決して行いません)、ドメインごとに最終復元可能検証バッジを表示します。頻度は Settings, Schedules に、バッジは Settings, Integrity にあります。 - DR ドリル(オフサイト)。 BombVault はオフサイトリポジトリから実際のターゲットを使い捨てのサンドボックスへ復元し、ファイル単位・バイト単位で検証してからクリーンアップします。これは、リポジトリが応答するだけでなく、オフサイトから実際に復旧できることを証明します。
ダッシュボードのランサムウェア対策スコアカードは、これをドメインごとに緑 / 黄 / 赤の姿勢へとまとめ、経過日数を刻んだチェックリスト(オフサイト設定済み、追記専用検証済み、複製が最新、復元ドリル合格、暗号化オン、整理戦略設定済み)を示します。すべての赤い行は修正箇所へディープリンクし、カードは検証済みの事実に基づいてのみ緑になります。
受信側ダッシュボード(受信する側)¶
これまでのすべては送信側のことです。別の BombVault からイミュータブルなオフサイトコピーを受信するマシンでは、受信側ダッシュボードが、受信側のハードウェアでそれらのリポジトリを独立して読み取り専用で監視できるようにします。そのため、相手側での静かな失敗が見過ごされることがありません。
設定で Receiver トグルをオンにすると Receiver タブが現れます。デフォルトはオフです。実際にイミュータブルなオフサイトバックアップを受信するマシンでのみ有効にしてください。次に、受信したリポジトリを登録すると(読み取り専用、送信元インスタンスの鍵で開く)、以下が得られます:
- ソースごとにグループ化されたスナップショットのインベントリ。どのコンテナ、VM、ファイルセットが着信したかを正確に確認できます。
- ソースごとの最終受信。それぞれがどれだけ新しいかがわかります。
- 受信側のハードウェアで実行される独立した
restic check。整合性が、送信側だけでなく、データが実際に存在する場所で検証されます。 - デッドマンズスイッチ: 設定した期間内にソースが送信を止めたときのアラート。
- 整合性アラート: 受信側でのチェックが失敗したときのアラート。
Receiver は厳密に読み取り専用です。受信したリポジトリに書き込むことは決してないため、送信側が頼りにする追記専用の保証を壊すことは決してありません。
ガイド付き復旧¶
専用の Recovery タブが、新規または再構築したインストールを、災害ケースへと一か所で案内します:
- BombVault 自身の設定をまず復元します。そのため、以降のフローが必要とするバックアップパス、オフサイトターゲット、認証情報があらかじめ入力されます(Docker ソケット経由のセルフ再起動で適用されるため、稼働中の設定データベースがオープンなハンドルの下で上書きされることはありません)。
- BombVault がバックアップを読み取れるか確認します(暗号化キーの落とし穴を最初に)。
- 既存のリポジトリを指定させます(ローカルまたはオフサイト)。
- その中に保存されているコンテナ、VM、ファイルセットを検出します。
- それらをすべて復元します(停止状態のままにするため、意図的に起動します)。リカバリーキットはワンクリックで手が届きます。
Planned migration versus disaster
ガイド付き復旧は、BombVault 自身の設定をバックアップから復元します。計画的な新しいマシンへの移動では、代わりに設定のエクスポートとインポートカード(持ち運び可能な JSON ファイル)で設定を直接持ち運べます。設定を参照してください。
別の BombVault リポジトリから復元¶
Recovery タブの別のカードは、別の BombVault インスタンスのリポジトリ(/mnt 配下にマウントされた共有、またはリモート URL)を、そのインスタンスの APP_KEY を使って、一度限りの読み取り専用セッションで開きます。そこに保存されているコンテナ、VM、ファイルセットを閲覧し、スナップショットを選んで復元すると、復元されたオブジェクトは通常のローカルコンテナ、VM、またはファイルセットになります。相手のリポジトリに書き込まれることは決してなく、自分のバックアップ設定は手つかずのままです(セッションはメモリ内に存在し、ひとりでに期限切れになります)。サーバー A からサーバー B へコンテナを移動することは、もはやリポジトリ設定を指し直して後で元に戻すことを意味しません。稼働中のサーバー間フェデレーションは明示的にスコープ外です。これは意図的な一度限りの引き出しです。
暗号化キー・リカバリーキット¶
これは、稼働中の BombVault がないときでも災害復旧を可能にする要となる部分です。
ワンクリックで、マスターキー、導出された restic パスワード、そして正確なリポジトリの場所とコマンドをダウンロードできるため、任意のマシンで restic CLI を使って直接復元できます。ダッシュボードのリマインダーは、これを保管するまでせがみ続けます。
Store the recovery kit off the server
キットには、バックアップを復号するシークレットが含まれています。サーバーとは別の安全な場所(パスワードマネージャー、金庫内の印刷したコピー)に保管してください。BombVault と APP_KEY の両方を、リカバリーキットなしで失うと、暗号化されたバックアップは復元できません。
リカバリー定義は各リポジトリの内側に存在するため(<repo>/def、<repo>/vm-def)、コピーされたリポジトリフォルダーは完全に自己完結しています。つまり、キットとリポジトリがあれば、ベアメタル復元に必要なものはすべて揃います。