Skip to content

[ Google Cloud Next 2017 참관기 ] Google Cloud Next에 가다. – 1편

안녕하세요. 꿈많은청년들 CTO Harrison Jung 입니다.

Google Cloud Platform Korea User Group에 가입을 한지 이제 만 1년을 살짝 넘었습니다. ( 2016년 1월이니 이제 1년 2개월 정도 되었네요 ) 그동안 활동을 하다 보니 어찌 어찌 운영진까지 하게 되었고, 그러던중 Google에서 Next 행사를 하게 된다는 이야기에 조대협님의 추천으로 저 멀리 샌프란시스코까지 다녀오게 되었습니다. ( 조대협님 감사합니다. )

행사에 다녀오게 되며 간단한 내용들을 이야기 하고자 합니다.

우선 본 블로그(회사블로그)에는 여행기보다는 주로 기술적인 이야기를 메인으로 풀고, 개인적인 에피소드들은 나중에 혹은 개인 블로그에 올리려고 합니다.

Google은 2016년 처음으로 Next 행사를 열고, 올해 ( 2017년 ) 두번째 행사를 가지게 됩니다.

작년 행사때는 제가 정보가 없어서 잘은 모르지만, 이번 2017년 행사는 무려 12000 명이 참가하고, 200개가 넘는 세션들을 열면서 엄청난 규모로 행사를 진행하게 되었습니다.

Google Cloud Platform의 많은 새로운 서비스들이 소개되고, G Suite 의 새로운 기능들이 발표가 되었습니다. 그리고, 많은 새로운 고객들이 타사의 Cloud 서비스에서 혹은 단순 IDC호스팅에서 구글로 넘어온 이유와 방법들에 대한 소개들이 진행 되었습니다.

저는 그중에 너무 많은 이야기들이 있어서 정리를 해서 순서대로 전해드리려고 합니다.

물론, 아는 한도내에서 전달하다 보니 모든 내용을 전달 할 수 없으므로, 부족한 부분들은 [ 공식 블로그 ] 를 통해서 더 많은 정보를 확인이 가능합니다.

우선, 키노트의 순서와는 다르게 나름대로 정리된 순서로 전달하고자 합니다. ( 키노트의 순서와는 제가 소개할 순서는 다릅니다. )

======

GCP Free Tier

이번 Next에서 발표된 내용중 마지막날에 발표된 내용들은 주로 구글이 바라보는 오픈소스에 대한 시각, 그리고 그 오픈소스들이 왜 중요하고, 오픈소스를 발전시키기 위해서 구글이 해온 노력들을 보여줬습니다.
그리고, 또한 많은 오픈소스 개발자들이 구글이 하고 있는 많은 오픈소스에 참여해주길 바란다는 이야기와 , 구글이 그 오픈소스 개발자들에게 어떻게 도움을 주려고 하는지에 대해서 이야기 했습니다.

그러면서 많은 사람들이 쉽게 Cloud에 접근이 가능하게 하기 위해서 많은 개발자들이 쉽게 쓸 수 있도록 [ Free Tier ] 가 대폭적으로 추가 되었습니다.

기본적인 개념은 1년간 300$ 의 크레딧을 주고, 또한 추가로 몇몇 소규모 사용에 대해서는 무료로 제공을 해주는것을 의미합니다.

조금더 자세히 살펴보겠습니다.

크레딧이 다 소모된경우 추가로 자동 결제를 위해서 그리고 어뷰징을 방지하기 위해서 [ 정상적인 결제 가능 카드 ]를 등록한 경우에 한해서 해당계정에 1년간 사용이 가능한 300$ 의 크레딧을 추가해 줍니다. 만약에 1년이 지나거나 혹은 1년 이내라도 300$의 크레딧을 다 소모한뒤에는 정상 과금이 됩니다.

 

 

사실 이정도는 다른 클라우드 서비스들도 제공해주는 부분입니다. 그런데, 구글에서는 개발자들과 학생들에게 저변을 확대하기 위해 한가지를 더 했습니다. [ Always Free ] 를 확대 적용한것입니다.

기존에도 전혀 무료 서비스가 없진 않았습니다. 예를들면, Cloud Source Repositories 를 이용하면 1GB의 Private Git을 사용할 수 있고, Cloud Shell 을 이용하면 간단한 서비스 콘솔을 무료로 이용할 수 있었기 때문입니다. 그런데 이번에 구글에서는 대폭 확대 적용하여 f1-micro 서버 ( 공유 1코어 / 0.6GB RAM / 30GB HDD ) 를 무료로 쓸수 있게 해주었고, Google Cloud Storage 는 5GB 까지 무료로 사용을 가능하게 해줌으로써 이제 공격적으로 사람들에게 홍보하려는구나..하는 생각이 들었습니다.

좀 더 자세한 부분은 [ 링크 ] 를 통해서 확인을 하실 수 있습니다. 발표당시 “NOW!” 라는 문구는 느낌이 마치 “원모어띵”의 느낌이었습니다. ㅎㅎ

======

Cloud Functions

