Docs Menu
Docs Home
/
MongoDB Cloud Manager
/ /

백업 준비

이 페이지의 내용

  • 백업 크기 조정 권장 사항
  • 스냅샷 빈도 및 보존 정책
  • 백업 고려 사항

클러스터 또는 복제본 세트를 백업하기 전에 데이터를 백업하는 방법과 백업할 데이터를 결정하세요. 이 페이지에서는 백업을 시작하기 전에 고려해야 할 항목에 대해 설명합니다.

다음도 참조하세요.

백업 작동 방식을 알아보려면 백업을 참조하세요.

데이터 백업의 크기를 조정할 때 복제본 세트 크기를 압축되지 않은 데이터 의 2 TB 이하로 유지합니다. 데이터베이스의 비압축 데이터가 2 TB를 초과하여 증가하는 경우:

  • 데이터베이스 샤딩

  • 각 샤드의 비압축 데이터를 2TB 이하로 유지하세요.

이러한 사이즈 제한은 권장사항입니다. MongoDB database 또는 Cloud Manager의 제한 사항이 아닙니다.

백업 및 복원은 대용량의 CPU, 메모리, 스토리지 및 네트워크 대역폭을 사용할 수 있습니다.

예시

명시된 네트워크 처리량(예: 10Gbps 또는 100Gbps)은 이론적 최대값입니다. 이 값은 네트워크 트래픽 공유 또는 제한을 고려하지 않습니다.

다음 시나리오를 생각해 보겠습니다.

  • 2TB 데이터베이스를 백업하려고 합니다.

  • 호스트는 Cloud Manager에서 백업 스토리지로의 10Gbps TCP 연결을 지원합니다.

  • 네트워크 연결은 패킷 손실이 매우 적고 왕복 지연 시간이 낮습니다.

데이터의 전체 백업을 완료하는 데 30시간 이상이 걸립니다. [1]

이는 단일 또는 미러링된 NVMe 스토리지 장치에 대해 최대 3Gbps 읽기 및 1Gbps 쓰기가 가능한 디스크 읽기 및 쓰기 속도를 고려하지 않은 예상치입니다.

각 연속 증분 백업을 완료하는 데 필요한 시간은 쓰기 부하에 따라 다릅니다.

이 데이터베이스를 샤딩하여 4개의 샤드로 만들면 각 샤드에서 백업을 개별적으로 실행합니다. 이렇게 하면 8시간 안에 백업을 완료할 수 있습니다.

[1] 이 처리량 수치는 네트워크 처리량 계산기 를 사용하여 계산되었습니다. 추가 네트워크 압축이 없다고 가정합니다.

기본적으로 Cloud Manager는 6시간마다 데이터의 기본 스냅샷을 생성합니다.

관리자는 기본 스냅샷의 빈도를 6, 8, 12 또는 24시간으로 변경할 수 있습니다. Cloud Manager는 일정에 따라 스냅샷을 자동으로 생성합니다. 즉, 필요에 따라 스냅샷을 찍을 수 없습니다.

Cloud Manager는 다음 표에 나열된 기간 동안 스냅샷을 보관합니다.

배포의 백업을 종료하면 Cloud Manager는 현재 보존 정책의 날짜 내에 있는 스냅샷을 즉시 삭제합니다.

배포 백업을 중지하면 Cloud Manager는 새 스냅샷 생성을 중지하지만 기존 스냅샷은 나열된 만료 날짜까지 유지합니다.

스냅샷
기본 보존 정책
최대 보유 기간 정책
기본 스냅샷
2일
5일(빈도가 24시간인 경우 30일)
일일 스냅샷
7일
1년
주간 스냅샷
4주
1년
월간 스냅샷
13 개월
7년

스냅샷 일정을 변경하면 스냅 샷 저장 비용에 영향을 미칩니다.

Backup 페이지를 통해 제공되는 Edit Snapshot Schedule 메뉴 옵션을 통해 백업된 배포의 일정을 변경할 수 있습니다. 관리자는 API의 SnapshotSchedule 리소스를 통해 스냅샷 빈도와 보존 기간을 변경할 수 있습니다.

