■プロジェクト名
オンラインゲーム・クラウド技術ユースケース開発
■プロジェクト期間
2015年10月~2016年3月
■プロジェクト概要
クラウド環境上のオンラインゲーム基盤をユースケースとして、OSSを活用したクラウドリソースのオートスケールを実現するための技術開発を行う。
■活動背景
オンラインゲームにおいては、サービス提供者は、そのプロモーションや日々の遊戯状況を追いながら、サーバのスケールアウトやスケールアップを行う必要がある。 大手のサービス提供者は独自のオートスケールを組み込んでいるが、多くのサービス提供者は人手による対応を行っている。人手による対応の場合、口コミやユーザ主導のイベントなどで予想外のアクセスが集中し問題が発生したり、夜中、急場での作業が発生したりする。そのため、サービス提供者は利用状況に応じてリソースを柔軟に増減することができる環境を求めている。
また、オンラインゲームは、主に以下のようなゲーム形態が採用されている。
・MO(Multiplayer Online)型
少人数(2~100)で短期にリアルタイムなアクションを楽しむゲーム
・MMO(Massively Multiplayer Online)型
大人数(200~10000)で長期的にマルチプレイするゲーム
クラウド技術を活用することで、両者のゲーム形態を容易に実現する環境を提供できると考えられる。
■活動概要
以下の3段階に分けて活動を行う。
(1)クラウド・ネイティブ・アプリケーションの実装技術であるReal Application Centric Kernel(以下、RACK)を活用してオンラインゲームプラットフォームであるモノビットエンジンのクラウドネイティブ化を行い、サンプルプログラムにてオートスケールの効果を確認する。
(2)検証結果をもとに、オンラインゲームののプロトタイプを企画・検討し、実証実験を行う。
(3)検証結果を対外的に発表する。
2015年度においては(1)の活動を行った。
■開発内容
クラウドのスケール性を効果的に活用するためには、アプリケーションの利用状態によるオートスケールをリアルタイムに実現することが重要である。
クラウドネイティブアプリケーションでは、アプリケーションの状態や利用者の状態によるリソースのオートスケールを実現することを目的としている。したがって、 OSSのクラウドネイティブアプリケーションを実現する技術の一つであるRACKを本活動で採用する。従来のアプリケーションとクラウドネイティブアプリケーションのスケールの考え方を示す。
本活動では、クラウドのオートスケールの機能を効率よく測定するため、短時間で必要リソースの増減が多い対戦型バトルゲームを想定して、サンプルプログラムを開発した。本サンプルプログラムでは、モノビットエンジンにおいてバトル情報を管理するサーバであるバトルInfoサーバからの情報により、バトルサーバの増減の必要性を判断し、自動的に生成・削除を行う。
オンラインゲームでのクラウドネイティブアプリケーションの実装例を示す。
■開発成果
期待するオートスケールの実装が容易に行えたことを実証できた。サンプルとなるオンラインゲームの遊戯時において、バトルInfoサーバで管理しているバトルサーバの利用状況が変化し、バトルサーバの数の増減が必要となる操作タイミングでRACKが機能し、バトルサーバの増減が行われることを確認した。
本活動の内容は、OpenStack Summit 2015 Tokyo で発表し、OpenStackコミュニティにて高い評価を受けた。
■成果報告
日時:2016年2月5日(金)10:00~17:00
場所:沖縄IT津梁パーク 会議室(うるま市)
Comentarios