Docs Menu
Docs Home
/ /

클라우드 백업 스냅샷 내보내기

참고

이 기능은 M0 무료 클러스터 및 Flex 클러스터에서는 사용할 수 없습니다. 사용할 수 없는 기능에 대한 자세한 내용은 Atlas M0(무료 클러스터) 제한을 참조하세요.

Atlas 사용하면 클라우드 백업 스냅샷을 객체 저장 서비스로 내보낼 수 있습니다.

자동화된 백업 정책 및 일정을 관리하는 방법을 알아보려면 백업 정책 관리를 참조하세요.

Atlas 현재 다음과 같은 객체 저장 서비스를 지원합니다.

  • AWS S3 버킷

  • Azure Blob 저장

  • Google Cloud Storage 버킷

참고

백업을 Amazon Web Services S3로 내보내는 경우 Amazon Web Services S3 객체 잠금 을 활성화하여 컴플라이언스 및 보안에 필요한 백업 파일의 불변성을 보장할 수 있습니다. 객체 잠금은 내보낸 백업 파일의 삭제 및 수정을 방지합니다.

내보내기 정책을 설정하여 개별 스냅샷을 수동으로 내보내거나 스냅샷을 자동으로 내보낼 수 있습니다. 자동 내보내기의 경우 내보내기 정책에 빈도를 지정해야 합니다.

  • 매일

  • 매주

  • 월간

  • 연간

Atlas는 내보내기 빈도와 일치하는 빈도 유형으로 모든 백업 스냅샷을 자동으로 내보냅니다. 내보낸 결과는 해당 스냅샷의 전체 백업이 됩니다.

예시

다음 사항을 고려하세요:

  • 주별 및 월별 스냅샷 일정을 설정하는 백업 정책

  • 월별 내보내기 빈도를 설정하는 내보내기 정책

주간 및 월간 스냅샷이 월말 같은 날에 이루어진다고 가정해 보겠습니다. 스냅샷이 총 4 개 있고 이 중 3 개는 주간 스냅샷이며, 네 번째 스냅샷은 Atlas에서 주간 스냅샷으로 처리되지만 같은 날에 발생했기 때문에 월간 스냅샷이기도 합니다. 내보내기 빈도가 해당 스냅샷의 스냅샷 빈도와 일치하기 때문에 Atlas는 월별 스냅샷만 내보냅니다. 주간 스냅샷도 내보내려면 주간 스냅샷도 내보내도록 내보내기 정책을 업데이트하세요. 내보내기 빈도를 매주로 설정하면 Atlas는 스냅샷 4 개를 모두 내보냅니다.

내보내기가 진행되는 동안 객체 저장 서비스에 부분적인 결과가 표시될 수 있습니다.

Atlas TTL(Time to Live) 설정과 관계없이 스냅샷에 문서를 유지합니다. TTL(Time to Live) 기한이 지난 스냅샷 에서 이러한 문서 액세스 할 수 있습니다.

Atlas는 클라우드 서비스 자체에서 발생하는 데이터 전송 비용에 더해 AWS S3 버킷, Azure Blob 저장 컨테이너 또는 Google Cloud 저장소 버킷으로 내보낸 데이터의 GB당 $.125를 청구합니다. Atlas는 내보내기 전에 데이터를 압축합니다. 내보내는 데이터의 양을 추정하려면 클러스터에 있는 각 데이터베이스의 dataSize를 합산합니다. 이 합계는 압축되지 않은 내보내기 크기와 일치해야 하며, 이는 데이터 내보내기 작업을 위해 Atlas에서 발생하는 최대 비용입니다.

Atlas는 다음과 같은 경우 빈 파일을 /exported_snapshots/.permissioncheck 에 업로드합니다.

  • 내보낼 새 객체 저장 추가

  • 내보내기 시작

내보내기가 완료되면 Atlas는 이름이 .complete 인 메타데이터 파일과 metadata.json 인 메타데이터 파일을 각 컬렉션에 대해 업로드합니다.

내보내기 작업이 실패한 경우:

  • Atlas는 자동으로 내보내기를 다시 시도하지 않습니다.

  • Atlas 객체 저장 에서 부분 데이터를 제거 하지 않습니다.

Atlas gzip-압축 확장 JSON2(v) 문서를 업로드합니다. 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 Owner 액세스 권한이 있는 사용자는 프로젝트에 자신을 Project Backup Manager 또는 Project Owner로 추가해야 클라우드 백업 스냅샷을 관리할 수 있습니다.

