대선기간 중 '트래픽'과 싸우던 IT 엔지니어들
[IT동아] 19대 대선이 끝났다. 대선이 끝나고 우리 기억 속에 남는 것은 후보자의 얼굴과 공약, 유세를 다니던 선거 차량 같은 것들이다. 그러나 후보들과 선거캠프, 그보다 더 뒤에, 보이는 것이 다가 아닌 곳에, 이를 뒷받침한 남모를 노력과 시스템 인프라가 있다. 선관위 홈페이지부터 국민의당 경선시스템, 그리고 이번 선거 최대의 인기 사이트였던 '문재인 1번가'까지. 그 인프라 구축과 운영을 담당했던 IT 서비스 업체인 '가비아'가 겪은 대선 그 뒷얘기를 털어보려 한다.
문재인 1번가 트래픽 폭주에 엔지니어들 '진땀'
문재인 1번가가 오픈 할 당시, 사이트가 끌게 될 엄청난 인기를 예측한 사람은 없었던 것 같다. 직접 클라우드 시스템을 구성한 고객사도 오픈 다음날 사이트가 곧바로 실시간 검색어 1위를 장식할 줄은 꿈에도 몰랐을 것이다. 문재인 1번가가 실검 1위에 등극하던 날, 그 트래픽은 여느 인기 쇼핑몰 못지 않은 수치로 상승하며 폭주를 일으켰다. 문재인 후보가 내놓은 공약들에 수십만 건이 넘는 좋아요가 붙은 것만 봐도 사이트의 인기를 실감할 수 있었다.
과부하로 인한 접속 지연이 확인되자 데이터센터 엔지니어들은 초기 고객사가 구축했던 가상 서버 대수를 6배로 확장했다. 이로써 쉽게 정상화가 되는가 싶던 순간이었다. 접속 처리를 준비하는 과정에서 데이터센터로 악성 공격을 예고하는 메일이 날아들고, 엔지니어들은 곧 엄청난 수의 공격성 트래픽과 마주하게 됐다. 이 과정에서 트래픽이 폭주하고 사이트 접속이 불가능해지고 말았다. 추가적인 부하 분산 작업과 DDoS 방어 작업이 이루어지고서야 사이트가 겨우 정상으로 돌아왔다.
예기치 못한 상황에 대한 모든 작업을 끝낸 후, 엔지니어들은 안도의 한숨을 내쉬었다. 확장성과 유연성 면에서 장점이 있는 클라우드 서버였으니 당일에 장애 해결이 가능했지, 그렇지 않았다면 유권자들이 문재인 후보의 공약을 구매하는데 한동안 꽤나 애를 먹었을지도 모르는 일이었다고 엔지니어들은 입을 모았다.
걱정 가득했던 국민의당 경선 시스템 구축
선거라는 무겁고 책임감 있는 과정을 수행하면서 '걱정'이란 등 뒤에 들러붙어 결코 뗄 수 없고 떼어내서도 안 되는 짐이라고 할 수 있다. 허리가 휘어질지언정 말이다. 국민의당 경선 시스템 클라우드 구축은 굉장히 다양하고, 복잡하고, 까다로운 요구사항과 함께 가비아에 의뢰가 들어왔다.
촉박한 오픈 일정이야 신속함이 장점인 클라우드를 사용하는 만큼 별로 걱정할 것이 없었으나 문제는 보안에 대한 부분이었다. 우리나라에선 여전히 클라우드 보안에 대한 불신이 있는 상황이라 고객사 측에서도 이 부분을 염려하고 있는 듯 했고, 엔지니어들도 모두 고객사의 걱정을 해소하느라 진땀을 뺐다.
엔지니어들은 퇴근 후는 물론, 새벽에도 국민의당으로부터 날아오는 "해킹 대비는 충분한가요?"와 같은 물음에 잠을 자던 꿈속에서도 국민의당 경선을 준비하는 기분이었다고 한다. 게다가 시스템 점검을 위해 불려간 국민의당 당사에서는 보안 기업을 업고 있는 안철수 후보 측 전문가를 포함해 보안에 관한 각종 기술적인 토론이 벌어졌다.
물론 모든 것들이 당연히 필요한 우려였다. 20만 명이 투표할 것으로 예상되는 경선 시스템에 장애가 나거나 해킹 시도가 발견된다면 경선이 무효가 될 수도 있는 일이었다. 어쨌거나 이런 걱정의 산을 넘기 위해 오버스펙이라고 할 만큼 넉넉한 클라우드 시스템을 준비했으며, 결국 국민의당 경선 시스템은 첫 실전 구동에서 20여분의 지연이 발생한 것을 제외하면 큰 문제 없이 무사히 끝났다.
중앙선거관리위원회 홈페이지 시스템, 뜻밖의 위기?
"장애가 나면 음모론이 제기돼서 국정원에서 감사를 나올지도 몰라요" 그렇게 말한 선관위 담당자는 곧 웃으며 농담이라고 했다. 그러나 엔지니어들은 웃지를 못했다. 불안한 시국이었다. 대선 자체가 많은 정치적 문제와 갈등을 포함한 일이었고, 사드 이슈로 인해 중국발 디도스 공격도 잦던 때였다. 게다가 선관위 홈페이지에는 공약 페이지가 포함되어 있어 선거와 관계없는 기간에는 조용하지만 대선이나 총선만 되면 접속이 폭발적으로 증가한다. 많은 국민들이 공약에 관심을 갖고 찾아온다니 기쁜 일이 아닐 수 없지만 엔지니어들에겐 마냥 기쁜 일이 아니었다.
지난 보궐선거와 총선에도 선관위 시스템을 담당해서인지 엔지니어들은 전투를 위한 만반의 준비를 해야 한다는 기색이었다. 이후 엔지니어들이 내놓은 시스템 구성 제안에는 모든 상황에 대한 염려가 가득 담겨있었다.
"무슨 일이 있을지 모르니 최대치로 가야죠"
평소 퍼블릭 클라우드로 운영하던 시스템을 가상 서버 수십 대에, PDF로 된 공약 문서 다운로드를 감당할 수 있는 파일 서버도 따로 구축했다. 이 밖에도 가용 최대치의 고급 장비들과 방화벽부터 DDoS 방어까지 각종 보안 장비들이 구성에 함께 포함됐다. 그렇게 선관위에 꼭 맞게 커스터마이징 된 하이브리드 클라우드가 완성된 것이다.
그런데 막상 구축을 하고 나니 고객사가 요청한 비용을 훌쩍 넘어있었다. 고객사도 한정된 예산이 있으니 청구를 할 수도 없어, 이대로 가면 고스란히 적자로 남을만한 구성이었다. 그래도 이렇게 가자고 결정을 내린 데는 엔지니어들이 느끼는 압박감이 크게 작용했다. 전 국민을 대상으로 한 서비스에, 모두의 이목이 집중되는 후보자 공약 페이지가 포함돼 있으니 만약에 상황에 어떻게 대비하지 않을 수 있냐는 것이다.
그렇게 적자에도 불구하고 만반의 준비로 선관위 홈페이지 시스템 운영을 시작했으나 막상 문제는 이상한 곳에서 발생했다. 대선 당일, 모니터 앞에 앉아있던 엔지니어 앞으로 걸려온 전화 때문이었다. "여보 어떡해, 아이가 곧 태어날 것 같아" 다름 아닌 출산을 코앞에 두고 있던 아내의 목소리였다. 대선에는 만반의 준비를 기했으나 갑작스럽게 아빠가 되는 상황에 대한 준비는 되어 있지 않았던 엔지니어는 당황했다.
시스템 운영과 아내의 출산에 대한 온갖 위기 상황을 상상하던 엔지니어는 결국 어제 꼬박 당직을 서고 겨우 잠에 들었던 동기에게 전화를 걸 수밖에 없었다. 시스템 장애라도 난 줄 알고 다급히 전화를 받은 동기는 "아빠가 되게 생겼다"는 한 마디에 퇴근 네 시간 만에 서버실로 되돌아왔다. 만반에 준비를 갖춰서일까, 선관위 시스템은 아무런 문제 없이 무사했다. 그리고 엔지니어도 무사히 아이의 아빠가 되었다는 소식이다.
짧고 숨가빴던 대선이 얼마 전 막을 내렸다. 그 짧은 기간이 대선 후보들에게는 드라마였듯, 그 무대의 뒤에도 또 다른 한 편의 드라마를 준비하는 시스템 엔지니어들이 있었다. 대통령 당선인은 지금쯤 국가의 새 출발을 위해 힘쓰고 있겠지만 모니터 앞에서 밤을 지새웠던 엔지니어들은 이제, 잠을 잘 시간이다.
글 / IT동아 김영우(pengo@itdonga.com)