전 세계적으로 점점 더 많은 플레이어가 멀티플레이어(multiplayer) 게임을 선호하게 되면서 개발자는 증가하는 수요에 대응하고 탁월한 플레이 경험을 선사하면서 복잡한 글로벌 인프라를 관리하도록 게임을 스케일링해야 하는 과제에 직면했다. 대부분의 게임사는 고액의 비용으로 자체 솔루션을 구축해 관리하거나 개발자의 선택과 통제 권한을 제한하는 사전 패키지 솔루션을 사용하고 있다.

구글 클라우드는 올해 초 베타버전으로 발표됐던 오픈소스 게임 서버 스케일링 프로젝트 아고네스(Agones) 기반 관리형 서비스 게임 서버 서비스(Game Servers)를 정식으로 서비스한다고 밝혔다.

게임 서버 서비스는 쿠버네티스(Kubernetes)를 컨테이너(container) 오케스트레이션(orchestration)에 사용하고 아고네스를 게임 서버 플릿(fleet)에 대한 오케스트레이션과 라이프사이클 관리에 활용한다.
이제 게임 프로덕션 워크로드에서 게임 서버 서비스를 보편적으로 이용할 수 있다. 게임 서버 서비스는 인프라 관리를 단순화해 개발자가 플레이어를 위한 더 나은 게임을 만드는 데 자원을 집중하게 한다. .

게임 서버 클러스터(cluster)는 게임 서버 서비스의 가장 기본적인 개념으로 단순하게는 아고네스를 실행하는 쿠버네티스 클러스터를 뜻한다. 사용자가 클러스터를 정의하면 그 클러스터는 렐름(realm)에 추가되어야 한다. 렐름은 게임 클라이언트의 관점에서 결합력 있는 유닛으로 취급할 수 있는 게임 서버 클러스터의 사용자 정의 그룹이다. 게임이 어떤 식으로 어느 지역에서 성공을 거두는 것과 관련 없이 게임의 고가용성과 원활한 스케일링 경험을 보장하기 위해서는 단일 렐름에서 여러 클러스터를 실행해야 한다.

게임 서버 서비스 개념
게임 서버 서비스 개념

렐름과 클러스터를 정의한 후 배포(deployments)와 구성(configs) 개념을 사용해 게임 소프트웨어를 롤아웃(roll out)할 수 있다. 게임 서버 배포는 전 세계 게임 서버 클러스터 어느 곳이든 배포할 수 있는 게임 서버 소프트웨어의 글로벌 기록이다. 게임 서버 구성은 클러스터 전체에 출시될 게임 서버 버전의 세부 정보를 지정한다.

게임 개발자는 언제든지 게임 서버 서비스에서 벗어나 아고네스 클러스터를 직접 관리할 수 있다. 언제나 쿠버네티스 클러스터에 직접 접속할 수 있어 아고네스 설치에 게임별 추가사항을 원하는 대로 넣을 수 있습니다. 이처럼 개발자는 항상 제어 권한을 가진다.

게임 서버 서비스는 구글 쿠버네티스 엔진(Google Kubernetes Engine)에서 실행되는 클러스터를 지원하며, 구글 클라우드나 다른 클라우드 혹은 온프레미스(on premise) 등 어떤 환경에서도 클러스터를 실행할 수 있는 기능을 개발 중이다.

개발자는 하이브리드 및 멀티 클라우드로 플레이어에게 적합한 곳 어디서든 자유롭게 게임 서버 워크로드를 실행할 수 있다. 적합한 하이브리드 및 멀티 클라우드 환경 전반에서 글로벌 플릿(fleet)의 비용을 최적화하기 위해 게임 서버 서비스의 맞춤형 스케일링 정책을 이용할 수 있다. 게임 서버 서비스는 2020년 말까지 무료로 제공되며 고객은 쿠버네티스 클러스터 사용에 대해서만 비용을 지불하게 된다.

이향선기자 hslee@nextdaily.co.kr

관련기사

저작권자 © 넥스트데일리 무단전재 및 재배포 금지