데이터이야기

DB 노하우, 데이터직무, 다양한 인터뷰를 만나보세요.

넷플릭스(Netflix)가 클라우드로 간 이유는

데이터 이야기
작성자
dataonair
작성일
2017-05-16 00:00
조회
4028


넷플릭스(Netflix)가 클라우드로 간 이유는



넷플릭스가 자사의 스트리밍과 관련한 모든 IT시스템을 AWS 클라우드로 옮겼습니다. 약 7년에 걸쳐 이루어진 이 작업은 2016년 12월에야 마무리가 되었습니다(링크 참조). DVD렌탈과 관련된 일부 시스템을 제외하곤 모두 아마존으로 옮겼습니다. 이 발표는 상당히 의외였는데요, 왜냐면 이 결정을 내리기 수 년전부터 지속적(1년에 1번 이상)으로 발생하고 있는 AWS의 장애 때문에 넷플릭스의 서비스가 중단되는 일들이 생겨서, 이 부분에 대한 대비책을 새우고 있었습니다. 그리고 나름 심각하게 생각했던 부분들은 AWS 자체에 장애가 생기면 뭔가 조치를 취하기가 아주 어렵고, 이슈가 해결될 때까지의 시간이나 비용을 가늠하기가 아주 어렵기 때문이었죠. 그래서 2015년에는 아마존에 있는 시스템들을 다시 자체 데이터 센터로 이관하기로 결정하고 작업을 진행중이란 소문이 있었기때문에, 이번 발표는 놀라웠습니다.

넷플릭스가 이렇게 결정을 내리게된, 그리고 내릴 수 있었던 가장 큰 이유는 자사 제품의 사용량 증가에 따른 안정성을 클라우드 기반으로도 4Nine (99.99%, 일년에 52.56분 다운 타임) 수준으로 만들 수 있었기 때문이라고 합니다. 물론 Four Nines이 높은 수준의 안정성이라고 보긴 어렵습니다. 기존의 엔터프라이즈 환경과 비교를 해보자면 6Nine정도는 되어야 서비스의 안정을 도모할 수가 있었기 때문입니다. 넷플릭스가 클라우드 기반으로도 적정 수준의 서비스 stability를 가지고 갈 수 있도록 인프라와 플랫폼에선 여러가지 방법들로 장애에 대한 준비들을 해왔는데요, 이 부분은 기회가 될 때 다시 이야길 드리도록 하겠습니다.

그렇다면, 넷플릭스의 이러한 완전한 클라우드 전환이 시사하는 바는 무엇일까요 여러가지 측면이 있겠지만, 저는 먼저 경제적인 측면 즉 비용 부분을 보도록 하겠습니다. IT기술이 실제로 가지는 여러 측면이 있겠지만, 대부분은 자동화를 통한 비용감소 인데요, 문제는 자동화를 수행하는 컴퓨팅 리소스에 대한 비용을 무시하기 어렵다는 것 입니다. 대게의 경우 회계처리에서 감가상각이란 계정단위로 IT비용이 표현되는데, 이 감가상각을 이길만한 서비스나 프로덕트를 만들지 못하면 IT 기술은 더 이상 확장 시키기가 어렵습니다. 이 외에도, 장부에 포함되지는 않지만 실제로 큰 부담이 되는 비용은 바로 관리 비용입니다. 대규모 인프라를 가지고 있는 조직에서는 늘 골치 아파하는 부분이 다양한 종류의 장비들을 통합해서 관리하는 인데요, 전통적인 데이터 센터를 기반에서는 장비의 종류뿐만 아니라 년식도(서비스를 만든지 오래되었을 수록 오래된 년식의 서버/시스템이 있습니다) 다양합니다. 보통은 이런 부분을 흔히 일컬어 레거시라고 합니다.

신규 서비스를 위한 새로운 시스템이 들어오게되면, 이 시스템에 대한 관리를 새롭게 정의하거나 별도의 관리시스템이 생기게 되는데 이 경우 관리 비용은 증가하게 됩니다. 명령어를 하나 칠것을 2개치고, 한번 화면으로 끝날것을 2개이상의 화면을 보면서 제어를 해야하는 것이죠. 따라서 이 관리비용은 시스템이 늘어날 수록, 그리고 시스템의 종류가 다양해 질수록 늘어납니다.

그런데 클라우드기반이 되면, 관리비용을 구성하는 요소중에 시스템의 다양성은 줄 일 수 있습니다. 클라우드 사업자가 제공하는 API로만 제어하면 되니까, 시스템 상의 다양성이 있을 수가 없는것이지요. 아마도 넷플릭스는 이 부분에 대한 생각을 많이 했을것 같습니다.

두번째 시사점은 바로 서비스 지속가능성에 대한 부분 입니다. 최근의 서비스 트렌드는 인프라와 서비스의 구분이 없이 잘 결합되어서 나오기 때문에(e.g. 오토스케일) 인프라 쪽 역시 아주 많은 개발자가 필요하고 실력있는 개발자가 필요합니다. 문제는 인프라 관리 자동화를 위한 개발자나, 해당 영역에 대해 잘 알고 있는 사람들을 구하기가 아주 어렵다는 점 입니다. 왜냐면 서비스쪽의 개발자는 결국 서비스 기능 개발 속도와 바로 직결되고, 눈에 보이기 때문에 그 필요성과 가치가 바로 인식이 되지만, 인프라쪽 ( 플랫폼도 마찬가지 입니다.)으로 올수록 필요성이 명확해지기가 어렵기 때문입니다. 그리고 대부분 개발자의 성향상, 편리한 클라우드를 ‘사용’하고 싶어하지 ‘만들고’ 싶어 하진 않기 때문입니다. 그리고 해당 분야에 관심이 있는 개발자들은 대부분 큰 회사들로 가버리기 때문에(자신들의 본업이 더 중시 받는 쪽으로 가고 싶어하기 때문이죠) 좋은 개발자를 지속적으로 자신들의 조직에 붙잡아 두기가 어렵습니다.

넷플릭스처럼 퍼블릭 클라우드 API를 기반으로 인프라를 만들게 되면, 퍼블릭 클라우드의 API는 지속적으로 유지가 될것이기 때문에 리소스 관련한 API에 변동성은 적어질것이고, 전 세계적으로도 이 API를 사용해본 사용자들이 잠재적인 자신들의 엔지니어 후보군들이 되어버리기 때문에 사람을 구하는데도 이전보단 좀 더 수월 할 것이란 판단을 할 수 있습니다.

종합해서 보자면, 넷플릭스는 결국 서비스의 지속성과 경제성을 위해서 퍼블릭 클라우드를 선택한것이죠. 물론 위의 이야기는 넷플릭스처럼 (클라우드와는 사용 유무와 관계없이) 대규모 인프라를 운영하고 있는 조직에서나 있을 법한 이야기지만, 최근 많은 엔터프라이즈 업체 들이 다시금 본인들의 프라이빗 클라우드를 만들고 있다는 것을 생각해보면 이들 회사들 역시 자신들의 서비스의 지속성 부분은 아주 많은 고민을 해야하며, 특히나 해당분야의 인력과 같은 이슈는 생각보다 아주 크게 올 수도 있다는 점을 염두에 두어야 할 것 입니다.



출처 : 한국데이터진흥원

제공 : 데이터 전문가 지식포털 DBguide.net