[디지털데일리 이나연 기자] 지난 10월15일 판교 SK C&C 데이터센터 화재로 인해 발생한 대규모 서비스 장애와 관련해, 카카오는 모호하게 해석될 수 있는 ‘이중화’ 개념을 적극적으로 해석하겠다고 약속했다. 인프라 하드웨어 설비부터 서비스 애플리케이션에 이르는 시스템 전반에 철저한 대비책을 마련하고 실행하겠다는 목표도 내놓았다.
7일 이채영 카카오 비상대책위원회 재발방지대책소위원회 부위원장<사진>은 개발자 콘퍼런스 ‘이프카카오데브2022(if (kakao) dev 2022)’에서 서비스 장애 복구가 늦어진 주요 원인과 향후 재발방지를 위한 기술적 개선사항들을 공유했다.
먼저 이 부위원장은 데이터 부문에 있어 “앞으로 모든 형태 데이터를 일대일 복제를 넘어 데이터센터 간 이중화 이상의 다중 복제 구조로 구성하고, 장애 발생 때 장애 복구 조치를 즉각 실행할 수 있는 환경을 구축하겠다”고 밝혔다.
카카오는 ▲마이에스큐엘MySQL, 포스트그레스큐엘(PostgreSQL), 오라클(Oracle) 등 관계형 데이터베이스(RDBMS)군 ▲몽고DB(MongoDB)를 포함한 노에스큐엘(NoSQL) 군 ▲ 분산 빅데이터 스토어인 에이치베이스(HBase), 드루이드(Druid), 하둡(Hadoop) 클러스터 군 등 크게 세 가지 형태로 데이터를 관리하고 있다.
이 중 RDBMS와 NoSQL은 데이터센터 3곳에 걸쳐 다중화돼있어 데이터 손실 없이 복구가 이뤄졌다. 에이치베이스는 대부분 주요 클러스터에 대한 이중화 구성이 이미 완료돼 서비스 제공에 문제가 없었던 것으로 나타났다. 앞으로 드루이드는 클러스터 다중화 작업을, 하둡은 클러스터 다중화와 더불어 데이터센터 간 노드 분산을 확대 조치할 예정이다.
이번 장애 사태 초반에 개발자 서비스 복구가 지연된 이유는 운영관리 도구 일부가 이중화돼있지 않았기 때문이다. 해당 도구는 사내 엔지니어들이 서비스를 운영하고 관리하기 위해 사용하는 도구로, 사내 계정과 인증, 소스 관리나 앱 배포 도구, 위키, 지라 같은 협업 도구 등이 있다.
특히나 앱 배포도구 경우 앱 빌드와 배포에 꼭 필요한 시스템임에도 해당 시스템 가용성에 대한 인식이 부족했던 것이 문제로 꼽힌다. 데이터센터 간 이중화가 완전하지 않아 장애 상황 초기 조치에 문제가 있었다는 것이다. 이에 카카오는 데이터센터 간 이중화를 완료했으며, 빠른 시일 내 삼중화에 나선다.
카카오는 자체 클라우드와 플랫폼 도구를 클러스터 형태로 운영한다. 이러한 플랫폼 도구가 데이터센터 간 이중화되지 않은 부분이 있었던 점, 나아가 데이터센터 전면 장애를 대비한 구조로 구성하지 않은 점 역시 사태를 키웠다. 앞으로 카카오는 모든 클러스터를 데이터센터 단위에서 삼중화해 데이터센터 전면적인 장애에도 서비스 수준을 유지할 수 있는 구조로 운영할 계획이다.
또한 각 도구 사용 목적, 서비스 영향도와 클러스터별 중요도를 정기적으로 파악하는 프로세스를 도입하고, 서버 장애 시 영향을 받는 대상에 대한 공지도 자동화한다.
이 부위원장은 다음 첫 화면과 카카오톡 서버, 카카오 로그인 등 카카오 서비스 문제와 해결 방안을 언급했다. 다음 첫 화면은 장애 상황 초기에 운영관리 도구가 대부분 동작하지 않는 상황이라 원인 파악에 많은 시간이 소요됐다. 카카오톡 서버와 카카오 로그인 서비스는 서비스 간 의존성 문제, 서버의 불완전한 페일오버 구성 등에 문제가 있었다.
이 부위원장은 “이 외에도 트래픽 쏠림에 따른 연쇄 장애 발생 가능성과 기존 장애 대응 시나리오 미비점을 이번 장애를 통해 알게 됐다”고 부연했다.
아울러, 이 부위원장은 카카오 인프라 하드웨어 설비에서 서비스 애플리케이션에 이르는 전체 시스템 레이어에 다중화를 설계하고 구축할 것을 선언했다. 데이터 범위도 사용자 데이터에 국한해 생각하지 않고, 서버 각각 구성정보 역시 다중화해 문제 상황 발생 시 빠른 복구가 가능한 구조를 만들겠다는 의도다 .서비스 간 우선순위와 중요도, 의존성 정보와 복구 우선순위도 관리한다.
이 부위원장은 “서비스 간 타이트한 연동은 최소화하되, 연관 관계는 가시화해 카카오 구성원 모두가 체계적으로 이슈를 파악하고 해결할 수 있도록 하겠다”며 “이 작업은 상설기구를 통해 이슈를 파악하고 공유하는 시간을 정기적으로 가질 것”이라고 말했다. 카카오 주요 서비스가 사회 전반에 미치는 영향이 큰 만큼, 장애 대비 훈련 역시 확대 강화할 방침이다.
이어 “카카오 서비스의 장애로 인해 많은 분이 일상과 업무 등에 어려움을 겪으신 점에 대해 안타깝게 생각하고 죄송한 마음”이라며 “아직은 부족하지만 장애가 어떻게 발생했는지, 그리고 이러한 일이 다시 일어나지 않도록 하기 위해 어떤 대비가 필요한지 투명하게 공개하기로 했다. 이러한 대비 방안은 앞으로도 끊임없이 보강하겠다”고 전했다.