세컨더리 Ops Manager 인스턴스 가 있는 Ops Manager 의 백업 및 복원 Preview로 제공됩니다. 이 기능 과 해당 설명서는 미리 보기 기간에 언제든지 변경될 수 있습니다.
프라이머리 Ops Manager 분실한 경우, 세컨더리 Ops Manager 에서 해당 데이터베이스 백업 복원 다음 새로운 프라이머리 Ops Manager 시작합니다. 업그레이드 실패 , 실수로 인한 데이터 삭제 또는 인프라 장애와 같은 이벤트 발생한 경우 이 절차를 사용하세요. 프라이머리 Ops Manager 다시 시작되면 정상 작동이 재개되기 전에 자동으로 복원 모드로 전환되어 에이전트 구성을 조정합니다. 이 패턴 에 대한 개요는 보조 인스턴스를 사용하여 Ops Manager 백업 및 복원을 참조하세요. 이패턴 구성하려면 Ops Manager 백업하도록 보조 Ops Manager 구성을 참조하세요.
고려 사항
순서 복원
데이터베이스 백업 복원하고 프라이머리 Ops Manager 시작하는 순서가 중요합니다.
경고
프라이머리 Ops Manager 시작하기 전에 데이터베이스 백업 복원합니다. 데이터베이스 백업 복원 전에 프라이머리 Ops Manager 시작하면 프라이머리 Ops Manager 일관성 없는 상태 쓰기 (write) 하고 이전 배포와 새 배포 간에 분할 브레인 시나리오를 만들 수 있습니다.
세컨더리 Ops Manager 스냅샷 메타데이터 저장 와 oplog 메타데이터 저장 도 백업하는 경우 시작하기 전에 세 데이터베이스 백업 모두 동일한 점 으로 복원 하거나 메타데이터 저장소를 애플리케이션 데이터베이스 보다 약간 늦은 점 으로 복원 . 프라이머리 Ops Manager. 메타데이터 저장소를 애플리케이션 데이터베이스 보다 이전 점 으로 복원하면 프라이머리 Ops Manager HTTP 409 (' 스냅샷 차단 누락')을 사용하여 영향을 받는 복원 작업을 거부합니다.
복구 지점
특정 시점 복원 재해가 발생한 시점이 아닌 선택한 점 으로 애플리케이션 데이터베이스 복구합니다. 재해 전에 백업이 oplog 슬라이스 (oplog slice) 에 캡처하지 못한 작업은 복구하지 못할 수 있습니다. 특정 시점 복구 창 허용하는 한 재해에 가장 가까운 복원 점 선택합니다.
프라이머리 Ops Manager 다시 시작된 후 조정이 MongoDB Agent에서 배포서버 자동화 구성을 복구합니다. 기타 최근 애플리케이션 데이터베이스 변경 사항에는 선택한 복원 점 반영됩니다.
버전 호환성
프라이머리 및 세컨더리 Ops Manager 버전은 호환 가능해야 합니다.
경고
스냅샷 을 만든 원본 프라이머리 Ops Manager Manager와 동일한 버전 또는 이후 버전을 실행하는 프라이머리 프라이머리 Ops Manager Manager로 애플리케이션 데이터베이스 복원합니다. 대체 바이너리가 애플리케이션 데이터베이스에 기록된 버전보다 오래된 경우 Ops Manager '다운그레이드는 허용되지 않습니다'라는 오류와 함께 시작을 거부합니다.
전제 조건
복원 모드는 Ops Manager 이상에서 기본값 으로 활성화되어 8.0.24 있습니다. 비활성화한 경우 복원 전에 프라이머리 Ops Manager 에서 다시 활성화합니다. 단계는 Ops Manager 백업하도록 보조 Ops Manager 구성을 참조하세요.
세컨더리 Ops Manager 완료된 스냅샷 과 데이터베이스 백업 에 대한 지속적인 특정 시점 복구 창 있는지 확인합니다.
원래 프라이머리 Ops Manager 설치의
gen.key파일 포함하여 복구에 필요한 호스트별 상태 보존했는지 확인합니다.
호스트별 상태 유지
전체 프라이머리 Ops Manager 복구에는 애플리케이션 데이터베이스 이상이 필요합니다. 세컨더리 Ops Manager 백업하는 애플리케이션 데이터베이스 외에도 각 호스팅하다 에서 다음 상태 유지합니다.
item | 위치 | 설명 |
|---|---|---|
암호화 키 |
| 애플리케이션 데이터베이스 콘텐츠를 암호화합니다. 원래 설치에 사용된 키와 일치해야 하며, 그렇지 않으면 프라이머리 Ops Manager 스타트업 시 복원된 애플리케이션 데이터베이스 해독할 수 없습니다. |
Ops Manager 구성 |
| 데이터베이스 URI, 블록 저장소 구성, 라이선스 키 및 TLS 인증서를 저장합니다. 이 옵션이 없으면 프라이머리 Ops Manager 직접 재구성해야 합니다. |
에이전트 구성 |
|
|
중요
gen.key 파일 누락되었거나 복원된 애플리케이션 데이터베이스 일치하지 않는 경우, 프라이머리 Ops Manager gen.key 이(가) 이 Ops Manager 설치에 이미 사용된 키와 일치하지 않는다는 오류와 함께 스타트업 실행 전 검사에 실패합니다. 애플리케이션 데이터베이스 데이터와 함께 재해 복구 백업 에 gen.key 을(를) 보관합니다.
프라이머리 Ops Manager 복원
데이터베이스 백업 복원
세컨더리 Ops Manager 에서 프라이머리 Ops Manager의 애플리케이션 데이터베이스 선택한 점 으로 복원 .
Continuous Backup를 클릭한 다음 애플리케이션 데이터베이스 복제본 세트 선택합니다.
메뉴를 클릭한 다음 Restore 을 클릭합니다.
Point in Time를 선택한 다음 대상 날짜와 시간을 입력합니다.
Choose Cluster to Restore to를 클릭하고 애플리케이션 데이터베이스 복제본 세트 호스트를 선택한 다음 Restore을 클릭합니다.
세컨더리 Ops Manager의 MongoDB Agent 애플리케이션 데이터베이스 프로세스를 중지하고, 데이터를 복원된 스냅샷 으로 교체하고, 대상 시간까지 oplog 재생하고, 프로세스를 다시 시작합니다.
경고
세컨더리 Ops Manager 스냅샷 및 oplog 메타데이터 저장소도 백업하는 경우, 프라이머리 Ops Manager 시작하기 전에 애플리케이션 데이터베이스 와 동일한 점 또는 약간 늦은 점 으로 복원 . 메타데이터 저장소를 이전 점 으로 복원하면 프라이머리 Ops Manager HTTP 409 (' 스냅샷 차단 누락')을 사용하여 영향을 받는 복원 작업을 거부합니다.
애플리케이션 데이터베이스 만 복원 경우 세컨더리 Ops Manager 메타데이터 저장소를 변경하지 않습니다. 이는 정상 작동 시에는 안전하지만 프라이머리 Ops Manager 복원 점 사이에 생성한 백업 스냅샷과 현재는 사용하지 못할 수 있습니다.
프라이머리 Ops Manager 시작
프라이머리 Ops Manager 시작합니다. 프라이머리 Ops Manager 복원된 애플리케이션 데이터베이스 에 연결하여 복원된 상태 읽고 복구를 시작합니다. 자세한 학습 은 Ops Manager 애플리케이션 시작 및 중지를 참조하세요.
복원 모드 및 조정
애플리케이션 데이터베이스 복원 하고 프라이머리 Ops Manager 시작하면 프라이머리 Ops Manager 각 MongoDB Agent의 구성 버전을 복원된 구성 버전과 비교합니다. 에이전트 이후 버전을 보고하면 프라이머리 Ops Manager 해당 프로젝트 의 복원 모드로 전환되고 구성을 자동으로 조정합니다.
프라이머리 Ops Manager 프로젝트 를 격리합니다. 복원 모드 배너를 표시하고, 에이전트 폴링에 대해 변경되지 않은 응답을 반환하며,조정이 완료될 때까지 사용자 인터페이스 및 API 의 배포서버변경 사항을 차단합니다.
프라이머리 Ops Manager 각 에이전트 로부터 구성 버전을 수집하고, 최신 구성을 가진 에이전트 선택하고, 해당 구성을 애플리케이션 데이터베이스 에 신뢰할 수 있는 구성으로 씁니다.
프라이머리 Ops Manager 프로젝트 의 복원 모드를 종료하고 정상 작동을 재개합니다. 백업이 자동으로 다시 시작됩니다.
이러한 조정은 분할 브레인 시나리오를 방지합니다. 에이전트 새 구성을 받기 전에 모든 에이전트를 신뢰할 수 있는 단일 구성으로 수렴합니다.
애플리케이션 데이터베이스 이전 점 으로 롤백하면 복원된 구성에는 복원 점 이후에 수행한 배포서버 변경 사항이 더 이상 포함되지 않습니다. 조정이 없으면 에이전트는 이전 구성을 수신하고 구성이 더 이상 참조하지 않는 프로세스를 중지합니다. 영향 배포서버 변경 사항에 따라 달라집니다.
배포 변경 | 조정 없는 위험 |
|---|---|
새 복제본 세트 멤버 | 데이터는 다른 멤버에 존재하므로 데이터가 손실되지 않습니다. |
청크가 마이그레이션된 새 샤드 | 마이그레이션된 청크는 새 샤드 에만 존재합니다. 이를 중지하면 해당 데이터에 연결할 수 없게 되어 데이터가 손실됩니다. |
새 프로세스 버전 | 롤백된 바이너리 버전에서는 프로세스 실행 수 없으므로 운영 드리프트가 발생합니다. |
새 인덱스 | 인덱스 쿼리는 Ops Manager 인덱스 다시 빌드할 때까지 성능이 저하됩니다. |
조정은 이러한 결과를 방지합니다. 프라이머리 Ops Manager 모든 에이전트를 최신 구성으로 수렴하고 복원 모드를 종료하기 전에 온디맨드 스냅샷 대기열에 추가하여 일관된 백업 점 제공합니다.
복원된 Ops Manager 유효성 검사
복원된 프라이머리 Ops Manager 정상인지 확인합니다.
MongoDB Agent가 다시 연결되고 정상으로 보고되는지 확인합니다.
managed 형 배포서버에 대한 자동화, 백업 및 모니터링 다시 시작되는지 확인합니다.
프라이머리 Ops Manager 복원 모드를 종료하는지 확인합니다. 복원 모드 상태를 확인하려면
GET역할 있는 사용자로 다음 엔드포인트에 요청 보냅니다. 응답에는 프로젝트 의 현재 상태, 트리거하다 이유, 타임스탬프가Project Read Only표시됩니다.GET /api/public/v1.0/groups/{PROJECT-ID}/restorationMode
중단된 조정에서 복구
복원 모드에 있는 동안 프라이머리 Ops Manager 다시 시작되면 다음 MongoDB Agent 폴링에서 조정을 다시 트리거합니다. 재시작 사례에 대해서는 조치 취할 필요가 없습니다.
예시 상담원에게 연결할 수 없기 때문에 조정이 완료되지 않을 수 있습니다. 이 경우 역할 있는 사용자로 다음 API Project Owner 엔드포인트 중 하나를 사용합니다.
조정을 다시 시도하려면 다음 엔드포인트로
POST요청 보냅니다. 재시도는 조정 실패 카운터를 재설정하고 복원 모드를 종료하지 않고 조정을 다시 실행합니다.POST /api/public/v1.0/groups/{PROJECT-ID}/restorationMode/retry 프라이머리 Ops Manager 복원 모드를 종료하고 복원된 구성을 수락하도록 강제하려면 다음 엔드포인트로
DELETE요청 보냅니다.DELETE /api/public/v1.0/groups/{PROJECT-ID}/restorationMode
경고
프라이머리 Ops Manager 강제로 복원 모드를 종료하면 이후 에이전트 구성을 조정하지 않고 복원된 구성을 수락합니다. 조정을 완료할 수 없는 경우에만 이 엔드포인트를 사용하세요. 강제 종료 후 프라이머리 Ops Manager 복원된 구성을 프로젝트 의 모든 에이전트에게 제공하며 모든 에이전트 수렴할 때까지 복원 모드로 다시 들어가지 않습니다.
복원된 Ops Manager 로 전환
이 패턴 프라이머리 Ops Manager 제자리에 복원합니다. 프라이머리 Ops Manager 대체하기 위해 세컨더리 Ops Manager 승격시키지는 않습니다.
복원된 프라이머리 Ops Manager 유효성을 검사한 후 전환을 완료합니다.
복원된 프라이머리 Ops Manager 점
URL to Access Ops Manager도록 설정과 DNS 레코드를 업데이트합니다.MongoDB Agent가 복원된 프라이머리 Ops Manager 에 연결되어 있는지 확인합니다. 에이전트는 구성의
mmsGroupId및mmsApiKey가 복원된 프로젝트 기록과 일치하면 재등록 없이 다시 연결합니다.
운영 지침
시간이 지남에 따라 이 패턴 작동하고 검증하려면 다음 방법을 사용하세요.
백업 및 복원 경로 테스트
테스트되지 않은 복원 운영상의 위험이 있습니다. 이 백업 및 복원 경로를 정기적으로 테스트합니다. 다음 런북을 선택 지침 아닌 필수 실습으로 취급하세요.
예정 에 따라 테스트 복원 수행합니다. 데이터베이스 백업 샌드박스 Ops Manager 로 복원하고 시작되고 조정되는지 확인합니다.
스냅샷이 예정 에 따라 표시되고 특정 시점 복구 창 연속적으로 유지되는지 확인합니다.
프라이머리 Ops Manager 및 세컨더리 Ops Manager 로그에서 백업 및 복원 오류를 검토합니다.
세컨더리 Ops Manager 모니터링
세컨더리 Ops Manager 와 백업 데이터베이스 백업 모니터링합니다.
Ops Manager 백업 경고를 사용하여 데이터베이스 백업 의 스냅샷이 누락되거나 실패했는지 확인합니다.
특정 시점 복구 창 연속적으로 유지되고 계속 진행되는지 확인합니다.
세컨더리 Ops Manager의 애플리케이션 데이터베이스 및 백업 디먼 의 상태를 모니터링합니다.
실패 시나리오
다음 표에서는 일반적인 장애 시나리오에서 이 패턴 어떻게 작동하는지 설명합니다.
Scenario | 영향 | 복구 |
|---|---|---|
보조 Ops Manager 일시적으로 사용할 수 없음 | 새 백업 및 복원이 일시 중지됩니다. 프라이머리 Ops Manager 와 모든 managed 형 에이전트는 계속 실행. | 세컨더리 Ops Manager 복원합니다. 백업 에이전트가 자동으로 다시 시작됩니다. |
복원 후 보조 Ops Manager 실패 | 없음. 애플리케이션 데이터베이스 복원 하면 프라이머리 Ops Manager 복원 모드로 전환되고 세컨더리 Ops Manager 없이 조정됩니다. | 조치 필요하지 않습니다. |
두 Ops Manager 인스턴스 모두 손실 | 프라이머리 Ops Manager의 애플리케이션 데이터베이스 에 대한 특정 시점 복구가 손실됩니다. | 세컨더리 Ops Manager 다시 빌드하고 애플리케이션 데이터베이스 다시 가져오거나, 프라이머리 Ops Manager 다시 빌드하고 클러스터를 수동으로 다시 가져옵니다. |
성능, 스토리지 및 비용 고려 사항
전용 세컨더리 Ops Manager 실행 때는 다음 사항을 고려하세요.
세컨더리 Ops Manager 크기를 프로덕션 프라이머리 Ops Manager 보다 실질적으로 작게 조정합니다. 백업 및 복원 위해 프라이머리 Ops Manager의 데이터베이스 백업 만 관리하며, MongoDB 클러스터는 관리 하지 않습니다.
스냅샷 예정 및 보존 정책을 기반으로 데이터베이스 백업 의 스냅샷 저장 용량 계획합니다.
전용 세컨더리 Ops Manager 실행 데 드는 예비 인프라와 운영 비용 고려하세요.