클라우드 백업 스냅샷을 내보내려면 M10 클라우드 백업이 활성화된 이상의 Atlas cluster 필요합니다. 또한 객체 저장 로 내보내려면 다음을 수행해야 합니다.

  1. Atlas Amazon Web Services Services 리소스에 STS:AssumeRole 대한 액세스 부여하는(으)로 Amazon Web Services Services IAM 역할 구성합니다. Atlas 에 대한 Amazon Web Services 액세스 구성에 대해 자세히 학습 통합 Amazon Web Services 액세스 설정을 참조하세요.

  2. Amazon Web Services S3:PutObject S3:GetBucketLocation 에 Atlas 쓰기 (write) 액세스 또는 및 권한을 부여하는 Amazon Web Services IAM 역할 정책을 구성합니다. Amazon Web Services 리소스에 대한 쓰기 (write) 액세스 구성하는 방법에 대해 자세히 학습 통합 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 서비스 주체를 설정합니다.

  2. Storage Blob 위임자Storage Blob 데이터 기여자 역할을 Azure 서비스 주체에할당합니다.

    서비스 주체에 역할을 할당하려면 다음 정보가 필요합니다.

    역할
    설명

    스토리지 Blob 위임자

    이를 통해 서비스 주체는 SAS 토큰에 서명하여 Azure 스토리지 컨테이너에 액세스할 수 있습니다. 이 역할을 할당하려면 다음 명령을 실행합니다.

    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>

    Storage Blob 데이터 기여자

    이를 통해 Azure 스토리지 컨테이너에 대한 Blob 액세스를 읽고, 쓰고, 삭제할 수 있습니다. 이 역할을 할당하려면 다음 명령을 실행합니다.

    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>

Atlas CLI 및 Atlas Administration API 에서 AWS S3 버킷으로 스냅샷 내보내기를 생성하고 관리 할 수 있습니다. Azure Blob Storage 컨테이너 또는 Google Cloud Storage 버킷으로 스냅샷 내보내기를 만들고 관리 하려면 직접 액세스하거나 Atlas CLI 와 함께 Atlas API 명령을 사용하여 액세스 할 수 있는 Atlas 관리 API 사용해야 합니다.

참고

Atlas CLI 사용하여 Azure Blob Storage 또는 Google Cloud Storage Containers로 내보내기를 관리 하려면 atlas api 명령을 사용하여 Atlas 관리 API 클라우드 백업 리소스 엔드포인트에 요청을 보냅니다.

Atlas CLI를 사용하여 내보내기 작업을 생성하거나 확인하여 내보내기 작업을 관리할 수 있습니다.

Atlas CLI를 사용하여 M10 이상 Atlas 클러스터의 백업 스냅샷 하나를 기존 AWS S3 버킷으로 내보내려면 다음 명령을 실행합니다.

atlas backups exports jobs create [options]

Atlas CLI를 사용하여 특정 백업 내보내기 작업이 완료되는지 확인하려면 다음 명령을 실행합니다.

atlas backups exports jobs watch <exportJobId> [options]

이전 명령의 구문 및 매개 변수에 대해 자세히 알아보려면 Atlas CLI 문서에서 Atlas 백업 내보내기 작업 만들기Atlas 백업 내보내기 작업 보기를 참조하세요

참조: 관련 링크

Atlas CLI를 사용하여 지정한 프로젝트의 클라우드 백업 내보내기 작업을 나열하려면 다음 명령을 실행합니다.

atlas backups exports jobs list <clusterName> [options]

Atlas CLI를 사용하여 지정한 클라우드 백업 내보내기 작업에 대한 세부 정보를 반환하려면 다음 명령을 실행합니다.

atlas backups exports jobs describe [options]

이전 명령의 구문 및 매개변수에 대해 자세히 알아보려면 Atlas 백업 내보내기 작업 목록Atlas 백업 내보내기 작업 설명에 대한 Atlas CLI 문서를 참조하세요.

참조: 관련 링크

내보내기 버킷을 생성, 보기, 삭제하여 Atlas CLI를 사용해 내보내기 버킷을 관리할 수 있습니다.

Atlas CLI를 사용하는 기존 AWS S3 버킷을 사용하여 Atlas 백업의 내보내기 대상을 만들려면 다음 명령을 실행합니다.