Cloud Manager에서는 스냅샷의 참고 시간을 변경할 수 없습니다.

  • Cloud Manager는 배포의 총 collection 수가 100,000 을(를) 충족하거나 초과하는 배포를 백업하지 않습니다.

  • Cloud Manager는 인덱스 collection 옵션을 복제하지 않습니다.

WiredTiger 암호화를 사용하여 백업을 저장할 수 없습니다. 암호화를 활성화하지 않는 경우 WiredTiger storage engine을 사용하여 백업을 저장할 수 있습니다. 백업에서 복원하는 경우 암호화되지 않은 파일을 복원합니다.

MongoDB 버전 4.2 이상을 실행하는 클러스터

  • Cloud Manager는 collStats 및 에서 보고한 크기 통계를 제외하고 스냅샷을 생성할 때 인과적 일관성 을 유지합니다. db.[collection].count() collStatsdb.[collection].count() 에서 보고하는 크기 통계는 정확하지 않을 수 있습니다.

  • Cloud Manager는 샤드 클러스터의 모든 샤드에 걸쳐 시간을 조정합니다. 이렇게 하면 예약된 스냅샷 시간을 기준으로 모든 샤드 및 노드에 기록된 모든 문서가 스냅샷에 포함됩니다.

MongoDB 버전 4.0 이하를 실행하는 클러스터

  • Cloud Manager는 충돌 일관적인 스냅샷을 유지합니다.

  • Cloud Manager는 샤드 클러스터와 Config 서버 복제본 세트에 대해 각 샤드에서 거의 동시에 스냅샷을 생성합니다.

기능
FCV 4.2 이상을 실행하는 데이터베이스
FCV 4.0 이하를 실행하는 데이터베이스
WiredTiger 스냅샷을 이용한 데이터 백업
백업 데몬을 사용하여 데이터 백업
복제본 세트 백업
샤딩된 클러스터 백업
네임스페이스를 사용하여 필터링 가능 [2]
동기화 소스 데이터베이스 지정 가능
데이터를 특정 시점으로 복원할 수 있음 [3]
증분 백업 수행 가능 [4]
KMIP 암호화 [5]를사용하는 스냅샷 지원
S3 스냅샷 스토리지에 저장 지원
MongoDB Enterprise를 실행하는 데이터베이스 지원
MongoDB Community를 실행하는 데이터베이스 지원
모든 클러스터 노드에서 백업이 활성화 mongod 된 MongoDB Agent 필요
[2] 네임스페이스 필터링은 Cloud Manager 버전 6.0.8 이상에서만 지원됩니다. MongoDB deployment의 featureCompatibilityVersion 값이 4.0 이하이거나 6.0.1 이상이어야 합니다.
[3] PIT 복원을 수행하려면 Ops Manager 4.2.13 이상이 필요합니다.
[4] Cloud Manager는 스냅샷이 삭제된 후 블록 저장소 블록 크기가 변경된 경우 첫 번째 백업에 대한 전체 백업을 요구합니다. 증분 백업은 네트워크 전송 및 저장 비용을 줄여줍니다. 이 기능은 다음과 함께 작동합니다.
  • MongoDB 4.0 이하 버전.
  • FCV 4.2 이상을 실행하는 경우 MongoDB 4.2.6 이상.
[5] 암호화된 스냅샷을 쿼리하려면 MongoDB Enterprise 4.2.9 이상 또는 4.4.0 이상이 필요합니다.
[6] FCV 4.2 이상 백업은 로컬 키 암호화를 지원하지 않습니다.
[7] FCV 4.2 이상의 데이터베이스를 파일 시스템 저장소에 백업할 File System Store Gzip Compression Level 때는 을(를) 무시합니다.

