Ops Manager の概要
MongoDB Ops Manager は、MongoDB インフラストラクチャを自動化、モニター、バックアップできます。
オートメーション
Ops Manager Automation を使用すると、MongoDB ノードとクラスターを構成および維持できます。
各 MongoDB ホストでオートメーションを使用する MongoDB エージェントは、MongoDB 配置を維持できます。MongoDB エージェントをインストール できます。オートメーションにより、 ホストの追加や、 新規または既存のクラスターの配置およびアップグレードが行えます。
モニタリング
Ops Manager モニタリングは、データベースとハードウェアの主要なインジケーターに関して、リアルタイムのレポート作成、可視化、およびアラートを提供します。
モニタリングの仕組み
MongoDB ホストでモニタリングをアクティブ化すると、MongoDB 配置のノードから統計情報を収集できます。エージェントはデータベースの統計情報を Ops Manager に送信し、配備状況をリアルタイムで報告します。選択したインジケーターにアラートを設定できます。
バックアップ
Ops Manager バックアップは、MongoDBの レプリカセットとシャーディングされたクラスターのスケジュールされたスナップショットとポイントインタイム リカバリを提供します。
バックアップの仕組み
MongoDB 配置のバックアップをアクティブ化すると、指定した MongoDB プロセスからデータのスナップショットが作成されます。
注意
データベースでMongoDB FCV4.2 以前が実行されている場合は、シャーディングされたクラスターとレプリカセットのみがバックアップできる配置タイプです。 MongoDB FCV またはそれ以前のバージョンを実行中しているスタンドアロンのmongodプロセスをバックアップするには、4.2 シングルノードのレプリカセットに変換する 必要があります。
バックアップ ワークフロー
バックアップは、お使いのデータベースの MongoDB バージョンの互換性に依存します。この機能の互換性バージョンは、現在のバージョンから 1 つ前のバージョンまでの範囲です。MongoDB 4.2の場合、 機能の互換性バージョンは 4.0
または 4.2
になります。
バックアップ プロセスでは、スケジュールされたスナップショット間隔でデータディレクトリのスナップショットが取得されます。
このプロセスでは、MongoDB 配置内のデータファイルがコピーされ、Ops Manager を介してネットワーク経由で既存のスナップショットストレージに送信されます。
配置では、コピー プロセス中に読み取りおよび書込み操作を引き続き処理できます。
新しいバックアップ プロセスでは、最初の同期はなくなりました。 最初の同期がない結果、MongoDB Ops Manager (mongod
FCV を実行している4.2 を使用)は、renameCollection
を頻繁に使用するカスタマーなど、より幅広いカスタマーをサポートできます。
MongoDB Agent は、WiredTiger の増分バックアップ カーソルを使用して、増分変更をキャプチャします。
バックアップが開始されると、Ops Manager は継続的かつ連続的なプロセスとしてデータをバックアップします。このプロセスでは、ヘッドデータベースがデータベースと同期されている限り、スナップショットの作成が続行されます。
このプロセスはレプリカセットのデータ同期と同様に機能します。
バックアップ プロセス:
最初の同期を実行して、既存のすべてのデータを現在の状態でバックアップします。 シャーディングされたクラスターでは、これは各シャードとコンフィギュレーションサーバーで発生します。
スナップショット スケジュールで指定された頻度で配置内の
data
ディレクトリのスナップショットを取得し、そのスナップショットをストレージ システムに転送します。oplog を継続的に監視し、最新のバックアップに新しいデータベース操作を追加して、データのローカル Ops Manager コピーを保持し、ポイントインタイム復元を可能にします。
その後 MongoDB Agent は各レプリカセットの oplog を追跡して、ヘッドデータベース と呼ばれるスタンドアロン データベースをディスク上に維持します。Ops Manager は、バックアップされたレプリカセットごとに 1 つのヘッドデータベースを維持します。ヘッドデータベースは、MongoDB Agent が提供する最後の oplog まで、元のプライマリとの整合性を保ちます。
スナップショットがどのようにストアされているかに関係なく、バックアップ プロセスはこのように機能します。
バックアップは、バックアップするレプリカセットのバージョンと同じか、それ以上のバージョンの MongoDB インスタンスを使用します。
バックアップは、 ユーザー定義のスナップショット保持ポリシーに基づいて、スナップショットを取得して保存します。 シャーディングされたクラスターのスナップショットにより、バランサーが一時的に停止されます。 その後のスナップショットは、クラスター内のすべてのシャードとコンフィギュレーションサーバーにマーク トークンを挿入できます。 MongoDB Ops Managerは、スナップショット データにカーソル トークンが表示されると、スナップショットを作成します。
Ops Manager は、データを完全バックアップまたは増分バックアップとしてバックアップできます。Ops Managerにはフルバックアップが必要です。
初めてのバックアップ用。
スナップショットが削除された後。
ブロックストアのブロック・サイズが変更された場合。
増分バックアップにより、ネットワーク転送とストレージのコストが削減されます。
どれだけのストレージ容量が必要かは、スナップショットの数と選択するスナップショットストレージのタイプによって異なります。以下の表では、スナップショット保存の違いをまとめています。
スナップショットストア | 説明 |
---|---|
MongoDB ブロックストア | |
Amazon Web Services S3 互換ストレージ バケット | |
ファイルシステムストア | 構成に応じて、圧縮によりスナップショットデータのサイズが縮小されます。 |
すべてのスナップショットは完全なバックアップを表します。
バックアップの構成方法の詳細については、「バックアップ構成オプション」を参照してください。
データの復元
バックアップでは、スケジュールされた完全なスナップショットから、またはスナップショット間の選択されたポイントからデータを復元できます。
シャーディングされたクラスターの場合、スナップショット間のチェックポイントから復元できます。
レプリカセットの場合は、選択した時点から復元できます。
スナップショットから復元する 場合、 MongoDB Ops Managerはスナップショット ストレージから直接読み取りを行います。 スナップショットを復元できます。
別のクラスターへ。
HTTPSリンクからスナップショット ファイルをダウンロードするには、
ポイントインタイム復元を行う場合、Ops Manager は次の処理を実行します。
スナップショット ストレージから完全なスナップショットを復元します。
指定された点に達するまで保存されたoplogを適用します。
同じHTTPSメカニズムを使用して、スナップショットと oplog の更新を提供します。
バックアップごとに保持する oplog の量を設定できます。これは、ポイントインタイム復元がカバーできる時間の長さに影響します。
チェックポイントでの復元、またはポイントインタイム復元を行う場合、Ops Manager は次の処理を実行します。
スナップショット ストレージから完全なスナップショットを復元します。
指定された点に達するまで保存されたoplogを適用します。
同じHTTPSメカニズムを使用して、スナップショットと oplog の更新を提供します。 チェックポイントを有効にするには、 「 クラスター チェックポイントの有効化 」を参照してください。
バックアップごとに保持する oplog の量を設定できます。これは、チェックポイント復元とポイントインタイム復元がカバーできる時間に影響します。