予想できない爆発的ヒット、その時インフラには何が必要か – GCP とゲーム業界

予想できない爆発的ヒット、その時インフラには何が必要か – GCP とゲーム業界

ビジネス

投稿日:2018/06/03

この記事は、2015年5月、2016年10月、2016年12月頃に公開された Google Cloud Platform Japan Blog の記事をもとに編集・執筆しています。

はじめに

クラウドサービス Google Cloud Platform (以下、GCP )は、様々な業界で利用されています。家庭用ゲーム機からオンラインへと移行しているゲーム業界でも例外ではありません。ゲーム業界においても、 GCP の利用が拡大しています。今回はゲーム業界にける、 GCP のユーザー事例を通して、 GCP がゲーム業界で拡大する理由について説明します。

スマホゲーム市場でヒット作を生み出す

オンラインゲーム市場では、成長を続けています。オンラインゲーム市場の中でも、特にスマートフォンゲームの市場の中でヒット作を生み出し続けている株式会社 Aiming での事例を紹介します。
オンラインゲームにおいてインフラが安定して稼働することが、ゲームを市場に展開する上で重要な要素となります。株式会社Aiming におけるインフラ部門の役割は多岐にわたり、その役割の一部としてサーバー構築も入っています。 Aiming では、サーバーを構築する際、今後開発するゲームについて開発メンバーと話し合って構成や進め方を決めていました。
Aiming においても、サービスを拡張していく上で、サーバー構築等のインフラ管理が負担になり、クラウドへの移行を考えました。Aiming におけるクラウドの採用基準は、当初、安さを基準としていましたが、現在は会社の状況や規模も変化したため、安さだけでなく、使い勝手や運営までを見越した選定をしています。
Aiming では、まず、ロードオブナイツの海外版を GCP へ移行しました。当初はクラウドで一番実績のある AWS のEC2 を使い、その後、別のクラウドサービスへ移行しました。しかし、このクラウドサービスを利用したところ、オンラインゲーム市場において一番重要となるべき安定性が低いという問題に直面したため、より安定性の高いクラウドサービスを探していました。そこで、安定性の評判が高い GCP の導入を決断することになりました。
さらに、安定性だけでなく、Aiming の業務にとって Google Apps for Work (現 G Suite) との相性が良かったことも同社にとってメリットでした。Aiming では、業務を拡大していく上で、セキュリティをさらに意識していく必要があると考えていたため、認証を Google Apps (現 G Suite )と連携することでよりセキュリティが強固になりました。

Google App Engine を起用

携帯電話向けの SNS としてスタートし、その後のゲーム市場の潮流を大きく変える要因として「モバゲータウン」(現・Mobage)が挙げられます。その運営会社である株式会社ディー・エヌ・エー(以下、DeNA)が、「AndApp(アンドアップ)」というゲームプラットフォームをスタートさせています。「AndApp(アンドアップ)」においても、GCP が利用されています。
スマホ向けゲーム市場での地位を確立した DeNA ですが、かつてはスマホ向けゲーム市場が、過当競争状態になっていたことから、将来に向けた不安がありました。
そこで DeNA では、過当競争状態のスマホ向けゲーム市場において、ゲーム企業のパートナーとの存在を確立するために、DeNA がプラットフォーマーとして新しい場を用意し、既存タイトルの伸びしろを活かすことを考えました。

PC マーケットに向けたプラットフォームの開発

そのために、注目したのが、スマホ登場後も長年規模が減らずに存在していた PC 市場でした。DeNA が提供する AndApp は、スマートフォン向けのゲームを PC でも遊べるようにするプラットフォームです。かつてスマホ向けゲームは、高機能になるあまり、古い端末や性能の低い端末だと快適にプレイできないということがありました。そこで、 AndApp のようなサービスを提供し、PC でスマホ向けゲームをプレイできるようにすれば、より多くの人が快適にスマホゲームを楽しめると DeNA は考えたそうです。
AndApp を開発するにあたり、Google App Engine を使うことにしたそうです。そうすることで、高性能スマホを持っていない人から、そもそもスマホを所有しない人まで、これまでゲーム開発企業側が取りこぼしていた層にアプローチできるようになったそうです。
国産スマホゲームの多くは「Unity」というマルチプラットホームのゲームエンジンを採用しているため、基本的にはそれをWindows 向けに再構築するだけで移植可能となります。また、AdobeAir や独自の環境で作られたゲームでも PC 向けに移植することはそこまで難しくはないそうです。
かつての DeNA では、自社で大規模なデータセンターを保有しており、優秀なインフラエンジニアを多く抱えていることでも知られていました。同社のゲーム作品は原則的にオンプレミスで運用されていました。しかし、同社では、設備コストだけでなく、運用コストなども含めたトータルコストと将来に向けた選択肢を用意しておきたいと考えたため、オンプレミスではなく、クラウドサービスへの移行を決め GCP を選んだそうです。

