Databases for MongoDB에 대한 고가용성 및 재해 복구 이해

고가용성서비스 또는 작업 부하가 장애를 견디고 사전 정의된 서비스 수준에 따라 처리 기능을 계속 제공할 수 있는 능력. 서비스의 경우, 가용성은 서비스 수준 협약에 정의되어 있습니다. 가용성에는 유지보수, 고장, 재해 등 계획된 이벤트와 계획되지 않은 이벤트가 모두 포함됩니다. (HA)은 예기치 않은 장애가 발생하더라도 서비스가 계속 작동하고 액세스할 수 있는 기능입니다. 재해 복구는서비스 중단과 같은 드물지만 심각한 사고와 광범위한 장애로부터 복구할 수 있는 서비스 또는 작업량 능력. 여기에는 전체 지역에 영향을 미치는 물리적 재해, 데이터베이스 손상, 또는 작업 부하에 기여하는 서비스의 손실이 포함됩니다. 이 영향은 고가용성 설계가 처리할 수 있는 능력을 초과합니다. 서비스 인스턴스를 작동 상태로 복구하는 프로세스입니다.

Databases for MongoDB 는 표준 및 엔터프라이즈 요금제로 정의된 서비스 수준 목표(SLO)를 충족하는 지역 서비스입니다. 자세한 내용은 서비스 수준 계약(SLA) 을 참조하세요. 사용 가능한 IBM Cloud 지역 및 데이터 센터에 대한 자세한 내용은 Databases for MongoDB, 위치별 서비스 및 인프라 가용성을 참조하세요.

고가용성 아키텍처

아키텍처
MongoDB 고가용성 아키텍처

Databases for MongoDB 는 인프라 유지보수, 업그레이드 및 일부 장애로부터 데이터베이스와 데이터를 보호하는 복제, 장애 복구 및 고가용성 기능을 제공합니다. 배포에는 기본 멤버 1개와 보조 멤버 2개, 총 3개의 데이터 멤버가 있는 클러스터가 포함되어 있습니다. 두 개의 멤버 복제본 세트는 비동기 복제를 사용하여 최신 상태로 유지됩니다. 분산 합의 메커니즘은 클러스터 상태를 유지하고 장애 조치를 처리하는 데 사용됩니다. 기본 세트를 사용할 수 없는 경우 복제본 세트는 보조 세트를 기본 세트로 선택하고 정상 작동을 계속합니다. 이전 기본은 사용 가능한 경우 설정을 다시 결합합니다. 주 멤버와 보조 멤버는 항상 MZR의 다른 영역에 위치합니다. 영역 장애로 인해 구성원이 실패하는 경우, 살아남은 영역에 새 복제본이 생성됩니다.

고가용성 기능

Databases for MongoDB 는 다음과 같은 고가용성 기능을 지원합니다.

고가용성 기능
기능 설명
자동 페일오버 모든 클러스터에 표준으로 적용되며 영역 또는 단일 구성원 장애에 대해 복원력이 있습니다.
구성원 수 최소 3명의 멤버가 필요합니다. 기본값은 3명의 멤버로 구성된 표준 배포입니다. 3명으로 구성된 클러스터는 단일 인스턴스 또는 영역 장애에서 자동으로 복구됩니다(지연 임계값까지 데이터 손실이 발생함).
비동기 복제 보조 서버는 기본 서버의 작업을 복제하고 해당 작업을 비동기적으로 데이터 세트에 적용합니다. 보조 데이터 세트가 기본 데이터 세트를 반영하도록 하면 한 명 이상의 구성원이 장애가 발생하더라도 복제본 세트가 계속 작동할 수 있습니다.

재해 복구 아키텍처

재해 복구를 위한 일반적인 전략은 다음과 같은 새 데이터베이스를 만드는 것입니다(예: MongoDB Restore 데이터베이스). 새 데이터베이스의 콘텐츠는 재해 이전에 생성된 원본 데이터베이스의 백업일 수 있습니다. 프로덕션 데이터베이스를 사용할 수 있는 경우 Enterprise 요금제의 특정 시점 기능을 사용하여 새 데이터베이스를 만들 수 있습니다.

아키텍처
MongoDB 재해 복구 아키텍처

재해 복구 기능

Databases for MongoDB 는 다음과 같은 재해 복구 기능을 지원합니다.

재해 복구 기능
기능 설명 고려사항
백업 복원 이전에 만든 백업에서 데이터베이스를 만듭니다( Cloud Databases 백업 관리하기를 참조하세요). 복원된 데이터베이스에 대한 새 연결 문자열은 워크로드 전체에서 참조해야 합니다.
특정 시점 복원 특정 시점 복구를 사용하여 라이브 프로덕션에서 데이터베이스를 생성합니다. 이는 Enterprise 요금제에서 활성 데이터베이스를 사용할 수 있고 RPO(재해)가 지원되는 기간 내에 해당하는 경우에만 가능합니다. 프로덕션 클러스터를 사용할 수 없는 경우에는 유용하지 않습니다. 복원된 데이터베이스에 대한 새 연결 문자열은 워크로드 전체에서 참조해야 합니다.