MongoDB 4.2 이상을 FCV 4.2 이상으로 실행하는 경우 백업 및 복원을 실행하려면 다음을 수행합니다.

  • MongoDB Enterprise를 실행해야 합니다.

  • 블록 저장소 블록 크기 변경을 고려해야 합니다. 블록 크기를 설정하지 않고 기본값을 사용한 경우 해당 블록 크기는 64KB에서 1MB로 변경됩니다. 이는 스토리지 사용량에 영향을 줄 수 있습니다.

  • 복제본 세트 구성의 호스트 이름이 MongoDB Agent가 사용하는 호스트 이름과 일치하는지 또는 호스트 매핑 에 올바른 호스트 이름이 포함되어 있는지 확인해야 합니다. rs.conf() 를 사용하여 복제본 세트 구성을 확인할 수 있습니다.

  • 네임스페이스 필터 목록을 사용하여 MongoDB 6.0 이상을 실행하는 경우에만 백업에 포함된 네임스페이스 를 정의할 수 있습니다. MongoDB 4.2 ~ 5.0 버전에서 만든 스냅샷에는 항상 모든 네임스페이스가 포함됩니다.

  • 동기화 소스 데이터베이스가 필요하지 않습니다. 스냅샷을 만들 때 Cloud Manager는 성능에 미치는 영향이 가장 적고 스냅샷 데이터의 스토리지 수준 중복이 가장 큰 복제본 세트 멤버를 선택합니다.

  • 클러스터의 모든 mongod 노드와 함께 MongoDB Agent를 배포해야 합니다.

참고

Cloud Manager가 클러스터를 관리하지 않는 경우:

  • 백업을 실행하는 MongoDB backup 사용자에게 및 역할을 부여 합니다.clusterAdmin

  • MongoDB Agent를 실행하는 시스템 사용자에게 배포의 모든 데이터 파일(저널 파일 포함)에 대한 읽기 권한이 있는지 확인합니다.

중요

샤딩된 클러스터 또는 복제본 세트만 백업할 수 있습니다. 독립형 mongod 프로세스를 백업하려면 그것을 반드시 단일 노드 복제본 세트로 변환해야 합니다.

다음 고려 사항은 데이터베이스가 MongoDB 4.0 이하 버전을 실행하거나 MongoDB 4.2를 다음으로 실행하는 경우에 적용됩니다. "featureCompatibilityVersion" : 4.0

Cloud Manager는 만료된 스냅샷을 그루밍 작업을 사용하여 관리합니다. 이러한 정리 작업은 스냅샷이 포함된 스냅샷 저장소에 따라 다르게 작동합니다.

스냅샷 저장소
그루밍 작업 방식
MongoDB 블록 저장소
각 작업에 필요한 리빙 블록의 양까지 추가 디스크 공간을 사용합니다.
파일시스템 스냅샷 저장소
만료된 스냅샷 삭제
S3 Snapshot Store
그루밍 작업이 실행되는 동안 Cloud Manager가 스냅샷을 생성하는 경우 추가 디스크 공간을 사용할 수 있습니다. Cloud Manager는 S3 스냅샷 저장소에서 동시 그루밍 작업을 실행할 수 있습니다.

참고

스냅샷 작업과 그루밍 작업은 동시에 실행할 수 없습니다. 스냅샷 작업이 실행되는 동안 그루밍 작업을 시작하면 그루밍 작업이 실패하고 MongoDB Ops Manager가 오류를 기록하고 스냅샷 작업이 완료된 후 그루밍 작업을 자동으로 다시 시도합니다. 그루밍 작업이 실행되는 동안 스냅샷 작업을 시작하면 스냅샷 작업이 실패하고 MongoDB Ops Manager가 오류를 기록하고 그루밍 작업이 완료된 후 스냅샷 작업을 다시 시도합니다.

네임스페이스 필터를 사용하면 데이터베이스와 컬렉션을 지정할 수 있습니다. 제외할 항목의 Blacklist 또는 포함할 항목의 Whitelist를 작성합니다. 백업을 시작할 때 선택한 항목은 나중에 필요에 따라 편집할 수 있습니다. 백업에 데이터를 추가하는 방식으로 필터를 변경하는 경우에는 다시 동기화해야 합니다.

