このガイドでは、プライマリ MongoDB Ops Manager とそのバッキング データベースをバックアップするためにセカンダリ MongoDB Ops Manager を構成する方法を説明します。このパターンの概要については、「セカンダリ インスタンスを使用した MongoDB Ops Manager のバックアップと復元」を参照してください。
Considerations
このバックアップ構成を分離する
このバックアップ構成は、プライマリ MongoDB Ops Manager が MongoDB 配置のバックアップを取るバックアップとは別々に保存してください。プライマリ MongoDB Ops Manager のバッキング データベースには、セカンダリ MongoDB Ops Manager 上の専用プロジェクトを使用します。この分離により、MongoDB Ops Manager の障害復旧バックアップとアプリケーションのバックアップとの混乱が防止されます。
すべてのバッキング データベースをバックアップする
プライマリ MongoDB Ops Manager のアプリケーションデータベースをバックアップする必要があります。スナップショット メタデータ ストアと oplog メタデータ ストアもバックアップします。3 つのバッキング データベースをすべてバックアップすると、単一のコンシステントな時点に復元できます。
前提条件
セカンダリの MongoDB Ops Manager を設定する前に、次の前提条件を満たしてください。
セカンダリ MongoDB Ops Manager インスタンス
プライマリ MongoDB Ops Manager とは別の障害ドメインにセカンダリ MongoDB Ops Manager を配置します。プライマリ MongoDB Ops Manager と同じバージョンまたはそれ以降のバージョンを実行する新しい MongoDB Ops Manager インストールを使用できます。
セカンダリ MongoDB Ops Manager のアプリケーションデータベースを高可用性のための レプリカセット として配置します。
プライマリ Ops Manager のアプリケーションデータベースのスナップショット用に、セカンダリ Ops Manager 上で S3互換のストレージ ブロックストアを使用してバックアップデーモンを有効にして構成します。
プライマリ MongoDB Ops Manager バッキング データベース
プライマリ MongoDB Ops Manager のアプリケーションデータベースをマルチノードレプリカセット(例えば、3 ノードレプリカセット)として実行し、自動フェイルオーバーを行います。バックアップは、レプリカセットとシャーディングされたクラスターをサポートします。既存のスタンドアロンアプリケーションデータベースをバックアップする必要がある場合は、まずレプリカセットに変換します。マルチノードトポロジーへの遷移段階としてのみ、単一ノードレプリカセットを使用します。
MongoDB Enterprise 上でアプリケーションデータベースを実行します。
バックアップと復元のパスを端から端までテストするには、プライマリ MongoDB Ops Manager に、バックアップが有効になっているマネージド クラスターを含むプロジェクトが少なくとも 1 つあることを確認します。
ネットワークセキュリティとネットワーク
セカンダリの MongoDB Ops Manager アプリケーションサーバーが、MongoDB Agent ポートでプライマリの MongoDB Ops Manager のバッキング データベースをホストすることを許可します。
プライマリ MongoDB Ops Manager のバッキング データベース ホストが、セカンダリ MongoDB Ops Manager アプリケーション ポートを介してセカンダリ MongoDB Ops Manager にアクセスすることを許可します。
プライマリとセカンダリの Ops Manager インスタンス間で TLS または同等のトランスポート暗号化を有効にします。バックアップトラフィックには、認証情報やその他の機密データが含まれるプライマリ Ops Manager のアプリケーション構成が含まれます。
プライマリ MongoDB Ops Manager のバッキング データベースに認証できることを確認します。詳細については、アプリケーションデータベースへの接続の構成を参照してください。
ホストごとの状態を維持する
災害が発生する前に、各プライマリ MongoDB Ops Manager ホストに次のファイルを保存します。これらのファイルはアプリケーションデータベースのバックアップに含まれていないため、別々に保存する必要があります。
Item | ロケーション | 説明 |
|---|---|---|
暗号化のキー |
| アプリケーションデータベースのコンテンツを暗号化します。オリジナルインストールに使用されたキーと一致する必要があります。一致しない場合、プライマリMongoDB Ops Managerはスタートアップ時に復元されたアプリケーションデータベースを複号化できません。 |
MongoDB Ops Manager の構成 |
| データベース URI、ブロックストア構成、ライセンス キー、および TLS 証明書を保存する。これがない場合、プライマリ MongoDB Ops Manager を手動で再構成する必要があります。 |
エージェントの構成 |
|
|
重要
gen.key ファイルが見つからないか、復元されたアプリケーションデータベースと一致しない場合、プライマリ MongoDB Ops Manager は、gen.key がこの MongoDB Ops Manager インストールで既に使用されているキーと一致しないというエラーでスタートアップの事前チェックに失敗します。アプリケーションデータベースデータとともに、障害復旧バックアップに gen.key を保存してください。
手順
アプリケーションデータベースをセカンダリ Ops Manager に追加します
セカンダリ MongoDB Ops Manager で、プライマリ MongoDB Ops Manager のアプリケーションデータベースを既存の配置として追加します:
プライマリ MongoDB Ops Manager のバッキング データベースのために専用プロジェクトを作成または選択します。
Deployment、Add Existing MongoDB Deploymentをクリックし、アプリケーションデータベースレプリカセットを追加します。詳細については、「既存のMongoDB プロセスをMongoDB Ops Managerに追加する」を参照してください。
各アプリケーションデータベースホストに MongoDB Agent をインストールし、セカンダリ MongoDB Ops Manager プロジェクトの
mmsGroupIdとmmsApiKeyを使用してセカンダリ MongoDB Ops Manager に登録します。詳細については、「配置を管理するために MongoDB Agent をインストールする」を参照してください。続行する前に、すべてのアプリケーションデータベースノードがセカンダリ MongoDB Ops Manager でヘルシーとして表示されていることを確認します。
アプリケーションデータベースのバックアップを有効にします。
セカンダリの MongoDB Ops Manager で、プライマリの MongoDB Ops Manager のアプリケーションデータベースのバックアップを有効にします。
配置ビューから メニューをクリックし、次に Enable Backup をクリックします。
セカンダリ MongoDB Ops Manager でバックアップデーモンが実行され、ブロックストアが構成されていることを確認します。
スナップショットの予定、保持ポリシー、およびストレージターゲットを設定します。
最初のスナップショットが完了し、連続的なポイントインタイムリカバリ ウィンドウが表示されるまで待ちます。これにより、バックアップが正常であることが確認されます。
バックアップ構成の詳細については、「配置のバックアップ」を参照してください。
注意
復元モードは、MongoDB Ops Manager 8.0.24 以降でデフォルトで有効になっています。無効にするには、Admin、General、Ops Manager Config、Custom Variablesの下のカスタム変数mms.featureFlag.automation.restorationModeをdisabledに設定します。変更は、再起動なしで次回のMongoDB Agentポーリング時に有効になります。
このパターンを構成した後、復元パスを定期的に検証します。障害復旧イベントでプライマリ MongoDB Ops Manager を復元するには、「セカンダリ MongoDB Ops Manager から MongoDB Ops Manager を復元する」を参照してください。