재해 복구 계획

재해 복구 단계는 정기적으로 연습해야 합니다. 계획을 수립할 때 다음과 같은 실패 시나리오와 해결 방법을 고려하세요.

실패 시나리오 및 해결 방법
실패 분석
하드웨어 장애(단일 지점) IBM 는 영역 내 단일 하드웨어 장애 지점으로부터 복원력을 갖춘 데이터베이스를 제공하며, 별도의 구성이 필요하지 않습니다.
구역 장애 자동 장애 조치. 데이터베이스 멤버는 영역 간에 분산되어 있습니다. 세 명의 멤버를 구성하면 여러 영역 장애에 대한 복원력을 추가로 확보할 수 있습니다.
데이터 손상 백업 복원. 프로덕션 또는 소스 데이터에 복원된 데이터베이스를 사용하여 복원된 데이터베이스의 손상을 수정합니다.

특정 시점 복원. 프로덕션 또는 소스 데이터에 복원된 데이터베이스를 사용하여 복원된 데이터베이스의 손상을 수정합니다.

지역별 실패 백업 복원. 프로덕션 환경에서 복원된 데이터베이스를 사용하세요.

애플리케이션 레벨의 고가용성

네트워크 및 클라우드 서비스를 통해 통신하는 애플리케이션은 일시적 연결 실패의 영향을 받습니다. 사용자 배치 또는 IBM Cloud에 대한 연결에서 일시적인 끊김으로 인한 오류가 발생하는 경우 연결을 재시도하도록 애플리케이션을 디자인하려고 합니다.

데이터베이스에 대한 일시적 중단을 처리하고 실패한 데이터베이스 명령에 대한 오류 처리를 구현하고 일시적 중단으로부터 복구하기 위한 재시도 논리를 구현하도록 애플리케이션을 디자인해야 합니다.

몇 분 동안 데이터베이스를 사용할 수 없거나 연결이 중단되는 일은 예상되지 않습니다. 연결이 되지 않는 시간이 1분 이상 지속되는 경우 세부 정보를 포함한 지원 케이스를 열어 조사할 수 있도록 하세요.

HA 및 DR에 대한 책임

다음 정보는 HA 및 DR 계획을 수립하고 지속적으로 실천하는 데 도움이 될 수 있습니다.

백업에서 데이터베이스를 복원하거나 특정 시점 복원을 사용하는 경우 새 연결 문자열로 새 데이터베이스가 만들어집니다. 새 연결 문자열을 사용하려면 기존 워크로드와 프로세스를 조정해야 합니다. 읽기 복제본을 클러스터로 승격하는 것도 비슷한 영향을 미치지만, 워크로드의 기존 읽기 전용 부분에는 영향을 미치지 않습니다.

복구된 데이터베이스에도 재해 데이터베이스와 동일한 고객 생성 종속성이 필요할 수 있으므로 복구된 지역에 다음 및 기타 서비스가 존재하는지 확인하세요:

  • IBM® Key Protect for IBM Cloud®

데이터베이스를 삭제하면 관련 백업도 삭제된다는 점을 기억하세요. 그러나 삭제된 데이터베이스는 제한된 기간 내에 복구할 수 있습니다. 데이터베이스 복구 절차에 대한 구체적인 내용은 백업 관련 자주 묻는 질문 문서를 참조하세요.

IBM Cloud 에서 백업을 복사할 수 없으므로 추가 백업을 위해 데이터베이스별 도구를 사용하는 것이 좋습니다. 악의적인 데이터베이스 삭제에 이어 데이터베이스 복구가 필요할 수 있습니다. 데이터베이스에 대한 IAM 액세스를 주의 깊게 관리하면 이 문제에 대한 노출을 줄일 수 있습니다.

각 기능과 관련된 다음 체크리스트는 계획을 세우고 실천하는 데 도움이 될 수 있습니다.

Databases for MongoDB 사용에 대한 고객과 IBM Cloud 간의 책임 소유권에 대한 자세한 내용은 Cloud Databases 에 대한 책임 공유를 참조하세요.

최신 정보 받기: IBM 알림

고객 워크로드에 영향을 미치는 업데이트는 IBM Cloud 알림을 통해 전달됩니다. 이 서비스와 관련된 계획된 유지 관리, 공지사항 및 릴리즈 노트에 대한 최신 정보를 확인하려면 알림 및 상태 모니터링하기를 참조하세요. 또한 버전 정책을 정기적으로 검토하여 지원 종료 버전 및 날짜에 대한 최신 업데이트를 확인하세요.

추가 안내