우연한 기회에 오늘 있었던 Google Cloud Platform Live 행사에 참석할 수 있었습니다. 말하자면 구글의 클라우드 서비스 (자사 서비스를 위한 것이 아니라 AWS처럼 일반 개발자용 클라우드 서비스라고 생각하면 됨)에 대한 큰 업데이트와 관련 내용을 소개하는 자리였고, 미국시간으로 3월 25일에 샌프란시스코의 한 행사장에서 열렸습니다.

저는 베이지역에 사는지라 아침에 샌프란시스코 가려면 1) 차를 몰고 간다 2) 대중교통을 이용한다 두가지 선택지가 있는데 1)은 일단 출근시간이니 차가 막히고 주차 문제가 있고 2)는 대중교통이 서울처럼 촘촘하지 않아서 선택지가 많지 않다는 문제가 있는데 오늘은 Caltrain 타고 갔습니다. 그나마 Limited (급행)으로 타고 가니 그나마 늦지는 않았는데 그래도 1시간 반 정도는 걸리네요.




사실 나올때 찍은 것입니다만 한데 행사장 옆에 클라우드 서비스 로고가 큰게 붙어 있었습니다. 크롬 로고 비슷한데 아마 너트와 볼트를 상징하는 듯.


구글의 행사 페이지 (동영상 대부분 포함되어 있음)은 여기에서 볼 수 있습니다. 테이블에 보는 것 처럼 오전에 키노트와 발표 하나, 오후에 2개 트랙으로 각 세션이 4개씩, 마지막에 대담이 하나 들어 있는 형식입니다. 외부 발표는 없었고 구글에서 자체적으로 모두 담당자들이 나와서 발표하는 형식입니다.


참석했던 세션 별로 몇가지만 이야기 하면,

Keynote




국내에 기사 나온게 있는지 보니까 "구글 클라우드 가격 파괴 "무어의 법칙 적용"" 이걸 찾을 수 있네요. 자세한 내용은 기사를 보시고... 이날 키노트는 아무래도 새로 달라진 점을 크게 강조하고 싶었던 것 같은데, 가격적인 면이 크게 강조되지 않았나 합니다. 이후 VM의 라이브 마이그레이션을 데모로 보여 줬는데, 이게 머신이 동작중이라는 걸 보여 주려고 스트리밍을 하나 띄워 놓고 뒤에서 다른 VM으로 옮겨도 다운타임이 매우 적다는 걸 보여주고 싶었던 것 같은데 막상 보는 사람은 매우 심플한 화면을 보게 되었습니다. 아무래도 구글의 공돌이 기질인지 이동네 특성인지 모르겠지만 그래도 대기업 발표가 매우 공돌이스럽게 진행된다는것 - 데모가 많은 점은 물론 보는 사람 입장에서 좋습니다만 - 은 참 신기한 점이더군요.

고객사례로 Snapchat 의 CTO가 잠시 올라와서 자사 사례를 이야기하고 갔는데 개발팀만 있고 운영팀이 없다...는 이야기는 인상적이었습니다. 그냥 클라우드 UI 쓰면 되고 서버 가진것도 없으니 개발자가 직접 deploy 하고 서비스 개발에 치중한다는 이야기인데, Snapchat 은 매우 큰 서비스로 아는데 지금도 그렇게 운영 가능하다는 점이 좀 놀랍더군요.

그외 Google Compute Engine (GCE) 의 SuSE Linux 및 Red Hat Linux 지원이 발표되었는데 왜 그런가 싶었더니 나중에 보여주는 데모를 보니 모두 Debian Linux 입니다. 아마 GCE는 기본 Debian Linux 이미지를 사용하는 것 같더군요. 그외 윈도우 2008 R2 (제일 많이 써서라고 하는데 인제? 라는 느낌은 좀 듭니다) 이미지 지원 이야기가 있었고, 새로 Cloud DNS 서비스 (도메인용 DNS 관리 서비스. 이거 우리회사거랑 이름이 같은데...) 가 추가되었습니다. AWS에서는 Route 53 에 해당하는 서비스인데 둘이 어떻게 다른지는 나중에 봐야 겠습니다.

이후에 Managed VM 에 대한 발표가 있는데 이 부분은 좀 인상적입니다. 보통 Google Apps Engine (GAE)과 같은 PaaS엔진은 어떤 VM위에서 돌아야 하는데 VM에 접근 권한을 줄 수는 없으니 추가적으로 필요한 라이브러리를 VM에 마음대로 설치할 수 없다는 단점이 있습니다. Managed VM은 PaaS 엔진이 돌고 있는 VM에 추가적인 변경을 가할 수 있다는 점이 특징인데, 데모는 imagemagick 라이브러리를 추가한 VM을 만들고 그 위에서 GAE App을 돌리는 걸 보여 줬습니다. 근데 아까 이미지는 Debian 이라 그런지 패키지 추가하는 XML 기술할때 apt-get-install이라고 쓰더군요. :) 즉 복제 문제 때문이겠지만 로그인해서 고치는게 아니라 미리 VM이 어떠해야 한다는 걸 지정해 주는 방식인데 PaaS를 주로 밀고 있는 구글 입장에서는 GCE가 소개되면서 할 수 있는 부가적인 기능으로 생각이 됩니다.

