넷플릭스와 비교해 보는 아쉬운 카카오 장애
올여름 즈음에 모의 장애 훈련을 해본 적이 있습니다. 우아한형제들 에서는 모의 장애 훈련을 하는데요. 모의 장애 훈련 이란, 누구나 장애를 미리 겪고 경험치를 쌓아, 노련하게 대응할 수 있게 하는 취지로, 베타 환경에서 설계자가 임의로 장애를 발생시키고, 장애 대응 절차에 따라서 복구와 전파를 체험합니다. 장애를 미리 경험하고 장애가 발생했을 시 빠른 대처로 더 큰 등급의 장애로 번지기 전에 조치할 수 있는 경험을 쌓을 수 있습니다. 문서만 읽고, 이해하는 것과 실제로 경험하는 것은 차이가 크니까요. 넷플릭스는 카오스 몽키라는 시스템이 있습니다. 이 재미있는 이름은 원숭이가 몽둥이를 들고 데이터 센터 (혹은 클라우드)에 들어와 난동을 부려(인스턴스 파괴 및 케이블 절단) 서버가 중단되더라도 서비스는 계속 유지되어야 한다는 개념에서 유래되었습니다. 따라서 이 카오스 몽키는 AWS 클러스터를 중단 시켜, 가장 취약한 부분이 어디인지를 파악하고, 이에 대해서 대처합니다. 그리고 이를 자동 복구 메커니즘을 구축하여, 해당 문제가 발생 시 자동으로 트리거 합니다. 실제로 특정 지역(US-EAST-1)에서 AWS 서비스 가 중단된 적이 있었는데 이전에 시행했던 AWS 가용성 영역 중단 시뮬레이션을 통해 트래픽 FailOver(무정지 시스템 구축) 을 원활하게 처리할 수 있었다고 합니다. 그런데 재미있는 것은 넷플릭스 역시, 2013년쯤, 꽤 큰 서비스 불가 문제를 겪고 난 이후 카오스 몽키를 도입했다는 사실입니다. 당시에도 아마존의 책임이 없지는 않았지만, 문제가 발생할 수 있는 경험을 양분 삼아 크고 작은 사용 불가 상황을 적극적으로 대응하는 전략을 세운 겁니다. 카카오 재발 방지 위원회에서도, ' 카카오의 재발 방지뿐 아니라 대한민국 IT 업계에 이러한 불행이 재발하지 않도록 사례를 투명하게 공유하는 역할까지 하고자 한다. 업계 전체의 재발을 방지하려면 스스로의 치부를 드러내야 할 수도 있지만, 이것도 카카오의 의무'라고 밝혔습니다. 이번 일을 반면 교사 삼아 카카오뿐 아니라, 대한민국 IT 업계가 장애 문제에 있어서 한 단계 더 도약할 수 있는 계기가 되기를 희망해 봅니다.