구글은 이번에 Serverless (서버 없는 아키텍쳐 ) 를 매우 강조하였습니다.

그중의 구글의 Serverless 의 핵심을 이루는 두 근간이 Cloud Pub/Sub 과 Cloud Functions (이하 GCF ) 입니다.

Cloud Pub/Sub은 하나의 이벤트 발신자에서 다른 수신자로 전달해주는 역활을 하며, GCF 는 그 전달과정에서 실제로 동작을 수행하는 역활을 하는 기능중의 하나입니다. 물론 Cloud Storage 는 일반 파일을 저장하며, Cloud DataStore 는 NoSQL 형태로 데이터를 저장하며, BigQuery 는 SQL형태로 데이터를 저장해주는 서비스입니다.

Cloud Pub/Sub은 다양한 이벤트를 받을 수 있습니다. 예를들면 Cloud Source Repo 로 push 이벤트가 발생시 이벤트를 수신해줄 수있으며, 또는 Cloud Storage에 파일이 업로드 혹은 변경되면 역시 이벤트를 수신해줄 수 있습니다. 혹은 Cloud Logging 에 이벤트가 추가 될 경우 이벤트 수신이 가능합니다. Cloud Logging은 프로젝트에서 발생하는 모든 이슈를 기록하고 관리를 해줄 수 있습니다. 예를들면 우리가 프로젝트에 새로운 인스턴스를 추가하거나 혹은 Cloud Load Balancer 에서 404 Page Not Found 이벤트가 발생할 경우, 특정 서버에 문제가 생겼을 경우 등등..모든 이벤트 로그를 처리해 줍니다.

예를들면 Cloud Storage ( GCS )에 파일이 업로드 되면, GCS는 이벤트를 발생시키고 그 이벤트는  Cloud Pub/Sub 을 통해 GCF 로 전달되게 됩니다. 그러면 우리가 만들어 놓은 코드가 동작하면서 다양한 처리를 할 수가 있습니다. 예를들면 이미지 파일의 경우 워터마크를 적용한다거나 혹은 특정 사이즈로 리사이징을 하거나 하는 등의 작업이 가능합니다. 이러한 부분들을 개별적으로 서버가 이벤트를 처리하는것이 아니라, GCF 을 이용하게 되면 서비스를 해야 하는 서버 입장에서는 부담이 경감됩니다. 더구나 구글에서 자동으로 스케일링을 해주기 때문에 만약에 동시에 수백개의 파일이 업로드 되는 경우라 하더라도, 걱정없이 모든 파일들이 동시에 처리 되므로 서버의 아키텍쳐가 단순화 됩니다. ( 물론 일반적으로 직접 구현한다면 큐를 통한 순차 처리를 하는 방법을 쓸게 되겠지만, 그런 경우라면 큐가 너무 쌓이지도, 혹은 서버의 성능이 과도하여 비용이 낭비되지 않도록 꼼꼼한 설계가 필요합니다. )

GCF는 Node.js를 사용할 수 있으면 누구나 어렵지 않게 사용이 가능합니다. 현재는 Node.js 만 지원하고 있으며 저희 회사에서는 몇가지 다양한 이벤트들을 Pub/Sub 으로 받은뒤 GCF를 이용해서 Slack 으로 보내서 사람이 인지 할 수 있도록 하고 있습니다.

실제로 사용하는 방법이나 더 많은 정보들은 추후 추가로 포스팅 하도록 하겠습니다.

======

Cloud Spanner

이 서비스를 보면서 개인적으로는 구글이 기존의 네이밍 방식을 버리나..싶기도 했습니다. 다른 서비스들의 경우 직관적인 기술적인 이름을 선택했는데, 이 서비스는 SQL DB라는것을 전혀 이름에서 알수가 없어서요.

쉽게 설명하면, 자동화된 수평확장! 글로벌 단위 일관성을 제공해주는 관계형 데이터 베이스 라고 설명이 되어 있는데요. 자세히 설명을 해보겠습니다.

구글에서 설명하는 내용입니다.
Spanner 와 전통적인 SQL 그리고 No-SQL를 비교해놨습니다.

쉽게 말하면 두가지의 장점만 모아놨다고 적혀 있습니다. 음. 구글의 인프라를 최대한 활용해서 아무리 극한 환경의 Request 에서도 동작할 수 있는 SQL DB를 만들었다고 보면 될듯 합니다. 수평확장은 쉽게 말해서 자동으로 샤딩을 해준다고 이해하면 될듯 합니다. 리플리케이션도 자동으로 해주고, 페일오버의 개념을 완전히 바꿔 버렸다고 합니다. 내부적으로 동작하는 방식은 정확히 알수 없지만, 좀더 많은 정보들이 오픈되기를 기다려 봐야 할듯 합니다. 권장되는 3노드를 세팅할 경우 읽기 성능은 초당 3만 쿼리 / 쓰기는 6천쿼리의 성능이 나온다고 합니다. 좀 더 많은 정보는 많은 사람들이 테스트를 수행해 봐야 알듯 합니다 🙂

[ 2편으로 이어집니다. ]

Be First to Comment

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.