Docs Menu
Docs Home
/
MongoDB Atlas
/

クラウドバックアップ スナップショットのエクスポート

項目一覧

  • サポートされているストレージ サービス
  • Atlas がスナップショットをエクスポートする方法
  • エクスポートされたデータ形式
  • 制限
  • 必要なアクセス権
  • 前提条件
  • 輸出マネジメント

注意

この機能は、{0M0 無料クラスターと Flex クラスターでは使用できません。利用できない機能について詳しくは、「 Atlas M0 (無料クラスター)、M2 、M5 の制限 を参照してください。

Atlas を使用すると、クラウドバックアップ スナップショットをオブジェクトストレージサービスにエクスポートできます。

自動バックアップ ポリシーとスケジュールを管理する方法については、「バックアップ ポリシーの管理」を参照してください。

Atlas は現在、次のオブジェクトストレージサービスをサポートしています。

  • Amazon Web Services S3バケット

  • Azure BLOB ストレージ

個々のスナップショットを手動でエクスポートすることも、スナップショットを自動的にエクスポートするためのエクスポート ポリシーを設定することもできます。自動エクスポートの場合は、エクスポート ポリシーで頻度を指定する必要があります。

  • 毎日

  • 毎週

  • 毎月

  • 毎年

Atlas は、エクスポート頻度に一致する頻度タイプのバックアップ スナップショットを自動的にエクスポートします。エクスポートされた結果は、そのスナップショットの完全バックアップです。

次の点を考慮してください。

  • 週次および月次のスナップショット スケジュールを設定するバックアップ ポリシー

  • 毎月のエクスポート頻度を設定するエクスポート ポリシー

たとえば、月末に週次スナップショットと月次スナップショットが同じ日に実行されるとします。スナップショットは 4 件あり、そのうち 3 件は週次スナップショットであり、4 番目のスナップショットは Atlas によって週次スナップショットとして扱われますが、同じ日に発生したため月次スナップショットにもなります。Atlas が月次スナップショットをエクスポートするのは、エクスポート頻度がそのスナップショットのスナップショット頻度と一致する場合のみです。週次スナップショットもエクスポートするには、週次スナップショットもエクスポートするようにエクスポート ポリシーを更新します。エクスポート頻度が毎週に設定されている場合、Atlas は 4 件すべてのスナップショットをエクスポートします。

エクスポートが進むにつれて、オブジェクトストレージサービスに部分的な結果が表示される場合があります。

Atlas では、 Time to Live の設定に関係なく、ドキュメントがスナップショットに永続化されます。これらのドキュメントには、 Time to Live の期限を過ぎたスナップショットからアクセスできます。

Atlas は、$.125 AWSまたはAzure自体により発生するデータ転送コストに加えて、 AWS S3 バケットまたはAzure Blob ストレージ コンテナにエクスポートされたデータ 1 GBあたり 0} を請求します。 Atlas は、エクスポートする前にデータを圧縮します。エクスポートされるデータの量を見積もるには、クラスター内の各データベースの dataSize を合計します。この合計は、エクスポートの非圧縮サイズに対応します。これが、 データのエクスポート操作のために Atlas から発生する最大コストになります。

Atlas は、次の場合に空のファイルを /exported_snapshots/.permissioncheck にアップロードします。

Atlas がエクスポートを完了すると、Atlas は各コレクションに対して .complete という名前のメタデータ ファイルと metadata.json という名前のメタデータ ファイルをアップロードします。

エクスポート ジョブが失敗した場合:

  • Atlas は自動的にエクスポートを再試行しません。

  • Atlas はオブジェクトストア内の部分的なデータを削除しません。

Atlasgzip は、 で圧縮された拡張JSON (v )ドキュメントをアップロードします。2 Atlas では、これらのドキュメントを順番にアップロードすることはありません。以下は、オブジェクトストア上のファイルへのパスです。

/exported_snapshots/<orgName>/<projectName>/<clusterName>/<initiationDateOfSnapshot>/<timestamp>/<dbName>/<collectionName>/<shardName>.<increment>.json.gz

以下の条件に一致するもの。

<orgName>

Atlas 組織の名前。

<projectName>

Atlas プロジェクトの名前。

