안녕하세요. 클루커스 신동준입니다. 이번에는 클라우드 서버를 활용한 게임 서비스에 대해서 살펴보도록 하겠습니다. 게임이 성공하기 위해서는 다양한 요소들이 작용을 하게 되는데요. 게임의 장르, 쉬운 플레이와 조작, 게임 그래픽, 스토리, 이류화 기획, 그 다음 게임 시스템, 게임성, 게임의 난이도, 그리고 게임 커뮤니티라든가 게임 운영, 그리고 안정성 등을 들 수 있는데요. 이러한 게임 서비스 중에서 또 하나 중요한 요소인 이 안정성인데요. 안정성은 빠른 클라이언트 다운로드 라든가 레이턴시, 즉 외기 없는 서비스가 굉장히 중요한 요소가 될 것 같습니다. 다음으로는 게임플레이 플러그와 인프라 시스템이 어떻게 연동되어 있는지를 살펴보도록 하겠습니다. 여러분들이 일반적으로 광고를 보거나 아니면 지인의 소개로 통해서 게임소개 페이지를 접속하게 됩니다. 그런 경우 다운로드를 누르고 게임 설치를 하게 되는데요. 이때 CDN 서비스를 통해서 파일 다운로드가 이루어지게 됩니다. 그리고 설치가 마무리가 되면 게임 실행을 하게 되는데요. 경우에 따라서는 다시 설치페이지로 가게 됩니다. 이 경우는 업데이트나 패치가 필요한 경우인데요. 이때도 역시 CDN 서비스를 통해서 게임 패치가 이루어지게 됩니다. 게임 설치가 마무리가 되면 다시 게임 실행을 하게 되는데요. 이때 회원가입을 하거나 로그인을 하게 되는데요. 회원 가입을 할 때 입력한 정보는 데이터베이스에 저장이 되게 되고 그 다음 로그인 때 그 데이터베이스에 있는 아이디와 패스워드 정보를 인증해서 게임 로그인 이루어지게 됩니다. 그리고 나서 게임 플레이를 하게 되는데요. 게임 플레이 정보는 게임 서버를 통해서 통신을 해서 정보를 주고 받게 되고요. 게임 플레이의 정보는 다시 데이터베이스에 저장이 됩니다. 이런 게임 서비스 인프라를 준비하기 위해서는 되게 다양한 요소들을 준비를 해야 되는데요. 여러분이 보시는 이 장표의 표는 전체 게임 서비스를 위해서 준비 해야 될 요소들을 리스팅 하고 있습니다. 되게 다양한 요소들이 있는데요. 홈페이지의 구축부터 시작해서 게임 클라이언트 개발 그 다음에 네이밍 마케팅은 어떻게 할 것이며 이러한 준비들을 하게 되는데요. 그 중에 굉장히 중요한 부분이 게임 서버 환경을 구축하는 부분입니다. 서버 스펙을 결정하고 준비하고 CDN을 협의하고 그 다음에 게임 서버를 어떻게 설치하고 어떻게 서비스 할 것인가에 대한 협의를 하고 파일을 어떤 식으로 다운로드 받게 하고 이런 부분들 준비하게 되는데요. 이런 준비과정에 필요한 요소들을 살펴보도록 하겠습니다. 최근에 게임사들이 어떻게 클라우드를 활용하고 있는지를 살펴보고 넘어가야 될 것 같은데요. 국내 게임 시장의 3N 이라고 하는 넷마블, NC, 넥슨이 전체 시장의 50% 를 차지 한다고 합니다. 나머지 50% 를 중견 중소 게임사들과 스타트업 회사들이 차지하고 있는데요. 클라우드 사용에 있어서 대형 게임사들 경우에는 멀티클라우드 혹은 하이브리드 클라우드 경향을 나타내고 있고요. 중소 게임사의 경우에는 퍼블릭 클라우드를 사용하고 있습니다. 넷마블의 경우에는 제가 알고 있게 된 파이브 클라우드와 퍼블릭 클라우드, 퍼블릭 클라우드 경우에는 애저, AWS, GCP같은 주요한 외상 클라우드사들을 모두 사용하고 있고요. 여기에 더불어 데이터센터를 활용하고 있습니다. 넥슨과 NC도 비슷한 형태로 서비스를 제공하고 있습니다. 게임 서비스에서 클라우드를 사용하는 이유에 대해서 짚고 넘어가야 될 것 같은데요. 탄력성과 확장성 그리고 유연한 자원 활용과 초기 비용 절감을 들 수 있습니다. 여러분 왼쪽에서 보는 그래프는 펍지의 다운로드 숫자와 접속자 숫자입니다. 보시면 시간이 지날수록 급속도로 접속자가 증가하는 것을 확인할 수 있습니다. 이 경우 하단에 보시면 눈금 하나가 1개월을 나타내는데요. 한 달이 지날 때마다 엄청난 수의 접속자가 늘어났는데요. 제가 앞서서 말씀드렸던 것처럼 인프라를 세팅하기 위해서는 최소 6주에서 길면 12주 정도의 시간이 필요합니다. 우리가 게임 서비스가 어느 정도 접속자가 들어올 거라고 예측을 다 할 수 있다고 하면 IDC 를 통해서 미리 준비하고 서비스를 하면 되겠죠. 그런데 이 경우와 같이 사용자가 급속도로 증가할 경우 미리 예측하거나 미리 준비하기가 상당히 어렵습니다. 이러한 경우에 클라우드가 유용하게 활용이 되고 비용을 절감할 수 있는 요인으로 작동할 수 있습니다. 두 번째 보시면 왼쪽에 있는 게임은 어느 유명한 RPG게임의 서비스 곡선인데요. 초기에는 상당히 많은 유저가 접속했다가 시간이 지날수록 급격하게 사용자가 감소함을 볼 수 있습니다. 이 경우에 우리가 유명 IP고 초반에 마케팅 비용을 어마어마하게 집행할 것이기 때문에 접속자가 몇십만이 들어올 거라고 예상하고 인프라를 세팅 하게 됩니다. 그 경우 급속도로 사용자가 감소함에 따라서 많은 리소스가 유휴자원으로 남게 되는데요. 이럴 경우에 초기비용을 엄청나게 허비하는 케이스가 될 수 있겠죠. 하지만 클라우드를 사용했을 경우에는 초기에는 많은 사용자를 받아 낼 수 있고 그 사용자가 빠짐에 따라서 필요 없는 리소스를 빼면서 비용을 관리할 수 있는 이것이 바로 클라우드의 장점일 수 있습니다. 다음 이유로는 서비스 지역을 들 수 있습니다. 여기 보시는 맵은 마이크로소프트 애저의 글로벌에 있는 데이터센터 위치를 표시하고 있는데요. 여러분들이 국내 한국 서비스만 하는 경우도 있지만 대부분의 게임들은 해외 글로벌 서비스를 목표로 해서 시장을 확대해 나가고 있습니다. 그런데 글로벌 서비스를 하기 위해서 한국에만 데이터센터를 두게 되면 서비스 사용자들 입장에서는 물론 서버사용량이 적다고 할지라도 상당히 딜레이 라든가 불편함을 호소할 수 밖에 없습니다. 이럴 경우에 대비해서 다양한 곳 위치에 데이터센터에 서버를 설치하고 서비스를 제공할 수 있는 것이 결국에는 클라우드의 장점 중에 하나입니다. 앞서서 살펴본 게임 서비스에서의 클라우드 사용 이후에도 여러 가지 이유가 있을 수 있는데요. 유사한 서비스를 통해서 검증된 클라우드의 안정성, 다음에 사용자가 직접 세팅 해야 될 모든 서비스를 클라우드에서 제공하고 있다는 편의성, 다음에 초기 투자 비용을 절감할 수 있다는 비용 관리 측면, 그리고 하드웨어와 소프트웨어 업데이트 업그레이드가 필요 없다는 관리 편의성도 있습니다. 그리고 실시간으로 서버 수용량을 늘렸다 줄였다 할 수 있고 지역을 수시로 확대했다 줄였다 할 수 있는 확장성이 있고요. 마지막으로 보안성을 둘 수 있는데요. 애저를 예를 들어서 말씀드리면 애저에는 디도스 프로텍션이 기본 기능으로 제공되어 있습니다. 클라우드를 선택할 때 고려해야 될 요소들이 몇 가지가 있는데요. 어떤 OS 를 사용하고 있고 어떤 데이터베이스를 사용하느냐 그리고 네트웍이 얼마나 민감한 게임이냐, 예를 들어서 MMORPG 냐, FPS냐, 아니면 수집형 RPG 냐, 아니면 방치형 RPG 냐, 이런 것들에 따라서 달라질 수 있고요. 서비스 지역을 어디로 할 거냐도 중요한 요소 중의 하나입니다. 그리고 비용요소, 안정성, 확장성도 중요한 요소이구요. 또 하나 들 수 있는 부분들이 게임 서비스를 위한 서드파트 솔루션이 어떤 것들이 있느냐입니다. 이러한 것들을 잘 활용하면 게임 서비스를 적극적으로 안정적으로 그리고 유용하게 활용할 수 있게 됩니다. 그리고 마지막 요소 중에 하나가 환율이 인데요. 클라우드 벤더마다 적용하는 환율의 차이가 있습니다. 다음으로는 어떤 클라우드 사업자가 있는지 살펴보도록 하겠습니다. 해외 클라우드로는 대표적으로 마이크로소프트 애저, aws, 구글 클라우드, IBM 클라우드, 중국계 클라우드죠. 텐센트 클라우드와 알리 클라우드 등이 있고요. 국내에는 대표적으로 네이버 클라우드 플랫폼, KT 유클라우드, 토스트 클라우드 등이 있습니다. 다음으로는 클라우드를 어떻게 사용하는지에 대해서 설명을 드릴 건데요. 앞에서 말씀드렸던 것처럼 클라우드의 특징 중의 하나가 사용자가 직접 웹을 통해서 리소스를 세팅하고 사용할 수 있다는 점이 큰 특징 중의 하나 였습니다. 그렇기 때문에 사용자가 웹페이지를 통해서 직접 클라우드를 세팅하고 사용을 할 수가 있는데요. 이 경우에는 신용카드를 통해서 사용한 만큼 후불로 비용을 납부하게 됩니다. 이 경우에는 퍼블릭 클라우드 홈페이지를 통해서 사용하게 되고 계약 기간이 별도로 존재하지 않습니다. 구매는 좀 전에 말씀드렸던 것처럼 신용카드와 후불제 시스템을 제공을 하게 되고요. 구매금액은 사용한만큼 비용이 청구됩니다. 그리고 언제든지 구매취소가 가능합니다. 우리 서비스가 중단 해야 될 시점이 오면 그때 우리가 바로 중단할 수 있습니다. 하지만 장애가 발생했다거나 기술 지원이 필요한 상황에서는 상당히 어렵습니다. 기본적으로 클라우드는 클라우드 자체 인프라만 제공하기 때문에 그 외의 서비스에 대해서는 과금이 청구되는 유료서비스로 제공이 되고 있는 상황입니다. 그러기 때문에 보통은 전문 클라우드 파트너사를 활용하게 되는데요. 이 경우에는 계약 기간이 1년 혹은 3년 케이스 바이 케이스로 계약 기간을 정할 수도 있고요. 앞에서 말씀드렸던 웹 다이렉트처럼 별도의 계약기간 없이 사용한 만큼 후불제로 과금하는 방식도 사용할 수가 있습니다. 그리고 또 하나의 방법이 있는데요. 선불로 계약을 하고 클라우드를 사용하는 방법 인데요. 이 경우에 많은 클라우드가 선불제 시스템에 요금제를 제공하고 있는데 이 경우는 많은 디스카운트를 받을 수 있는 혜택이 있습니다. 그래서 약정을 하거나 선불 구매를 하게 됨으로써 사용에 대한 디스카운트를 받을 수 있는 시스템을 파트너를 통해서 사용하게 됩니다. 이럴 경우에 장점이 있는데요. 파트너에서 기본적으로 클라우드 시스템에 대한 아키텍처링이나 장애 내용 등 전문 파트너가 기술지원을 제공하게 되고요. 크레딧이라든가 아니면 여러가지 다양한 지원 프로그램들을 파트너가 찾아서 고객사에 제공하는 경우가 많습니다. 단점은 파트너를 통하기 때문에 구매취소가 조금 시간이 걸릴 수 있고요. 기본 기술지원 외에 아까도 말씀드렸지만 아키텍처링이라든가 아키텍처 리뷰 초기세팅 등에 대한 기술 지원 외에 장애대응 이라든가 모니터링 이런 부분들은 별도의 비용이 발생한다는 특징이 있습니다. 다음은 글로벌 네트웍을 좀 살펴볼 텐데요. 처음 보실 부분은 마이크로소프트 애저의 글로벌네트워크 입니다. 전 세계 50곳이 넘는 데이터센터를 갖고 있고요. 굉장히 많은 네트웍을 통해서 데이터 센터 간의 연결을 하고 있습니다. 구글 클라우드 플랫폼인데요. 전 세계 24개 네트웍 데이터센터를 보유하고 있고, 구글 클라우드 플랫폼의 가장 큰 특징은 모든 네트웍을 직접 구축하고 있다는 부분들입니다. 데이터센터 간의 광케이블을 직접 깔아서 연결 하고 있습니다. 다음은 아마존 웹 서비스인데요. 아마존 웹 서비스는 전세계 24군데 이전을 세팅하고 있고요. 77가지의 서비스를 제공하고 있습니다. 그래서 이런 글로벌, CSP라고 하는데요. AWS, MS 애저, GCP가 다양한 요금 체계를 제공을 하고 있습니다. 살펴볼 가장 첫 번째가 RI 인데요. 리저브드 인스턴스인데 이거는 1년 혹은 3년의 계약을 하는 겁니다. 약정을 하는 거죠. 우리가 전세, 월세를 하는 거랑 같은 방식이라고 보시면 될 것 같아요. 내가 1년 동안 이 VM을 장비를 사용을 할게요, 라고 약정을 하고 그만큼을 할인을 받습니다. 최대 75%, 72% 이렇게 나와 있는데요. RI를 통해서 할인을 받아서 활용할 수 있는 장점이 있고요. 다만 게임 서비스에서는 이런 RI가 어려운 것들이 앞서서 말씀드렸던 것처럼 초기에는 사용자가 폭발적으로 증가했다가 시간이 지남에 따라서 사용자가 감소할 수 있기 때문에 전체 시스템에 RI는 어렵겠죠. 그래서 보통은 pay as you go 라는 사용한 만큼 과금하는 방식의 요금체계를 많이 사용하게 되고요. 다만 서비스가 어느 정도 안정화 돼서 일정 수준의 트래픽이 꾸준하게 나올 경우 이 경우에는 RI를 사용하거나 여기에 있는 애저의 MACC와 같은 Consumption Commitment라는 프로그램입니다. 우리가 1년 동안 예를 들어서 5억을 사용하겠다고 약정을 하게 되면 그만큼의 디스카운트를 받고 사용을 하게 됩니다. 이러한 다양한 프로그램들이 있기 때문에 이러한 다양한 프로그램들을 앞서 말씀드렸던 파트너를 통해서 도움을 받으실 수가 있고 경우에 따라서는 각각의 클라우드 사업자를 통해서 직접 서비스를 제공받으실 수 있습니다. 다음으로 게임 서비스를 위해서 중요한 요소 중에 하나가 CDN 서비스인데요. CDN 서비스는 Contents Delivery Network의 약자입니다. 게임이 CDN 서비스의 가장 큰 고객 중에 하나인데요. CDN 서비스는 엄청난 양의 데이터를 전송하기 위한 기술입니다. 예를 들어서 최근에 4K를 넘어서 8K 동영상까지 서비스가 되고 있는데요. 그런 고화질 동영상은 사이즈가 엄청나게 크죠. 그런 큰 사이즈의 파일들을 빠른 속도로 전송할 수 있게 지원해 주는 것이 바로 CDN 서비스입니다. 여러분들이 많이 보는 유튜브 라든가 다양한 동영상 스트리밍 서비스도 이러한 CDN 서비스의 기반으로 서비스가 되고 있습니다. 이 CDN 서비스의 장점은 컨텐츠를 빨리 전송하고 클릭 시에 새로운 컨텐츠에서 즉각적으로 액세스 할 수 있도록 경험을 제공을 합니다. 결국에는 빠른 다운로드 클라이언트 다운로드를 제공할 수 있는 것들은 이러한 CDN 서비스를 활용한다는 것입니다. 이런 CDN 서비스를 이용하는 이유로는 대용량 게임 클라이언트 설치 파일이죠. 설치 파일을 다운로드 혹은 게임 업데이트시에 패치 파일 전송을 빠르게 하기 위해서 사용하게 됩니다. 제가 초기에 MMORPG 서비스를 할 때 였는데요. 지금부터 십수 년 전인데 초기 MMORPG 서비스 할 때는 어떻게 클라이언트를 고객들에게 전달을 했냐 하면 씨디에 클라이언트를 구워서 그거를 오프라인 PC 방 이라던가 영업망을 통해서 배포를 했었습니다. 그런데 일정 시간이 지나고 나서부터는 CDN 서비스가 가능해졌기 때문에 CDN을 통해서 빠른 파일 다운로드가 가능해졌습니다. 그런데 이 CDN도 선정할 때 어떤 CDN을 사용할 것인지 결정할 때 고려해야 될 사항이 있습니다. 어느 지역에서 서비스를 할 거냐, 국내에서 서비스 할 거냐, 해외에서 서비스 할 거냐에 따라서 달라질 수 있습니다. 결국에는 가격이 중요한데요. 로컬에서만 서비스하는, 국내에서만 서비스하는 CDN 서비스가 있고 글로벌 CDN 서비스가 있습니다. 그렇기 때문에 항상 비교견적을 통해서 CDN을 결정 할 필요가 있고요. 어느 정도까지 서비스를 제공하느냐 서비스 지원, 서비스 목적에 따라서 CDN을 결정해야 되고요. 가격, 그 다음에 구매방식, 신뢰성이 있는데요. 구매 방식에는 약정할인이 있습니다. CDN 도 어느 정도까지 약정을 하느냐에 따라서 디스카운트가 달라지게 됩니다. 그래서 여러분들이 CDN을 사용할 때 기본적으로 클라우드에도 CDN 서비스를 제공하긴 하지만 그 CDN서비스 외에 CDN전문업체에 견적을 통해서 현명하고 합리적인 사용을 할 수 있다는 점 참고하시기 바랍니다. 우리나라 게임 시장이 2010년을 전후 해서 드라마틱하게 변화를 맞게 됩니다. 기존의 PC 온라인 게임시장 중심에서 모바일 게임 시장 중심으로 급격한 변화를 경험하게 되는데요. 이 배경에는 클라우드 서비스의 등장과 이를 기반으로 한 다양한 어플리케이션 서비스, 그리고 스마트폰의 보급이 맞닿아 있습니다. 스마트폰이 급속도로 보급됨에 따라서 다양한 어플리케이션 서비스들이 등장하게 되었고요. 이 다양한 어플리케이션 서비스를 가능하게 했던 것들이 결국엔 클라우드 서비스 입니다. 예를 들어서 굉장히 많은 모바일 게임들이 그 시기 이후에 등장하게 되는데요. 중소 게임사들이 모바일 게임 서비스를 직접 하기 위해서 데이터센터를 세팅하기에는 상당한 무리가 따릅니다. 왜냐하면 앞서서 말씀 드렸던 것처럼 초기에 많은 투자비용이 들어가고 이를 세팅하기 위한 인력과 시간, 노력이 필요하게 됩니다. 그런데 클라우드 서비스를 사용함으로 인해서 그 시간과 비용을 급격하게 줄일 수 있게 됐고 많은 중소 게임사들이 직접서비스를 가능하게 했던 부분에 그 배경에는 클라우드 서비스가 결정적인 역할을 하게 됩니다. 이러한 클라우드 서비스를 배경으로 해서 다양한 서비스 형태의 게임들이 등장하게 됐고 특히나 카카오를 통해서 다양한 캐주얼 게임과 다양한 장르의 게임들이 폭발적으로 그 사용자를 늘려가면서 우리나라 게임 시장은 기존의 PC 온라인에서 모바일 게임 시장으로 급격하게 전환되게 됩니다.
01. 이 강좌에 대해서
최근 디지털 콘텐츠의 클라우드 서버 사용이 증가함에 따라 클라우드 서버에 대한 소개 및 게임 업계에서의 사용 현황, 혜택, 대응 등에 대해 알아봅니다.