흥미로운 글이 있어서 번역해 보았습니다.


 

 

Snapchat 공동 설립자이자 CTO Bobby Murphy 3/25 개최된 Google Cloud Platform Live 에서 "Snapchat 지지하는 기술"이라는 강연에서 Google Cloud Platform(GCP) 사용 사례나 개발 체제를 상당히 구체적으로 설명.

 


Snapchat Google App Engine을 선택한 이유

·         "지금까지 가지 작은 프로젝트에서 Google App Engine 사용한 경험이 있고 서비스 시작에 걸리는 시간이 대폭 짧아지는 것을 알고 있었다. Snapchat 최대한 빨리 세계의 유저에게 서비스 하는 것을 가장 우선하고 있었으므로  App Engine 선택하였다"

·         "App Engine Web 백엔드의 구축이나 배포에 따른 복잡함과 수고를 모두 숨긴다. 인프라 구축에서는 확고한 실적이 있는 Google이라서 App Engine 사용하면 마찬가지로 측정 가능성 높은 서비스를 실현할 있다고 생각하였다"

Snapchat 성공의 열쇠가 GCP PaaS App Engine이었던 것은 사실은 최근의 Immutable Infra  Docker 움직임으로 통하는 것이다. 이것은

1.    App Engine에서는 어플리케이션을 Disposable, Stateless Shared Nothing으로 설계하지 않으면 된다

2.    애플리케이션을 VM 아니라 초경량 컨테이너로 운용하여 대규모로 스케일 아웃 시키다

3.    구성 관리와 배포를 Repeatable 하여 버전 업이나 페일 오버에 힘들지 않게 한다

라는 점이다(다만 App Engine에는 Docker정도의 플랫폼 투과성은 없다). 예를 들면 App Engine Go 애플리케이션을 배포하면 대략 50ms(!)정도로 컨테이너가 기동하고 트래픽 스파이크가 발생하면 깜짝할 사이에 100에서 1000 규모로 오토 스케일 한다. 또한 애플리케이션의 Immutable 설계가 강제되는 덕분에 대규모 버전 변경이나 데이터 센터 페일 오버만 Google 일임할 있다.

,  Snapchat App Engine 확장성과 운용 관리의 용이함을 지렛대로 하여 여기까지 부드럽게 거대화한 사실은 컨테이너 가상화나 Immutable Infra 클라우드의 새로운 기반 기술로서 싹을 내고 있다고 있다. 이런 흐름은 국내에도 파급되고 있으며 예를 들어 US Google Cloud Platform Blog 게재된 비디오에서는 사이버 에이전트 자회사의 소셜 게임 개발 벤더, 봇의 우키타 씨가 급성장하는 서비스의 개발 운용에서 App Engine 어떻게 활용할 것인가에 대해 말하고 있다.

 

 

Google Compute Engine으로 768대의 Redis를 운용

Snapchat 사례로 이야기를 돌아가면 PaaS App Engine으로 시작하여 IaaS Google Compute Engine (GCE)으로 기능을 확장해 나가는 접근 방식이 흥미롭다.

·         "GCP 성장에 맞게 Snapchat 성장한 것은 아주 놀랍고 요행이었다. GCP 기능이 나오면 바로 서비스에 투입하여 메리트를 얻었다"

·         "App Engine 보완하는 유연한 스토리지 아키텍처를 검토했던 똑같은 타이밍에 GCE 발매되었다. 현재는 GCE 대규모 Redis 클러스터를 운용하고 있다. Redis 마스터 노드는 256대로 각각 2대씩 슬레이브가 붙는다( 768). 앞에 Google Compute Engine Load Balancing  두고 있다"

App Engine 사용해 인프라 엔지니어 없이 소수의 엔지니어만으로 서비스의 씨를 키우고 성장 단계에서 GCE 조합 "PaaS IaaS 좋은 것을 찾는다"라는 것이다. 이것은 최근의 국내외의 대규모 GCP도입 사례에 공통되는 패턴이 되고 있다.

 

 

엔지니어는 25, 운용의 수고는 극소수

·         "GCP 최대 장점은 인프라 운용에 드는 비용을 최소한으로 억제하고, 새로운 인프라 구축과 기능 구현에 집중할 있는 . 엔지니어링 VP Tim 지난 주에 내게 말했지만 그가 Snapchat 들어와서 가장 놀라운 것은 " 서비스의 규모와 성장 속도에서는 당연히 생길 대부분의 인프라의 운용 상의 귀찮은 문제나 복잡성이 별로 보이지 않았다"라는 . 지금 엔지니어는 25 이지만 인프라 운용에 관련된 것은 아주 작고 대부분은 기능 구현에 주력하고 있다"

세계 최대 규모의 서비스로 성장한 Snapchat 아직도 25명의 엔지니어로 떠받치고 있는 것은 놀랍다. 게다가 대부분은 기능 개발을 담당하고 있으며 인프라 엔지니어는 극소수라고 한다. 이것도 다른 GCP 사례에 공통되는 특징이다.

 

 

출처: (일어http://qiita.com/kazunori279/items/e86636bb5908295c8c0f

저작자 표시
신고
by 흥배 2014.04.21 08:00
| 1 |

티스토리 툴바