다양한 방법 중 하나를 사용하여 온프레미스 MongoDB 배포에서 Atlas 로 데이터를 마이그레이션 할 수 있습니다. Atlas 실시간 마이그레이션 다운타임을 최소화하면서 많은 작업을 자동화하므로 가능하면 사용하는 것이 좋지만, 데이터베이스 마이그레이션 에 내재된 다양성과 복잡성을 수용하는 다른 도구를 사용할 수도 있습니다.
실시간 마이그레이션 개요
Atlas 실시간 마이그레이션 온프레미스 MongoDB 데이터베이스에서 Atlas 로의 데이터 이동을 자동화합니다. Atlas 실시간 마이그레이션 에는 다음과 같은 기능이 포함되어 있습니다.
마이그레이션 호스트 항상 Atlas cluster 에 대한 트래픽을 암호화합니다. Atlas 노드로 들어오고, 들어오고, Atlas 노드 간에 발생하는 트래픽은 항상 암호화됨 되며, 이 기능 비활성화할 수 없습니다. 특정 역할 기반 액세스 제어(RBAC) 데이터베이스 역할(예: ,
backup
readAnyDatabase
또는clusterMonitor
) 및 Atlas 프로젝트 소유자만 실시간 마이그레이션 시작할 수 있습니다. 사용자는 SCRAM-SHA-1 또는 SCRAM-SHA-256 를 사용하여 클러스터에 인증합니다.실시간 마이그레이션 대부분의 작업을 자동화합니다. 관리형 '끌어오기' 메서드의 경우, 실시간 마이그레이션 주요 지표 모니터링하고, 마이그레이션 서버를 프로비저닝하고, 마이그레이션 명령의 엄격한 시퀀싱을 수행합니다. 또한 마이그레이션 하려는 Atlas 대상 클러스터 계층 구성을 선택할 수도 있습니다.
자세한 지침은 대상 클러스터를 확장하다 비용을 관리하는 데 도움이 됩니다. 권장 사항에는 적절한 클러스터 크기 조정 및 임시 확장 포함되며, 마이그레이션 후 최적의 수준으로 크기를 조정하는 것이 좋습니다.
실시간 마이그레이션 백그라운드에서 mongosync를 사용하므로 병렬 데이터 복사를 통한 빠른 전환이 가능합니다. 프로세스는 지속적인 데이터 동기화와 최종 전환 단계를 사용하여 가동 중단 시간 최소화 하여 일시적인 네트워크 중단 및 클러스터 선택을 관리 . 재시도 메커니즘과 마이그레이션 전 유효성 검사는 중단에 대한 회복 탄력성 강화합니다.
실시간 상태 업데이트 및 알림 통해 마이그레이션을 모니터링하세요.
실시간 마이그레이션 방법
실시간 마이그레이션 서버 데이터를 Atlas 로 가져오도록 할 수 있습니다. 풀 실시간 마이그레이션 메서드는 특정 MongoDB 버전 간의 마이그레이션 경로를 지원합니다. 자세한 학습 은 지원되는 마이그레이션 경로를 참조하세요. 지원되지 않는 MongoDB 버전을 사용하여 데이터베이스에서 데이터를 마이그레이션 하려면 레거시 마이그레이션 또는 수동 마이그레이션 방법을 참조하세요.
데이터를 Atlas 로 가져옵니다. Atlas 소스 MongoDB deployment 에서 데이터를 가져오며, 배포서버의 방화벽 통해 소스 배포서버 에 액세스 해야 합니다. 클러스터가 완전히 동기화되면 소스에서 쓰기 (write) 작업을 중지하고 애플리케이션을 Atlas cluster 로 리디렉션하는 컷오버 프로세스 수행한 후 다시 시작해야 합니다. 다음 고려 사항이 적용.
Cloud Manager 또는 Ops Manager 에서 모니터링하지 않는 배포에 가장 적합합니다.
실시간 마이그레이션 서버 에서 인바운드 액세스 허용하려면 소스 데이터베이스 공개적으로 액세스할 수 있어야 합니다.
소스 또는 대상 클러스터 에 대해 VPC 피어링 또는 비공개 엔드포인트 지원 하지 않습니다.
소스 및 대상 클러스터 토폴로지가 일치해야 합니다. 예시 들어 둘 다 복제본 세트 또는 동일한 수의 샤드를 가진 샤딩된 클러스터여야 합니다.
전환 중 가동 중단 시간 최소화 쓰기를 중지하고 새 연결 문자열 로 애플리케이션을 다시 시작하도록 계획하세요. 마이그레이션 프로세스 대상 클러스터 에서 CPU를 많이 사용하며 상당한 네트워크 대역폭이 필요합니다.
마이그레이션 프로세스 원활하게 진행하려면 소스 클러스터의 oplog 크기가 전체 마이그레이션 기간을 처리하기에 충분한지 확인하세요. 소스 클러스터 의 경우 실시간 마이그레이션의 지연 창 oplog 복제 지연 창 범위 내에 있어야 합니다. 최소 oplog window 늘리거나 고정 oplog 크기를 늘려 이 요구 사항을 충족할 수 있습니다. 대상 클러스터 의 경우, MongoDB 기간 동안 소스 클러스터 보다 두 단계 이상 높은 대상 클러스터 계층 선택할 것을 권장 마이그레이션 . 대상 클러스터 에서 저장 자동 확장 비활성화되어 있는 경우 대상 클러스터 의 oplog 크기를 충분히 높은 고정 값으로 늘립니다. 대상 클러스터 에서 저장 자동 확장 활성화된 경우 대상 클러스터 에서 최소 oplog window 충분히 높게 설정하다 . 자세한 학습 은 Oplog 요구 사항을 참조하세요.
전체 마이그레이션 권장 사항 및 지침은 클러스터를 Atlas 로 실시간 마이그레이션(끌어오기)을 참조하세요.
마이그레이션 모니터링
진행 중인 마이그레이션과 과거 마이그레이션을 모두 검토 하려면 Atlas 에서 Migration Hub 페이지로 이동하세요.
각 마이그레이션 프로세스 클릭하면 초기 데이터 복사 시간 추정치 및 포괄적인 진행률 보고서를 포함한 자세한 정보를 확인할 수 있습니다. 클러스터 카드를 사용하여 마이그레이션 생성, 컷오버 또는 취소할 수 있습니다.
수동 마이그레이션 방법
Atlas 실시간 마이그레이션 마이그레이션 요구 사항의 제약 조건을 충족할 수 없는 경우, Atlas 외부에서 실행 다음 도구 중 하나를 사용하여 기존 MongoDB deployment, JSON
또는 CSV
파일의 데이터를 Atlas 로 가져올 수 있습니다.
도구 | 설명 |
---|---|
mongosync 바이너리는 Atlas 실시간 마이그레이션 에서 사용하는 프라이머리 프로세스 입니다. 독립형 를 사용하여 | |
기존 복제본 세트 또는 애플리케이션을 종료하지 않고 MongoDB 복제본 세트 에서 Atlas cluster 로 마이그레이션하세요. mongomirror는 사용자/ 역할 데이터를 가져오거나 데이터베이스 복사하지 | |
기존 MongoDB deployment 의 mongodump에서 가져온 데이터 백업 덤프로 Atlas cluster 시딩합니다. | |
또는 | |
GUI를 사용하여 또는 파일 의 데이터를 |
Atlas cluster 백업 데이터에서 다른 Atlas cluster 로 복원 할 수도 있습니다. 자세한 내용은 클러스터 복원을 참조하세요.
Atlas VNet 피어링 또는 Private Link 구성을 사용해야 하는 경우, 타사에서 해당 소스 클러스터 로의 직접 연결을 허용하지 않거나, 소스 클러스터 아직 없거나 가져오고 싶지 않은 경우 클러스터가 Ops Manager 또는 Cloud Manager 에 추가되면 MongoDB 독립형 mongosync 접근 방식을 권장합니다.
마이그레이션 할 데이터 세트가 비교적 적고( GB 미만) 장기간 애플리케이션 다운타임을300 견딜 수 있는 경우, MongoDB mongodump 및 mongorestore 접근 방식을 권장합니다.
마이그레이션 할 데이터 세트가 비교적 적고(<300 GB ) 인덱스 문제가 없고 장기간 애플리케이션 다운타임을 견딜 수 있는 경우, MongoDB mongoexport 및 mongoimport 접근 방식을 권장합니다.
전환
마이그레이션 '전환 준비' 상태에 도달하면 클러스터 카드에서 Cutover on target cluster 을 클릭한 다음 Prepare to Cutover 을 클릭하여 전환 프로세스 시작합니다. 전환이 성공적인 완료되면 새 대상 클러스터 점 도록 애플리케이션 재구성합니다.
다음 단계
Atlas 조직, 프로젝트 및 클러스터에 대한 지침 페이지를 참조하여 Atlas 엔터프라이즈 자산의 빌딩 블록에 대해 학습 왼쪽 탐색을 사용하여 각 웰 아키텍처 프레임워크 기반에 대한 기능 및 권장사항 찾을 수 있습니다.