블랙리스트를 사용하면 로깅 데이터, 캐시 또는 기타 임시 데이터가 포함된 컬렉션의 백업을 방지할 수 있습니다. 이러한 종류의 데이터베이스 및 컬렉션을 제외하면 백업 시간과 비용을 줄일 수 있습니다. 화이트리스트는 백업하려는 모든 네임스페이스를 의도적으로 선택해야 하므로, 블랙리스트를 사용하는 것이 화이트리스트를 사용하는 것보다 더 나은 경우가 많습니다.

참고

네임스페이스 필터링은 Cloud Manager 버전 6.0.8 이상에서만 지원됩니다. MongoDB deployment의 featureCompatibilityVersion 값이 4.0 이하이거나 6.0.1 이상이어야 합니다.

MongoDB cluster를 백업하려면 WiredTiger 스토리지 엔진 스토리지 엔진을 사용하세요.

현재 백업 데이터베이스가 MMAPv1을 사용하는 경우 WiredTiger로 업그레이드하세요.

WiredTiger를 사용하면 Cloud Manager는 백업을 파일 수가 10만 개 미만인 배포로 제한합니다. 파일에는 collection과 인덱스가 포함됩니다.

MongoDB 4.2 이 MMAPv1 스토리지를 제거합니다. 스토리지 엔진에 대해 자세히 알아보려면 MongoDB 매뉴얼의 스토리지 를 참조하세요.

프로덕션 배포의 경우, 백업된 모든 복제본 세트를 1년에 한 번 등 주기적으로 재동기화하세요. 재동기화하면 각 복제본 세트의 세컨더리에서 데이터를 읽습니다. 재동기화 중에는 새 스냅샷이 생성되지 않습니다.

다음과 같은 경우 백업을 재동기화할 수 있습니다.

중요

가 이하인 MongoDB 를 실행 하는 클러스터에 체크포인트를 사용할 수 Feature Compatibility Version 있습니다.4.0 FCV 이상이 설치된 MongoDB 인스턴스에서 체크포인트가 4.2 제거되었습니다.

샤드 클러스터 의 경우, 체크포인트는 스냅샷 사이에 추가 복원 지점을 제공합니다. 체크포인트를 활성화하면 Cloud Manager는 스냅샷 사이에 15, 30 또는 60 분의 구성 가능한 간격으로 복원 지점을 생성합니다. 체크포인트를 활성화하려면 체크포인트 활성화를 참조하세요 .

체크포인트를 생성하기 위해 Cloud Manager는 밸런서 를 중지하고 클러스터의 각 샤드config 서버 의 oplog 에 토큰을 삽입합니다. 이러한 체크포인트 토큰은 가벼우며 성능이나 디스크 사용에 영향을 주지 않습니다.

백업에는 체크포인트가 필요하지 않으며 기본적으로 비활성화되어 있습니다.

체크포인트에서 복원하려면 Cloud Manager가 각 shard 및 config 서버의 oplog 를 체크포인트 이전에 캡처한 마지막 스냅샷에 적용해야 합니다. 체크포인트에서 복원하는 것은 스냅샷에서 복원하는 것보다 시간이 오래 걸립니다.

FCV 4.0 이하로 실행되는 샤드 클러스터 의 경우, Cloud Manager는 클러스터 스냅샷을 찍기 전에 밸런서 를 비활성화합니다. 마이그레이션이 오래 걸리거나 mongos 가 실행되지 않는 등의 특정 상황에서는 Cloud Manager가 밸런서를 비활성화하려고 시도하지만 비활성화할 수 없습니다. 이러한 경우 Cloud Manager는 클러스터 스냅샷을 계속 생성하지만 불완전하거나 일관되지 않은 데이터가 있을 수 있는 스냅샷에 플래그를 지정합니다. 활성 밸런싱 작업 중에 생성된 클러스터 스냅샷은 데이터 손실 또는 고아 데이터의 위험이 있습니다.

샤드 클러스터 의 경우, 백업이 샤드 또는 config 서버에 관계없이 mongod 프로세스에 연결할 수 없으면 에이전트가 동기화 oplog 토큰 을 삽입할 수 없습니다. 이러한 경우 Cloud Manager는 스냅샷을 생성하지 않고 경고 메시지를 표시합니다.

돌아가기

배포 백업