그외 BigQuery 의 성능 향상에 대한 데모가 있었습니다. BigQuery는 말하자면 BigTable 을 상품화한 것으로 생각하면 되는데 RDB 형태를 유지하면서 SQL및 자바스크립트 지원, 용량 제한이 없다는 큰 특징이 있습니다. 말하자면 Hadoop 직접 운영하지 말고 그냥 이거 써라... 라는 것으로 생각이 드는데, 데모를 보면 매우 실시간스럽지는 않지만 기존의 RDB형식의 데이터를 익숙한 형식으로 마음대로 뽑아볼 수 있다는 점은 좋아 보입니다.


The Power of Big Data on Google Cloud Platform

앞서 이야기하던 BigQuery 에 대한 이야기인데, 원래 2012년부터 있던 서비스이지만 이번의 발표에서 100k row/sec streaming, table view, wildcard table 등이 눈에 띄는 기능입니다. 잘만 하면 웹서버 로그를 그냥 필드단위로 집어 넣고 배치 형태로 통계를 뽑아 볼 수 있습니다. 구글 데이터센터랑 network latency가 적당히 보장된다면 해볼만한 솔루션인듯 합니다. 이걸 위해서 스토리지를 따로 제공 하는데 일반 스토리지와는 조금 달라 보입니다. SQL이 표현하지 못하거나 어려운 형태로 데이터를 뽑아야 하는 경우를 위해서 자바스크립트를 적절히 SQL에 삽입할 수 있는 것이 인상적입니다만 그러면 둘 다 알아야 하는데...

점심

아침에 간단한 먹을거리, 점심 식사 제공, 중간에 과자랑 음료수 제공하는데 다들 너무 맛있어서 깜짝 놀랐습니다. 아침에 샌드위치도 맛있고 점심에 식사도 맛있고 커피 내려주는 아저씨 실력도 장난아니고...
 

DevOps at Google Speed & Tools for You

앞선 Demo 에서 크게 두가지로 데모들을 보여 주는데 하나는 웹 UI(AWS Console 에 해당하는)와 cli 입니다. gcloud 라는 명령어로 상태 보기나 deploy 를 시킬 수 있고, 소스 관리는 구글이 호스팅하는 git 을 쓰는데 원하면 github 와 연동시킬 수 있습니다. 언어별로 Unit Testing 도구를 제공하는데 보여준 데모에서는 앱을 만들면 자동으로 jenkins 를 호스팅해 주고 그쪽에 따로 가서 추가적인 설정 편집이 가능합니다. 로그나 소스 코드 수정 및 커밋이 웹 UI로 바로 가능하기 때문에, 문제가 있을 경우 로그 수집하고 디버깅하는 건 편하게 되어 있는데 복잡한 케이스에는 어떻게 대응할지가 궁금하더군요. 구글 내부에서 하는 것처럼 개발하세요... 가 모토인데 일단 툴은 깔끔하게 구성이 되어 있네요. 데모 앱이 Flappy Bird 짝퉁이건 좀...


Google Computing and Open Source Technologies

GCE에 사용되는 오픈소스 관련 기술에 대한 설명입니다. 다들 아는 linux 라든가 python 이라든가... Android, Chrome, Go, V8 (JS엔진), python/ruby/java를 통한 GCE 제어, 그외 보조 도구로 puppet, chef, saltstack, ansible, docker, coreos, vagrant, packer 등을 나열되었는데 아는것도 있지만 모르는 것도 있어서 나중에 찾아 봐야 겠네요. 직접 사용되었다기 보다는 GCE에서 그런 툴을 쓰면 더 편해질 거다... 정도입니다.

10 Things That Make Cloud Platform a Next Gen Cloud

주로 인프라와 스케일에 대한 설명이었습니다. pre-warming 없이 바로 대용량 처리가 가능한 로드 밸런서라든가, 환경을 생각해서 저전력에 노력하고 있다든가, Persistent Disk 를 통해서 GCE간의 공유 스토리지를 제공한다는 이야기 등입니다. 또한 VM의 성능 자체도 큰 변동 없이 일정하게 유지되는 것도 장점이라고 하는데 어떻게 그걸 했는지는 자세히 들을 수는 없었습니다.


Big Data, Open Source and Google Cloud Platform

