Atlas Well-Architected Framework의 신뢰성 핵심 요소는 다운타임을 최소화하고 데이터 손실을 방지하는 기능과 전략을 포함합니다. 신뢰성 있는 워크로드는 장애 발생 시 이를 인지하며, 가용성 복구 및 데이터 손실 회수를 위해 효율적이고 자동화된 조치를 취할 수 있습니다.
신뢰성 확보를 위한 기반
신뢰할 수 있고 탄력적인 Atlas 배포를 설계하기 위한 두 가지 기반이 있습니다.
예상되는 인프라 중단 상황에서도 높은 가용성을 보장할 수 있도록 구성 옵션을 포함한 배포 아키텍처를 설계합니다.
확립된 RTO 및 RPO내에서 재해 상황 복구를 위한 권장사항과 절차를 정의하는 재해 복구 계획을 수립하세요. 이는 배포의 가용성 전략을 보완하고 데이터 손실 또는 손상 발생 시 복구 옵션을 제공하기 위한 백업 정책 설정이 포함될 수 있습니다.
정의
복구 시점 목표(RPO)는 장애 발생 후 애플리케이션이 복구되어 다시 트래픽을 처리하기 전까지 허용할 수 있는 최대 다운타임입니다.
복구 시점 목표(RPO) 는 서비스 중단 시 허용 가능한 최대 데이터 손실량을 의미하며, 시간 단위로 측정됩니다.
가용성은 시스템이 필요할 때 얼마나 안정적으로 접근 가능하고 정상 작동하는지를 나타내는 지표입니다. 이는 일반적으로 일정 기간 동안 시스템이 사용 가능했던 비율을 퍼센트로 표현합니다. 예를 들어 가용성의 표준으로 자주 언급되는 99.999%(또는 '파이브 나인')는 연간 약 5분 25초의 잠재적 다운타임에 해당합니다.
고가용성은 개별 구성 요소의 장애 발생 시에도 시스템이 계속 접근 가능하도록 유지하는 기능을 말합니다. 고가용성을 위해 설계된 배포 아키텍처는 일반적으로 중복성과 페일오버 메커니즘을 활용하여 내결함성을 확보하며, 이는 장애가 감지되면 자동으로 정상 작동 중인 구성 요소로 전환할 수 있음을 의미합니다.
재해 복구는 재해 상황에서 활용할 수 있는 워크로드의 별도 사본을 생성하고 관리하는 전략을 의미합니다. 포괄적인 재해 복구 계획은 재해 상황 발생 후 지정된 RTO 내에 시스템 운영을 복구하고, 정해진 RPO 내의 타임스탬프로 데이터를 복구할 수 있는 절차를 정의합니다.
Atlas 안정성 기능 개요
비용 영향을 고려하여 안정성을 최적화하기 위해서는 적합한 고가용성 아키텍처, 재해 복구 계획 및 백업 정책을 배포에 적절하게 조합하는 것이 중요합니다.
MongoDB의 기본 배포 아키텍처는 고가용성을 위해 설계되었습니다. Atlas는 각 클러스터를 복제본 세트의 일부로 배포하며, 최소 3개의 데이터베이스 인스턴스(노드라고도 함)가 서로 다른 가용 영역에 자동으로 분산됩니다. 단일 구역 장애 이벤트가 발생할 경우 인스턴스 간 페일오버는 완전히 자동화되어 데이터 손실 없이 몇 초 내에 완료됩니다. 여기에는 재시도 가능 쓰기가 활성화된 경우, 장애 시점에 진행 중이던 작업도 포함됩니다. 가장 중요한 애플리케이션의 가용성을 개선하기 위해 노드, 리전 또는 클라우드 공급자를 추가하여 구역, 리전 또는 제공자 장애를 견딜 수 있도록 배포서버를 확장할 수 있습니다.
백업 또한 시스템 신뢰성을 위해 매우 중요합니다. 고가용성을 위해 설계된 시스템은 데이터 손실 방지를 위해 백업에 의존하는 정도가 낮지만 인프라 장애 이외의 재해 시나리오, 예를 들어 사이버 공격이나 코드 오류와 같은 인적 위협으로 인한 데이터 손실이나 손상에 대해서는 백업이 여전히 최고의 보호 수단입니다. 강력한 재해 복구 계획에는 산출된 RPO 및 RTO를 충족하기 위해 백업 정책이 필요한지 여부를 결정하는 과정이 포함됩니다.
Atlas의 신뢰성을 위한 기능 및 전략에 대해 더 알아보려면 다음 Atlas Architecture Center 리소스를 활용하세요.
고가용성
가용성 요구 사항을 충족하는 클러스터 구성을 생성하고 재해로부터 빠르게 복구할 수 있습니다.
백업
Atlas에서 데이터베이스 백업 옵션을 구성하고 클러스터 전체 Atlas 스냅샷을 통해 RTO 및 RPO 요구 사항을 충족하는 권장사항을 받아보세요.
재해 복구
운영 중단, 프로덕션 데이터 삭제 등이 발생한 경우 취해야 할 조치가 포함된 DR 계획을 세웁니다.