プライマリ MongoDB Ops Manager とその バッキング データベース をバックアップするために、 セカンダリ MongoDB Ops Manager と呼ばれる 2 番目の MongoDB Ops Manager インスタンスを配置できます。セカンダリ MongoDB Ops Manager は、プライマリ MongoDB Ops Manager を失った場合のフォールト リカバリ パスとしても機能します。
このパターンは、MongoDB Ops Manager がアプリケーションデータベースとメタデータストアに保存する操作データを保護します。このガイドを使用して、MongoDB Ops Manager 自体の障害復旧を設計、構成、操作します。
このガイドは、バックアップと障害復旧を管理する MongoDB Ops Manager 管理者と、MongoDB Ops Manager の高可用性と障害復旧トポロジーを設計するチームを対象としています。
セカンダリ MongoDB Ops Manager バックアップの仕組み
このパターンでは、2 つの Ops Manager インスタンスには個別の責任があります。
プライマリの MongoDB Ops Manager は、通常と同様に MongoDB 配置とそのバックアップを管理します。
セカンダリ MongoDB Ops Manager は、プライマリ MongoDB Ops Manager のバッキング データベースのみを管理し、バックアップします。セカンダリ MongoDB Ops Manager はアプリケーション クラスターを管理しません。
MongoDB Agent は、プライマリ Ops Manager のアプリケーションデータベースの各ホストで実行され、セカンダリ Ops Manager に登録します。セカンダリ Ops Manager は、これらのバッキング データベースの継続的なバックアップとポイントインタイム バックアップを実行します。
プライマリ MongoDB Ops Manager を失った場合は、セカンダリ MongoDB Ops Manager からバッキング データベースを復元し、新しいプライマリ MongoDB Ops Manager を起動します。プライマリ MongoDB Ops Manager は、復元されたバッキング データベースに再接続し、MongoDB 配置のマネジメントを再開します。
MongoDB エージェントは再起動後に再接続すると、復元されたデータベースより新しい構成バージョンを報告します。プライマリの MongoDB Ops Manager はミスマッチを検出し、影響を受けるプロジェクトの「復元モード」に自動的に入り、復元された構成ですべてのエージェントを収束し、調整が完了するまで配置の変更をブロックします。
アーキテクチャ
次の表は、このパターンのコンポーネントとそれらの責任を説明します。
コンポーネント | 責任 |
|---|---|
プライマリ MongoDB Ops Manager | MongoDB の配置とそのバックアップを管理します。アプリケーションデータベース、スナップショット メタデータ ストア、oplog メタデータ ストアに、自身の操作データを保存します。 |
セカンダリ MongoDB Ops Manager | アプリケーションデータベースのスナップショットと oplog スライスの S3 互換ストレージブロックストアに書き込む バックアップデーモン を実行します。プライマリ Ops Manager のバッキング データベースを継続的にバックアップします。アプリケーションクラスターは管理しません。 |
アプリケーション データベース | プロジェクト構成、オートメーション状態、バックアップ メタデータなど、プライマリ Ops Manager のオペレーション データを保存します。アプリケーションデータベースをバックアップする必要があります。 |
スナップショットと oplog メタデータの保存先 | プライマリ MongoDB Ops Manager がバックアップする配置のブロックインデックスと oplog インデックスを保存します。これらのストアもバックアップします。 |
MongoDB エージェント | 各バッキング データベース ホストで実行され、セカンダリの MongoDB Ops Manager に登録してバックアップと復元を実行します。 |
セカンダリ Ops Manager は、プライマリ Ops Manager のバッキング データベースのバックアップを、プライマリ Ops Manager のバックアップ ストレージとは別に、独自の S3 互換ストレージ ブロックストアに保存します。
配置バリアント
セカンダリ MongoDB Ops Manager をプライマリ MongoDB Ops Manager とは別の障害ドメインに配置して、単一障害が両方のインスタンスに影響するのを防止します。一般的なバリアントには、次のようなものがあります。
異なるリージョン
プライマリ Ops Manager とは異なるクラウド リージョンにセカンダリ Ops Manager を配置します。このバリアントは、リージョンの損失から保護します。
異なるデータセンター
プライマリの MongoDB Ops Manager とは異なるデータセンターにセカンダリの MongoDB Ops Manager を配置します。このバリアントは、データセンターの損失から保護します。
別個のバックアップ ネットワークにあります。
セカンダリ MongoDB Ops Manager を、バックアップトラフィック専用の別のネットワークに配置します。このバリアントは、バックアップトラフィックをアプリケーションネットワークから分離します。
重要
セカンダリ Ops Manager をプライマリ Ops Manager とは別のラック、アベイラビリティゾーン、リージョン、ネットワークセグメントなど、別の障害ドメインに配置します。両方のインスタンスが同じ障害ドメインを共有している場合、1 つの障害によってプライマリ Ops Manager とその復元パスの両方が中断される可能性があります。
サポートされているバージョンと制限
このパターンを使用する前に、次の要件と制限を確認してください。
サポートされているバージョン
プライマリとセカンダリの両方の MongoDB Ops Manager インスタンスは、MongoDB Ops Manager 8.0.24 以降を実行する必要があります。
セカンダリ MongoDB Ops Manager は、プライマリ MongoDB Ops Manager と同じかそれ以降のバージョンを実行する必要があります。プライマリ MongoDB Ops Manager より古いバージョンのセカンダリ MongoDB Ops Manager を実行しないでください。
警告
スナップショットの取得元となったオリジナルのプライマリ MongoDB Ops Manager と同じバージョンまたはそれ以降のバージョンを実行するプライマリ MongoDB Ops Manager にアプリケーションデータベースを復元します。置き換えるバイナリがアプリケーションデータベースの記録されたバージョンより古い場合、MongoDB Ops Manager は「ダウングレードは許可されません」エラーで起動を拒否します。
制限
このパターンは、プライマリ MongoDB Ops Manager のバッキング データベースをバックアップします。任意の MongoDB クラスターはバックアップされません。プライマリ MongoDB Ops Manager は、MongoDB 配置のバックアップを引き続き管理します。
スナップショット メタデータ ストアと oplog メタデータ ストアのバックアップと調整は手動で行います。MongoDB Ops Manager は、これらのストアの復元ポイントを自動的に選択しません。その結果、復元後にバックアップ メタデータに不整合が生じる可能性があり、一部のバックアップが復元できない場合があります。MongoDB Ops Manager は、復元する前にスナップショットを検証し、安全でない復元を実行するのではなく、エラーで失敗します。
復元モードは、Kubernetes 演算子がマネージドする配置など、外部でマネージドされている配置には適用されません。アプリケーションデータベースを復元すると、これらのプロジェクトのエージェントは次回のポーリングで復元された構成を直接受け取ります。また、復元モードに入らずに合流します。これらのプロジェクトについては、アクションは必要ありません。
スナップショットのデータブロックがスナップショットストアにない場合、スナップショットは復元できなくなります。復元の前に、プライマリの MongoDB Ops Manager はスナップショットのブロックが存在することを確認します。ブロックが見つからない場合、復元はエラーで失敗し、レプリカセットを消去して途中で失敗するのではなく、レプリカセットを未変更のままにします。
テストされていない復元は、運用上のリスクです。バックアップと復元するパスを定期的に検証します。検証ランプレイブックについては、セカンダリ Ops Manager から Ops Manager を復元する を参照してください。
次のステップ
このパターンを設定および操作するには、次のページを参照してください。