크래프톤 펍지의 5단계 장애 대응 프로세스
대규모 라이브 게임 서비스인 ‘PUBG: BATTLEGROUNDS’를 운영하는 크래프톤 펍지 스튜디오는 게임 서비스 성능이 저하되거나 서비스 기능이 제대로 작동하지 않는 문제가 생겼을 때, ▲인지 ▲선언 ▲전파 ▲대응 ▲사후대응으로 이뤄진 5단계 장애 대응 프로세스를 가동한다.
인지(Awareness) 단계에서는 API 서비스 지연(Latency)이나 에러율(Error rate)을 나타내는 메트릭(Metrics), 에러 로그(Logs) 같은 텔레메트리 정보와 모니터링 시스템에서 전송된 알람 등을 바탕으로 서비스 이상을 발견해 장애 대응 프로세스를 가동한다. 장애를 인지한 온콜(On-call) 엔지니어는 명시적으로 장애를 선언하고, 모든 온콜 엔지니어들을 불러 모아 파악한 정보를 전파한다.
그 다음 전파(Communication) 단계에서는 엔지니어를 넘어 커뮤니티 매니저, 게임 서비스 운영자 등을 대상으로 현재 발생하는 서비스 문제와 원인, 이용자들에게 미치는 영향과 정도 등을 알린다. 이 때에는 비엔지니어들이 이해할 수 있는 언어로 명확하게 전달해야 한다. 대응(Action) 단계는 장애를 완화하고 해결하기 위한 각종 조치를 실시한다. 문제의 원인 파악보다 이용자들에게 미치는 영향을 최소화하는 데 최우선 초점을 맞춰 진행하고 있다. 사후대응(Post-Mortem)은 장애가 해결된 이후 문제가 발생한 근본원인을 파악해 재발 방지 대책을 수립하는 단계다. 장애 대응 과정에서 미흡했던 점을 개선하기 위한 방안도 논의하고 있다.
장애 대응 프로세스 전 과정에서 Datadog 활용
이같은 장애 대응 프로세스의 각 단계는 Datadog 플랫폼을 기반으로 이뤄지고 있다. 클라우드 인프라, 애플리케이션 등 다양한 IT 자원 통합 모니터링 플랫폼인 Datadog Monitor를 활용해 장애 상황을 빠르게 인지, 분석한 뒤 대응을 시작한다. 통합 인시던트 관리 솔루션인 Datadog Incident에서 제공되는 ‘declare incident’ 버튼 클릭만으로 손쉽게 장애를 선언하면, 연동돼 있는 Slack에 워룸 채널이 생성된다. Datadog Incident는 메트릭, 로그, 트레이스 등 다양한 정보를 한 곳에서 실시간 확인해 발생하는 문제를 신속하게 탐지·관리할 수 있도록 지원하며, 신속한 대응을 실시할 수 있도록 자동화된 Workflow를 제공한다.
실제 장애가 선언되면 온콜 엔지니어들은 자동으로 Slack 워룸 채널에 초대돼, 정보를 공유하고 대응 조치를 실시한다. 온콜팀을 구성할 때는 Datadog Team 기능을 활용하고 있다. 온콜 대응을 위한 경고(alert) 규칙을 만드는 경우에도 Datadog Monitor를 활용하고 있다. 그리고 실질적인 대응에는 Datadog Incident와 Action을 이용한다. Datadog Workflow를 활용해 서비스 재시작, 게이트웨이 쓰로틀링, 서비스 강제 스케일아웃, 대체 서비스 투입과 같은 긴급 조치를 실시할 수 있다. 장애가 해결된 후에는 Incident의 타임라인 기록을 바탕으로 수행하는 한편, Datadog Workflow를 활용해 포스트모템 초안을 만들어 장애 원인과 재발 방지책을 마련하고 있다.
장애 대응 프로세스 정립 핵심 전략
- Critical Monitor 정의: 장애가 발생할 때 온콜 경고를 보내기 위해서는 먼저 크리티컬 모니터(Critical Monitor)를 정의해야 한다. 크래프톤 펍지 스튜디오는 게임 이용자들에게 영향이 미치는 경우만 Critical Monitor로 정의해, 알림을 전송하는 전용 Slack 채널인 Datadog-critical을 운영하고 있다. 온콜 엔지니어는 항상 이 채널에 올라오는 모든 메시지 알람을 켜놓아야 한다. 알람이 발생되면 즉시 대응 절차를 시작한다. 자칫 지나치게 많은 알람이 울릴 경우 엔지니어들 피로도가 증가하기 때문에 오탐지로 인한 잘못된 알람(False Alarm)을 최소화해야 한다. 이를 위해 사후대응 단계의 포스트모템 미팅에서 주기적으로 모니터를 정리한다.
- Datadog Incident 기반의 일원화된 대응체계 구축: Datadog Incident는 장애 선언시 Slack에 독립적인 워룸을 자동 생성해 Datadog Team과 온콜 엔지니어를 자동 초대한다. Slack 채널에 기록된 모든 메시지는 Datadog Incident 타임라인에 자동 등록된다. 장애 관련 모든 컨텍스트를 모아 비효율적인 분산 대응체계를 막을 수 있다. 이같은 기능은 사후 감사에도 손쉽게 활용한다. Datadog Incident는 5가지 레벨로 구성된 장애 심각도(Severity)와 장애 상태(Status)를 3가지(Active, Stable, Resolved) 속성으로 정의해 진행 상황을 측정 가능한 방식으로 명확히 보여주는 메타 메트릭을 생성한다. 이같은 속성들을 기반으로 탐지까지 걸린 평균시간(MTTD), 복구까지 걸린 평균시간(MTTR) 같은 핵심 인시던트 메트릭을 자동 생성해 지속적인 개선 지표로 활용할 수 있게 한다. 장애 선언시에 Workflow를 트리거해 자동, 반자동으로 즉각적인 조치를 수행할 수 있다. 다양하고 복잡한 메트릭 정보를 취합해 자동 분석하는 Workflow를 구성, 운영하고 있다.
- Incident와 AI를 활용한 포스트모템 자동화: Datadog Incident는 장애 상태를 해결(Resolved)로 변경하면 ‘generate postmortem’ 버튼을 사용해 제공되는 템플릿을 활용해 포스트모템을 생성해준다. 또 인공지능(AI)으로 포스트모템을 자동 생성할 수 있는 기능도 지원한다. 크래프톤 펍지 스튜디오는 Datadog Workflow와 OpenAI API를 연동해 Incident 타임라인에 기록된 내용을 바탕으로 AI가 포스트모템 초안을 자동으로 생성하도록 해 문서화 부담을 줄이고 있다. AI가 우선 정리하고 나중에 사람이 직접 검토하는 방식을 운영한다.
Datadog Incident 도입 전 장애 대응 한계
크래프톤 펍지 스튜디오는 Datadog을 오랜기간 사용해 왔다. Datadog Incident를 도입하기 전에도 메트릭 수집과 모니터링은 잘 이뤄져왔으나, 장애가 발생했을 때 대응 처리 프로세스가 정립되지 않아 수동 대응과 여러 툴을 활용한 분산 대응이 이뤄졌다.
예를 들어 이전에는 장애가 발생하면 온콜 담당자가 Slack에 수동으로 워룸을 만들고 관련 담당자들을 일일이 초대해야 했다. Slack 스레드 댓글을 기반으로 정보를 공유해 중요 메시지 검색과 확인이 어려워 비효율적인 커뮤니케이션이 이뤄지기도 했다. 네트워크 팀과 미들웨어 팀 등 여러 팀이 하나의 장애에 분산 대응하는 불필요한 중복 작업도 발생했다. 이같은 문제를 해결하기 위해 자체적으로 인시던트와 케이스 관리 도구 개발을 시도했으나 성공적인 결과를 내지는 못했다. 아울러 장애 대응 체계가 명확히 정립되지 않아 발생하는 오탐지로 인한 잦은 알람은 엔지니어의 피로도를 증가시키는 한편, 심각한 경고(Critical Alert)에 대한 신뢰도를 떨어뜨리는 결과를 낳기도 했다.
뿐만 아니라 장애 인지부터 해결하는 과정이 수동으로 기록되면서, 실제로 문제를 탐지하는데 걸린 시간이나 장애를 인지한 시점부터 복구, 해결하기까지 걸린 시간(MTTD/MTTR)을 객관적으로 정확하게 측정하거나 분석할 수 없다는 한계도 존재했다.
통합 장애 대응 프로세스 구축 효과, MTTD 3.89분 실현
크래프톤 펍지 스튜디오는 Datadog Monitor, Incident, Workflow 기능을 활용해 장애 대응 프로세스 전체를 Datadog 플랫폼으로 통합했다. 이같은 통합 시스템 구축으로 장애 대응 프로세스를 명확하게 정립하고, 모든 컨텍스트를 Datadog 플랫폼과 Slack에 집중시켜 불필요한 커뮤니케이션과 중복 작업을 제거해 효율성을 크게 높였다. 아울러 Workflow 기반 자동화까지 더해 장애 대응 속도를 획기적으로 향상시켜, 올해 MTTD 3.89분을 달성하는 성과를 거뒀다. 이전 대비 MTTD가 크게 향상된 것은 물론 경고 알람에 대한 높은 신뢰성을 확보했다는 평가다.
“Datadog Monitor, Incident, Workflow를 활용해 장애 대응 프로세스 전체를 Datadog 플랫폼으로 통합, 일원화했습니다. 그 결과, 오탐을 크게 줄여 엔지니어 피로도를 감소시켰으며, 알람 신뢰도가 향상돼 MTTD를 3.9분으로 크게 단축하는 결과를 얻었습니다.”
크래프톤 펍지 스튜디오는 앞으로도 Datadog 플랫폼을 기반으로 구축한 장애 대응 프로세스를 지속적으로 개선해나갈 계획이다. 향후 Datadog On-Call과 Bits AI Postmortem 생성 기능 도입을 고려하고 있다. 온콜 팀 복수 인원 로테이션 지원, AI 기반 포스트모템 한글 지원, 특정 프롬프트 지원 등이 관건이다.