30일 진행한 게이밍 온 구글 클라우드(Gaming on Google Cloud)에서 넷마블 류철민 시니어 웹 개발자가 'GKE(Google Kubernetes Engine)를 활용한 대량 게임 시뮬레이션 자동화'를 주제로 발표를 진행했다.
류철민 웹 개발자는 게임 시뮬레이션을 '특정 게임 콘텐츠를 대량으로 시뮬레이션 및. 분석하여 게임 출시 전 충분한 데이터를 수집하여 활용하는 행위'라고 정의했다.
넷마블은 초기 윈도우 방식으로 제한돼 있었기 때문에 게임 시뮬레이션 프로그램(exe)를 생성하는 방식으로 운영했다. 고성능 PC에 N회를 진행하고, 해당 로그파일을 클라우드 스토리지에 전송하는 방식으로 운영했다. 오토 모드 실행파일을 만들어 PC에서 실행하고 기다리는 방식이다. 이를 통해 수 백번의 시뮬레이션 결과를 사람의 손으로 직접 플레이 하지 않고 대량 로그의 적재 및 쿼리 분석을 통해서 리포트 형태로 제공했다.
해당 방식은 특정 게임 콘텐츠에서만 유효했기 때문에 내부에서는 더 많은 수 만번의 실행 횟수, 그러면서도 리소스의 추가 투입 없는 시뮬레이션에 대한 고민이 이뤄졌다.
이러한 고민은 GCE 도입을 통해 VM 200대를 운영하며 대량 시뮬레이션을 해결했다. 류철민 웹 개발자는 이 당시 "새로운 지평을 여는 것 같았다"라고 회상했다.
다만, 계속해서 시뮬레이션 횟수를 늘리기 위해서 윈도우VM 수 천대를 사용하면 라이선스 부분에서 비용이 대폭 증가해 한계가 있다고 생각했기 때문에 구글의 오픈 소스 플랫폼 쿠버네티스(Kubernetes)를 선택했다. 넷마블은 GKE를 통해 수 백만 번의 시뮬레이션 결과를 수 천명의 사람이 손으로 직접 플레이 하지 않고 비용을 최소화하여 안정성 높은 시스템으로 결과를 도출하는데 성공했다.
류철민 웹 개발자는 "이러한 자동화 과정이 누군가에게는 불편할 수 있는 디스토피아적 기술이지만, 꼭 필요한 도전이었다"라고 소회하기도 했다.
[이정규 기자 rahkhan@chosun.com] [gamechosun.co.kr]