インフラではなくアプリケーション開発に集中できるように

DeNA において、GCP を導入するにあたりこだわったのが、インフラ運用作業の軽減でした。インフラ設計、運用、メンテナンスなどを考えないようにしたかったそうです。
その結果、採用されたのが Google App Engine でした。Google Container Engine( GKE 、現 Google Kubernetes Engine)や Google Compute Engine(GCE)はあえて使わず、Standard Environment 環境での運用としました。
当初、 GKE や GCE なども検討しましたが、これらを使って、細かくカスタマイズしていくと、身軽さを損なってしまうと考えたそうです。インフラ運用については全て Google に任せ、 DeNA はアプリケーション作りに集中したいと考えました。
こうした選定により、開発効率が大きく改善しました。それまでどうしてもサービス開発を行うにあたり、随所でインフラチームとの相談が必要でしたが、Google App Engine 環境下ではそのような作業が不要になりました。無駄な作業が減り、各エンジニアがコードを書くことだけに専念できるため、スピード感が格段に向上したそうです。
これらによって、コスト面でもプラスの効果が発生しています。トータルでの運用コストがオンプレミスの3分の2ほどになったそうです。

世界的ヒットの Pokémon GO も GCP を採用

Pokémon GO は Google Cloud の多くのサービスを利用したモバイル アプリケーションですが、なかでも Google Cloud Datastore が Pokémon GO の全体的な人気を端的に示す指標となりました。Pokémon の世界を記録するプライマリデータベースとしての役割を果たしているからです。
Pokémon GO は、世界的な現象を巻き起こしたモバイルゲームであるだけでなく、コンテナベース開発の最も重要な実践例の 1つでもあります。このゲームのアプリケーションは、オープンソースの Kubernetes プロジェクトをベースにした Google Container Engine(GKE、現 Google Kubernetes Engine)で実行されています。
Niantic が GKE を選定したのは、コンテナクラスタを世界規模で自動配置できるからです。そうすれば、開発チームはユーザーに喜ばれる面白いサービス開発に集中できます。こうして Niantic は Google Cloud を利用して、数百万人のプレーヤーが楽しめるサービスとして Pokémon GO を開発、運用し、継続的に調整や改良を施してきました。

新バージョンへの移行にも着手しスループットの向上を実現

Niantic と Google CRE チームが行った特徴的な試みの 1つが、コンテナクラスタのノードを 1,000 以上増やせる GKE の新バージョンへのアップグレードです。この取り組みは、大きな期待が寄せられていた日本での Pokémon GO のリリースに備えたものでした。
新バージョンへの移行は、飛行機のエンジンを飛行中に交換することに例えられるほど、難しいものでした。数百万人のユーザーが新規登録して Pokémon の世界に加わる中、既存ユーザーにもそのままゲームを続けてもらいながら GKE をアップグレードしなければいけません。とても慎重な対策が取られました。
このアップグレードの後、Niantic と Google のエンジニアは共同で、Network Load Balancer に代えて、より洗練された新しい HTTP/S Load Balancer を反映しました。HTTP/S Load Balancer は、HTTPS トラフィック向けに作られたグローバルシステムです。きめ細かな管理機能や高速接続をユーザーに提供し、全体的な処理性能を向上させるため、Pokémon GO のトラフィックの量や種類に適しています。
米国でのリリースを教訓として、効果的であることがわかった方策(十分なキャパシティ プロビジョニング、アーキテクチャが改良された最新の GKE の利用、HTTP/S Load Balancer へのアップグレード)は、Pokémon GO の日本でのリリースでも役に立ちました。米国リリース時と比べて 3 倍のユーザーが新規登録しましたが、問題は発生しませんでした。

まとめ

今回は、ゲーム業界における GCP の利用状況について説明しました。 GCP の高度な可用性は、ヒット作の出現等でユーザー数が劇的に増加しやすいゲーム業界において、非常に親和性の高い特徴です。 GCP の魅力が分かっていただけたかと思います。

参考記事

GCP のメリットを最大限に活用しよう!

GCP・G Suite のご相談・
お見積り依頼はお気軽に
TEL.03-5840-8815
お問合せフォーム TEL.03-5840-8815