atlas backups exports buckets create <bucketName> [options]

명령 구문 및 매개 변수에 관한 자세한 사항은 Atlas CLI문서에서 Atlas 백업 내보내기 버킷 만들기를 참조하세요.

Atlas CLI를 사용하여 지정한 프로젝트에 대한 클라우드 백업 내보내기 버킷을 나열하려면 다음 명령을 실행합니다.

atlas backups exports buckets list [options]

Atlas CLI를 사용하여 지정한 클라우드 백업 내보내기 버킷의 세부 정보를 반환하려면 다음 명령을 실행합니다.

atlas backups exports buckets describe [options]

이전 명령의 구문과 매개 변수에 대한 자세한 내용은 Atlas CLI 문서에서 Atlas 백업 내보내기 버킷 리스트Atlas 백업 내보내기 버킷 설명을 참조하세요.

참조: 관련 링크

Atlas CLI를 사용하여 Atlas 백업의 내보내기 대상을 삭제하려면 다음 명령을 실행합니다.

atlas backups exports buckets delete [options]

명령 구문 및 매개 변수에 관한 자세한 사항은 Atlas CLI 문서에서 Atlas 백업 내보내기 버킷 삭제를 참조하세요.

클라우드 제공자 접근 권한을 부여 및 관리하고 스냅샷 내보내기 작업을 생성 및 관리하려면 사용 중인 APIProject Owner 역할이 있어야 합니다.

다음을 사용하여 내보내기 버킷 또는 컨테이너를 관리할 수 있습니다.

스냅샷을 내보내기 위해 AWS S3 버킷, Azure Blob Storage 컨테이너 또는 Google Cloud Storage 버킷에 대한 액세스 POST 부여하려면 클라우드 백업 리소스 엔드포인트에 요청 보냅니다. 이렇게 하면 AWS S3 버킷, Azure Blob Storage 컨테이너 또는 Google Cloud Storage 버킷이 Atlas Cloud Backup 스냅샷을 수신할 수 있습니다. 액세스 부여 요청 을 보낼 때 다음 정보를 제공해야 합니다.

  • Atlas가 AWS S3 버킷에 액세스하는 데 사용해야 하는 통합 AWS 액세스 역할 ID를 식별하는 고유한 24자리 16진수 문자열입니다. 자세히 알아보려면 통합 AWS 액세스 설정을 참조하세요.

  • Atlas Google Cloud Storage 버킷에 액세스 데 사용하는 Google Cloud 제공자 액세스 역할을 식별하는 고유한 24-16진수 문자열입니다.

3 Atlas GET 스냅샷을 내보내는 모든 AWS S 버킷, Azure Blob Storage 컨테이너 또는 Google Cloud Storage 버킷을 조회 하려면 Cloud Backups 리소스엔드포인트에 요청 보냅니다.

내보내기 버킷을 삭제 하려면 먼저 프로젝트 의 모든 클러스터에 대해 AWS S3 버킷, Azure Blob Storage 컨테이너 또는 Google Cloud Storage 버킷으로 스냅샷 자동 내보내기를 비활성화한 다음 DELETE 클라우드에 요청 보내야 합니다. 내보내기 버킷의 ID 로 리소스 엔드포인트를 백업합니다.필요한 경우 GET 엔드포인트에 요청 보내 내보내기 버킷 ID 조회 .

다음을 사용하여 내보내기 작업을 관리합니다.

Atlas 백업 스냅샷 하나를 AWS S3 버킷, Azure Blob Storage Container 또는 Google Cloud Storage 버킷으로 POST 내보내려면 내보낼 스냅샷 의 ID 와 다음 ID 를 사용하여 Cloud Backups 리소스 엔드포인트에 요청 보냅니다. AWS S3 버킷, Azure Blob Storage 컨테이너 또는 Google Cloud Storage 버킷입니다.

ID로 한 개의 스냅샷 내보내기 작업을 조회하려면 내보내기 작업의 ID를 사용하여 클라우드 백업 리소스 엔드포인트GET 요청을 보냅니다.

실행 중인 모든 스냅샷 내보내기 작업을 조회하려면 클라우드 백업 리소스 엔드포인트GET 요청을 보냅니다 .

돌아가기

미사용 데이터 암호화를 사용하여 복원

이 페이지의 내용