<clusterName>

Atlas クラスターの名前。

<initiationDateOfSnapshot>

スナップショットが作成された日付。

<timestamp>

エクスポート ジョブが作成されたときのタイムスタンプ。

<dbName>

Atlas クラスター内のデータベースの名前。

<collectionName>

Atlas コレクションの名前。

<shardName>

<increment>

チャンクがアップロードされるにつれて増加するカウント。0 から始まります。

次のアクションは実行できません。

クラウドバックアップ スナップショットを管理するには、プロジェクトに対するProject Backup Manager またはProject Owner アクセス権が必要です。

アクセスを持つユーザーは、クラウドバックアップ スナップショットを管理する前に、自分自身を または としてプロジェクトに追加する必要があります。Organization OwnerProject Backup ManagerProject Owner

クラウドバックアップ スナップショットをエクスポートするには、M10 クラウドバックアップが有効 になっている 以上の Atlas クラスターが必要です。さらに、オブジェクトストアにエクスポートするには、次の操作を行う必要があります。

  1. Amazon Web ServicesIAM ロールの 設定 STS:AssumeRoleとAtlas Amazon Web Servicesを使用すると、 に リソースへのアクセスが許可されます。の アクセスの構成の詳細については、「Amazon Web Services 統合Atlas Amazon Web Servicesアクセスのセットアップ 」を参照してください。

  2. IAM ロール ポリシーをAmazon Web Services 設定するAtlas S3:PutObjectS3:GetBucketLocationAmazon Web Servicesこれにより、 に書込みアクセス、または リソースへの 権限と 権限が付与されます。Amazon Web Servicesリソースへの書込みアクセスの設定の詳細については、「統合Amazon Web Servicesアクセスのセットアップ 」を参照してください。

    {
    "Version": "2012-10-17",
    "Statement": [
    {
    "Effect": "Allow",
    "Action": "s3:GetBucketLocation",
    "Resource": "arn:aws:s3:::bucket-name"
    },
    {
    "Effect": "Allow",
    "Action": "s3:PutObject",
    "Resource": "arn:aws:s3:::bucket-name/*"
    }
    ]
    }
  1. Atlas プロジェクト向けのアクセス ポリシーを使用してAzure Service Principal を設定します。

  2. Azure サービス プリンシパル に ストレージ Blob セレクター ロールと ストレージ Blob データ コンプライアンス ロールを割り当てます。

    サービス プリンシパルにロールを割り当てるには、次の情報が必要です。

    ロール
    説明

    ストレージ Blob 削除

    これにより、サービス プリンシパルは、 Azureストレージ コンテナにアクセスするための SAS トークンに署名できるようになります。 このロールを割り当てるには、次のコマンドを実行します。

    az role assignment create --assignee-object-id <service-principal-id> --role "Storage Blob Delegator" --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>

    ストレージ BLOB データ コンストラクター

    これにより、 Azureストレージ コンテナの読み取り、書込み、削除のグローバルアクセスが可能になります。 このロールを割り当てるには、次のコマンドを実行します。

    az role assignment create --assignee-principal-type ServicePrincipal --assignee-object-id <service-principal-id> --role "Storage Blob Data Contributor" --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/blobServices/default/containers/<container-name>

Amazon Web Services3Atlas CLIとAtlas Administration から S バケットへのスナップショット エクスポートを作成および管理し、API AzureAtlasAdministration から Blob ストレージ コンテナにスナップショットAPI エクスポートを作成および管理できます。

注意

Atlas CLI を使用してスナップショットを Azure Blob ストレージ コンテナにエクスポートすることはできません。

Atlas CLI でエクスポート ジョブを作成または表示することで、エクスポート ジョブを管理できます。

を使用して、M10 AtlasAmazon Web Services以上の3 クラスターの 1 つのバックアップ スナップショットを既存の SAtlas CLI バケットにエクスポートするには、次のコマンドを実行します。

atlas backups exports jobs create [options]

Atlas CLI を使用して特定のバックアップ エクスポート ジョブの完了を監視するには、次のコマンドを実行します。

atlas backups exports jobs watch <exportJobId> [options]

