Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/
MongoDB Ops Manager
/ /

スナップショットからシャーディングされたクラスターを復元

スナップショットからクラスターを復元すると、 MongoDB Ops Managerは選択した復元ポイントの復元ファイルを提供します。

復元プロセスの詳細については、「 復元の概要 」を参照してください。

重要

MongoDB Ops Manager 3.6 での変更: ポイントインタイム復元

3.6より前は、バックアップデーモンはホスト上で完全なポイントインタイム復元を作成していました。 3.6では、スナップショットとともにクライアント側のツールをダウンロードします。 このツールはoplogをダウンロードし、クライアント システム上のスナップショットに適用します。 これにより、 MongoDB Ops Manager配置のネットワークとストレージの必要性が軽減されます。

BSON仕様 によってBSONバイナリ データ型(BinData)のデフォルトのサブタイプが 2 から 0 に変更されました。スナップショットに保存される一部のバイナリ データは、BinData サブタイプ 2 である場合があります。バックアップは、BinData サブタイプ 2 のスナップショット データを自動的に検出し、BinData サブタイプ 0 に変換します。アプリケーションコードで BinData サブタイプ 2 が想定されている場合は、アプリケーションコードを更新して BinData サブタイプ 0 で動作するようにする必要があります。

Tip

バックアップ復元ファイルには、 restoreInfo.txtという名前のメタデータ ファイルが含まれています。 このファイルは、スナップショットの取得時にデータベースが使用したオプションをキャプチャします。 データベースは、復元した後、リストされているオプションで実行する必要があります。 このファイルには、次のものが含まれています。

  • groupName

  • ReplicaSetName

  • クラスター ID (該当する場合)

  • スナップショット タイムスタンプ(UTC のタイムスタンプ)

  • タイムスタンプの復元(UTC の BSON タイムスタンプとして)

  • 最後に適用された oplog (UTC の BSON タイムスタンプとして)

  • MongoDB バージョン

  • ストレージ エンジンの種類

  • スナップショットの取得時にデータベースで使用されたmongod の起動オプション

  • 暗号化(スナップショットで暗号化が有効になっている場合にのみ表示されます)

  • マスターキー UUID (スナップショットで暗号化が有効になっている場合にのみ表示されます)

    暗号化されたバックアップから復元する場合は、このマスター キーに対して証明書がプロビジョニングされている必要があります。

MongoDB Ops Managerは、バランサーが有効になっている間に取得されたクラスター スナップショットの横に警告を表示します。 このようなスナップショットから復元すると、データが失われる、または孤立するリスクがあります。 詳細については、「エージェントがバランサーを停止できない場合のスナップショット 」を参照してください。

すべての FCVデータベースは、適切なバックアップに関する考慮事項を満たしている必要があります。

暗号化されたバックアップから復元するには、バックアップの暗号化に使用されるのと同じマスター キーと、バックアップデーモンホスト上のものと同じ証明書、またはKMIPホストからそのキーでプロビジョニングされた新しい証明書が必要です。

スナップショットが暗号化されている場合、復元パネルには KMIP マスター キー ID と KMIP サーバー情報が表示されます。 また、スナップショット自体とrestoreInfo.txtファイルを表示する際にも、 情報を見つけることができます。

復元中に MongoDB 配置がクライアント リクエストを受信しないことを確認する必要があります。 次のいずれかを行う必要があります。

  • 新しいホスト名を持つ新しいシステムに復元し、新しい配置が実行中以降にアプリケーション コードを再構成する。または、

  • データの復元中に MongoDB 配置がクライアント リクエストを受信しないことを確認します。

MongoDB Ops Managerがスナップショットを自動的に復元するようにするには、次の手順に従います。

1
2
3
  1. バックアップを復元するポイントを選択します。

    復元タイプ
    説明
    アクション

    Snapshot

    復元する既存のスナップショットを選択します。

    Point In Time

    選択した時間までのすべての操作を含むカスタム スナップショットを作成します(選択した時間は含みません)。 デフォルトでは、 oplogストアは 24 時間のデータを保存します。

    たとえば、 12:00を選択した場合、復元の最後の操作は11:59:59またはそれ以前のバージョンになります。

    重要

    FCV 4.0では、最新のバックアップ再同期の前の時間をカバーするPIT復元は実行できません。 再同期を引き起こす条件については、「バックアップの再同期 」を参照してください。 この注は FCV 4.2以降には適用されません。

    DateTimeを選択します。

    Oplog Timestamp

    入力されたoplogのタイムスタンプまでのすべての操作を含むカスタム スナップショットを作成します。 oplogタイムスタンプには次の 2 つのフィールドが含まれています。

    Timestamp

    UNIXエポック からの経過秒数におけるタイムスタンプ

    Increment

    その秒に適用される操作の順序を 32 ビット序数として表します。

    oplog TimestampIncrement を入力します。

    レプリカセットlocal.oplog.rsに対してクエリを実行し、目的のタイムスタンプを見つけます。

  2. [Next] をクリックします。

4
  1. [Choose Cluster to Restore to] をクリックします。

  2. 次のフィールドを入力します。

    フィールド
    アクション

    Project

    Cluster to Restore to

    スナップショットを復元するクラスターを選択します。

    MongoDB Ops Managerは、ターゲットのシャーディングされたクラスターを管理する必要があります。

    警告:オートメーションにより、クラスターから既存のデータがすべて削除されます。 既存のクラスターのすべてのバックアップ データとスナップショットが保持されます。

  1. [Restore] をクリックします。

    MongoDB Ops Managerは、復元に必要なストレージ容量を UI で示します。

5

重要

AES256-GCM で暗号化されたスナップショット復元後のマスター キー ローテーション