BigQuery 이야기는 앞서 많이 들었는데 이번에는 기존에 많이 쓰는 Hadoop Ecosystem 과 연동하기 위한 Google Cloud Storage Connector 에 대한 내용이 주가 되었습니다. Hadoop 은 잘 모르기는 합니다만 GCS 를 HDFS 대신 사용 가능하다... 정도로 생각하면 맞을것 같네요. 즉 데이터 저장은 구글 스토리지에 하고 기존에 돌고 있던 Hadoop 기반의 데이터 도구 (Shark/Hive/Spark등)는 그냥 쓰던대로 하세요.. 라고 이해 했습니다. 설명하는 분이 linux 데스크탑으로 보여 주시는데 화면 전환이 너무 빨라서 좀 천천히 해 주었으면 하는 느낌이 있더군요. :)

Fireside Chat with Urs Hölzle & Jeff Dean

 

개인적으로 Jeff Dean 이 누군지 보고 싶어서 여기 온것도 있는데 실물을 봐서 다행입니다... :) 왼쪽에서 두번째 분입니다. 처음에 Urs (왼쪽에서 세번째 분)과 Jeff (두번째)로 시작을 했는데 중간에 가장 왼쪽의 Eric Brewer 씨가 난입을 하셨는데 이분은 NoSQL이야기하면 항상 나오는 CAP Theorem 으로 유명하신 분입니다. Jeff Dean 이 왜 보고 싶었는지는 이 글을 보시면 됩니다. IT계의 척 노리스인데... 뭐 존경심에서 나온 유머이겠습니다만.

대담 형식이었는데, 구글이 처음 BigTable 이라든가 MapReduce 라든가 하는 걸 처음 시작했는데 이제는 다들 쓰는 용어가 되었다라든가, 사진에도 있지만 대량의 데이터를 이용한 신경네트워크를 통한 학습을 위해서는 데이터가 많아야 하는데 구글에는 그런 데이터가 이제 있다라든가, OpenFlow/SDN을 이용한 매우 세세한 수준의 네트워크 제어가 가능하다는 이야기, 그리고 아직 1% 만이 클라우드를 쓰고 있으니 모르는 문제들이 많이 남아 있고 그런 것들을 풀고 싶다... 는 이야기가 있었습니다.


---
사실은 제품 발표 행사니까 가격 이야기랑 제품 이야기가 많긴 했는데, 직접적인 경쟁자가 될 AWS 대비 어떤 점이 달라 보이나 하면 아무래도 AWS는 EC2 (VM)과 스토리지 (S3)에서 시작 - 소위 말하는 IaaS - 으로 시작해서 다양한 서비스군을 갖추고 있고 그런 점에서는 이미 2-3년은 앞서 나가고 있습니다. 반면 구글은 GAE를 먼저 발표하고 GCE가 나중에 추가되었지요. 따라서 AWS와 반대로 PaaS (GAE)에서 IaaS (GCE)로 일단 내려 갔지만 여전히 중심은 GAE 와 빅데이터 처리 (BigQuery)에 있어 보입니다. GCE는 그걸 구현하기 위한 수단으로 생각이 되고요. 그러다 보니 각종 관리도구를 (Web UI, CLI)는 필수적으로 생각이 되고, 기존에 돌고 있는 여러 오픈 소스 기반의 빅데이터 관련 도구와의 연동이 중요한 것으로 생각 됩니다. 그리고 이것 기반으로 히트한 서비스를 많이 내 놓아야 하는데 눈에 확 띄는 로고가 아직은 Snapchat 밖에 없는 것도 단점이겠죠.따라서 기존 구글 서비스에서 쓰는 것이니 그만큼 안정적이고 보안성도 높다라고 하고 있는데 실제로는 쓰는 사람이 더 많아져야 알 것으로 생각이 됩니다. AWS와 차별점을 보여주는 데는 일단 성공 했다는 생각은 드는데 추가적인 서비스가 더 많아져야 하겠죠. 국내에는 데이터센터가 없는 것으로 아는데 국내에서 접속할 수 있는 위치가 어디인지 궁금 합니다. AWS는 동경이 제일 가깝지만 마찬가지로 한국에는 없지요.

아무래도 이런 제품군이 개발자를 위한 것이다 보니 개발 관련이나 빅데이터 관련된 지식이 없으면 이런 공돌이스러운 발표에 적응하기는 어려웠을 거라 생각이 됩니다만, 참석자는 대부분 엔지니어인것 같더군요. 중간에 'jenkins 써보신 분' 이라든가 'emacs 쓰시는 분'에 손 드는 사람 수를 보면 알 수 있었습니다. :) 데모도 많이 보여 주고 나름 유쾌하게 진행 하려고 노력 많이 했다는 느낌입니다.