PallyCon 재해 복구(Disaster Recovery, DR) 시스템
본 문서는 클라우드 플랫폼의 대규모 장애에 자동으로 대처하고 피해를 최소화하기 위하여 PallyCon 클라우드 서비스에 멀티 리전 DR 시스템을 적용한 사례를 소개합니다.
PallyCon DR 시스템 소개
PallyCon DR 시스템은 평상 시에 서울 리전을 메인으로 서비스하며, 서울 리전의 장애 발생 시 모니터링(Health Check) 기능을 통해 백업 리전인 도쿄 리전으로 서비스를 자동 전환 시킵니다.
Health Check 기능
주기 | 30초 (최소 10초 가능) |
지역 | 서울, 도쿄 |
방법 | DRM 라이선스 요청 URL 등 특정 API를 통해 해당 리전의 데이터베이스 접속 상태까지 정상인지를 점검 |
Failover 조건 | 3분간 지속적으로 서비스 장애가 감지될 경우, 도쿄 리전으로 전환됨. 이후 서울 리전의 장애가 복구되어 3분간 지속적으로 서비스 정상 상태가 감지될 경우, 다시 서울 리전으로 복귀 |
Alarming 기능
Health Check 결과는 Amazon CloudWatch에 저장되며, CloudWatch의 SNS Alarm 기능과 연동하여 관리자에게 재해 복구 처리에 대한 알림 메일이 발송됩니다.
DR 운영 환경 서버 구성 및 제약
PallyCon 서비스에서 사용하는 데이터베이스는 실시간 Cross Region Replica 복제가 이루어지며, 장애 발생으로 도쿄 리전에서 서비스하는 동안은 Read Only 상태로 기존 정보 조회 및 라이선스 발급이 가능하여 고객사의 서비스에 장애로 인한 영향을 최소화할 수 있습니다.
다만 지역간 데이터베이스 Multi-Master 처리가 불가하여 장애 발생 중에는 신규 콘텐츠 패키징 등의 데이터 추가 작업은 수행할 수 없습니다.(장애 복구 이후에 가능)
도쿄 리전의 백업 시스템은 기본적으로 주요 서버들을 1대 씩 최소 인스턴스로 운영하나, 트래픽에 따라서 오토스케일링을 통해 자동으로 확장 가능합니다.
DR Infra 자동 구성 및 배포
AWS Cloudformation 혹은 Terraform을 이용하여 반복적인 DR Infra 구성 및 배포를 빠르고, 정확하게 처리합니다.
AMI 등 변경된 자원에 대한 비동기 복사가 되며, AMI 변경에 대한 launch configuration 재구성, Auto Scaling 배포 등과 같은 반복적인 DR Infra 자동 구성 및 배포 작업도 처리됩니다.
결론
각종 온라인 서비스에 AWS와 같은 클라우드 플랫폼의 사용이 보편화되고, 기존의 온프레미스 솔루션에서 클라우드 SaaS(Solution-as-a-Service)로 전환이 가속화되고 있습니다. 자사의 서비스 뿐만 아니라 해당 서비스에서 이용하는 SaaS 솔루션도 재해 복구 시스템이 적용되어 있는지 확인해야 합니다.
PallyCon 멀티 리전 DR 시스템은 클라우드 플랫폼의 특정 지역 전체에 걸쳐 발생하는 대규모 장애 발생 시에도 약 3분 이내에 정상적인 서비스를 제공합니다. 이에 따라 장애로 인한 고객사의 비즈니스 연속성이나 재정에 대한 피해를 최소화할 수 있습니다.