がMongoDB Ops Manager AES256-GCM を使用して 暗号化したスナップショット を復元する場合は、復元の完了後 に マスターキーをローテーション します 。

手動復元プロセスでは、次のことを前提としています。

警告

自動復元を実行できない場合にのみ、スナップショットを手動で復元します。 手動復元を使用する必要があると判断された場合は、 MongoDB サポート にお問い合わせください。 このセクションでは、手動復元手順のステージの概要について説明します。

手動復元プロセスには、MongoDB サポートの支援を受けて実行する次の高レベルのステージがあります。

  1. レガシーのmongo shell またはmongoshを使用して、各レプリカセットとコンフィギュレーションサーバー レプリカセット(CSRS)に接続します。

  2. (任意) 各レプリカセットと CSRS の構成ファイルを確認します。 復元プロセスが完了したら、保存された構成ファイルを使用して復元されたレプリカセットの構成を再構築できます。

  3. ターゲット ホストを準備します。

    • ターゲット ホストで実行されているすべてのmongodプロセスを停止します。

    • 復元されたデータを保持するのに十分なストレージ領域をプロビジョニングします。

    • データとログ用のディレクトリを準備します。

    • ターゲット ホストのストレージ パスとログ パス、およびレプリカとシャーディング ロールの構成を含む構成ファイルを MongoDB Server ディレクトリに追加します。

  4. CSRS を復元します。

  5. 各シャードのレプリカセットを復元します。

  6. ターゲット クラスター内の各 mongos プロセスを再起動します。

  7. クラスターに接続できることを確認します。

完全な手動復元手順については、 MongoDB Server 4.2のドキュメントを参照してください。 MongoDB 4.4以降の配置については、対応するバージョンのマニュアルを参照してください。

MongoDB Ops Managerがスナップショットを自動的に復元するようにするには、次の手順に従います。

1
2
3
  1. バックアップを復元するポイントを選択します。

    復元タイプ
    説明
    アクション

    Snapshot

    復元する既存のスナップショットを選択します。

    Point In Time

    スナップショットの復元時間目的として日付と時刻を選択できます。 デフォルトでは、 oplogストアは 24 時間のデータを保存します。

    12:00を選択した場合、復元の最後の操作は11:59:59またはそれ以前のバージョンになります。

    重要

    • またはそれ以前の FCV 4.0を実行するシャーディングされたクラスターを復元する場合は、シャーディングされたクラスターで PIT 復元を実行する ために クラスター チェックポイント を有効 にする必要があります。

      日付と時刻を含むチェックポイントが利用できない場合、MongoDB Ops Manager はchoose another point in timeを要求します。

    • 最新のバックアップ再同期の前の時間をカバーするPIT復元は実行できません。 再同期を引き起こす条件については、「バックアップの再同期 」を参照してください。

    DateTimeを選択します。

  2. [Next] をクリックします。

  3. 4.0またはそれ以前のFCVを実行するシャーディングされたクラスターを復元していて、 Point In Timeを選択した場合:

    1. 選択した時間に最も近いCheckpointsのリストが表示されます。

    2. ポイントインタイム復元を開始するには、以下の手順を実行します。

      • リストされているチェックポイントのいずれかを選択するか、

      • [ Choose another point in timeをクリックしてチェックポイントのリストを削除し、メニューから別の日付と時刻を選択します。

4
  1. [Choose Cluster to Restore to] をクリックします。

  2. 次のフィールドを入力します。

    フィールド
    アクション

    Project

    Cluster to Restore to

    スナップショットを復元するクラスターを選択します。

    MongoDB Ops Managerは、ターゲットのシャーディングされたクラスターを管理する必要があります。

    警告:オートメーションにより、クラスターから既存のデータがすべて削除されます。 既存のクラスターのすべてのバックアップ データとスナップショットが保持されます。

  1. [Restore] をクリックします。

    MongoDB Ops Managerは、コンソールで復元に必要なストレージ領域の量を示します。

5

重要

AES256-GCM で暗号化されたスナップショット復元後のマスター キー ローテーション

がMongoDB Ops Manager AES256-GCM を使用して 暗号化したスナップショット を復元する場合は、復元の完了後 に マスターキーをローテーション します 。

手動復元プロセスでは、次のことを前提としています。

警告

自動復元を実行できない場合にのみ、スナップショットを手動で復元します。 手動復元を使用する必要があると判断された場合は、 MongoDB サポート にお問い合わせください。 このセクションでは、手動復元手順のステージの概要について説明します。

手動復元プロセスには、MongoDB サポートの支援を受けて実行する次の高レベルのステージがあります。

  1. レガシーのmongo shell またはmongoshを使用して、各レプリカセットとコンフィギュレーションサーバー レプリカセット(CSRS)に接続します。

  2. (任意) 各レプリカセットと CSRS の構成ファイルを確認します。 復元プロセスが完了したら、保存された構成ファイルを使用して復元されたレプリカセットの構成を再構築できます。

  3. ターゲット ホストを準備します。

    • ターゲット ホストで実行されているすべてのmongodプロセスを停止します。

    • 復元されたデータを保持するのに十分なストレージ領域をプロビジョニングします。

    • データとログ用のディレクトリを準備します。

    • ターゲット ホストのストレージ パスとログ パス、およびレプリカとシャーディング ロールの構成を含む構成ファイルを MongoDB Server ディレクトリに追加します。

  4. CSRS を復元します。

  5. 各シャードのレプリカセットを復元します。

  6. ターゲット クラスター内の各 mongos プロセスを再起動します。

  7. クラスターに接続できることを確認します。

手動復元の完全な手順については、 MongoDB Server のドキュメント を参照してください。

戻る

特定のポイントインタイムから復元

項目一覧