前のコマンドの構文とパラメータの詳細については、Atlas CLI ドキュメントの「atlas backups exports jobs create」および「atlas backups exports jobs watch」を参照してください。

Tip

参照: 関連リンク

Atlas CLI を使用して、指定したプロジェクトのクラウドバックアップ復元ジョブを一覧表示するには、次のコマンドを実行します。

atlas backups exports jobs list <clusterName> [options]

Atlas CLI を使用して、指定したクラウドバックアップ復元ジョブの詳細を返すには、次のコマンドを実行します。

atlas backups exports jobs describe [options]

前のコマンドの構文とパラメータの詳細については、Atlas CLI ドキュメントの「「atlas backups のエクスポート ジョブ リスト」および「atlas backups のエクスポート ジョブの説明」を参照してください。

Atlas CLI を使用してエクスポート バケットを作成、表示、削除することでエクスポート バケットを管理できます。

Atlas CLI を使用して、既存の AWS S3 バケットで Atlas バックアップのエクスポート先を作成するには、次のコマンドを実行します。

atlas backups exports buckets create <bucketName> [options]

コマンド構文とパラメータの詳細については、Atlas CLI ドキュメントの atlas backups exports buckets create を参照してください。

Atlas CLI を使用して、指定したプロジェクトのクラウドバックアップ復元バケットを一覧表示するには、次のコマンドを実行します。

atlas backups exports buckets list [options]

Atlas CLI を使用して指定したクラウドバックアップ復元バケットの詳細を返すには、次のコマンドを実行します。

atlas backups exports buckets describe [options]

前のコマンドの構文とパラメータの詳細については、Atlas CLI ドキュメントの「「atlas backups exports buckets list」および「atlas backups exports buckets describe」を参照してください。

Atlas CLI を使用して Atlas バックアップのエクスポート先を削除するには、次のコマンドを実行します。

atlas backups exports buckets delete [options]

コマンド構文とパラメータの詳細については、Atlas CLI ドキュメントの「atlas backups exports buckets delete」を参照してください。

クラウドプロバイダー アクセスの付与と管理、およびスナップショット エクスポート ジョブの作成と管理を行うには、使用するAPIProject Ownerロールが必要です。

エクスポート バケットまたはコンテナを管理するには、以下を使用します。

スナップショットをエクスポートするためのAmazon Web Services S3バケットまたはAzure Blob ストレージ コンテナへのアクセスを許可するには、 POST リクエストをクラウドバックアップリソースエンドポイントに送信します。 これにより、 Amazon Web Services S3バケットまたはAzure Blob ストレージ コンテナがAtlasクラウドバックアップ スナップショットを受信できるようになります。 アクセスを許可するリクエストを送信するときは、次の情報を提供する必要があります。

がスナップショットをエクスポートするすべてのAmazon Web Services S3 バケットとAzure Blob ストレージAtlas コンテナを取得するには、GET クラウドバックアップ リソース エンドポイントに リクエストを送信します。

エクスポート バケットを削除するには、まずプロジェクト内のすべてのクラスターのAmazon Web Services S3バケットまたはAzure Blob ストレージ コンテナへのスナップショットの自動エクスポートを無効にし、次に使用してクラウドバックアップリソースエンドポイントDELETE リクエストを送信する必要があります。エクスポート バケットのID 。 必要に応じて、エクスポート バケット ID を取得するためにエンドポイントGETリクエストを送信します。

エクスポート ジョブを管理するには、次の を使用します。

1Atlas つの バックアップ スナップショットをAmazon Web Services S3 バケットまたはAzure Blob ストレージ コンテナにエクスポートするには、エクスポートするスナップショットの と の を指定して、POST クラウドバックアップ リソース エンドポイント に リクエストを送信します。ID IDAmazon Web ServicesS3 バケットまたは BlogAzure ストレージ コンテナ。

ID で 1 つのスナップショット エクスポート ジョブを検索するには、エクスポート ジョブの ID を指定してクラウドバックアップリソースエンドポイントGETリクエストを送信します。

実行中のすべてのスナップショット エクスポート ジョブを取得するには、クラウドバックアップリソースエンドポイントGETリクエストを送信します。

戻る

保管時の暗号化を使用した復元