Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
gree_tech
PPTX, PDF
738 views
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
GREE Tech Conference 2021 で発表された資料です。 https://techcon.gree.jp/2021/session/Session-9
Engineering
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 28
2
/ 28
3
/ 28
4
/ 28
5
/ 28
6
/ 28
7
/ 28
8
/ 28
9
/ 28
10
/ 28
11
/ 28
12
/ 28
13
/ 28
14
/ 28
15
/ 28
16
/ 28
17
/ 28
18
/ 28
19
/ 28
20
/ 28
21
/ 28
22
/ 28
23
/ 28
24
/ 28
25
/ 28
26
/ 28
27
/ 28
28
/ 28
More Related Content
PDF
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
by
Google Cloud Platform - Japan
PPTX
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~
by
Hitachi, Ltd. OSS Solution Center.
PDF
Spannerに関する技術メモ
by
Etsuji Nakai
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
by
Toru Makabe
PDF
[GKE & Spanner 勉強会] GKE 入門
by
Google Cloud Platform - Japan
PDF
忙しい人の5分で分かるDocker 2017年春Ver
by
Masahito Zembutsu
PDF
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
by
Masahito Zembutsu
PDF
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
by
Y Watanabe
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
by
Google Cloud Platform - Japan
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~
by
Hitachi, Ltd. OSS Solution Center.
Spannerに関する技術メモ
by
Etsuji Nakai
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
by
Toru Makabe
[GKE & Spanner 勉強会] GKE 入門
by
Google Cloud Platform - Japan
忙しい人の5分で分かるDocker 2017年春Ver
by
Masahito Zembutsu
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
by
Masahito Zembutsu
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
by
Y Watanabe
What's hot
PDF
Java EE から Quarkus による開発への移行について
by
Shigeru Tatsuta
PPTX
Amazon EKS によるスマホゲームのバックエンド運用事例
by
gree_tech
PPTX
Spring CloudとZipkinを利用した分散トレーシング
by
Rakuten Group, Inc.
PPTX
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
by
NTT DATA Technology & Innovation
PDF
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
by
Trainocate Japan, Ltd.
PDF
マイクロサービス 4つの分割アプローチ
by
増田 亨
PPTX
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
by
ShuheiUda
PPTX
Azure API Management 俺的マニュアル
by
貴志 上坂
PDF
Cassandra導入事例と現場視点での苦労したポイント cassandra summit2014jpn
by
haketa
PDF
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
by
Iida Yukako
PDF
Dockerイメージの理解とコンテナのライフサイクル
by
Masahito Zembutsu
PDF
【15-B-7】無意味なアラートからの脱却 ~ Datadogを使ってモダンなモニタリングを始めよう ~
by
Developers Summit
PDF
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
by
Google Cloud Platform - Japan
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
これで怖くない!?大規模環境で体験するDB負荷対策~垂直から水平の彼方へ~
by
hideakikabuto
PDF
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
by
NTT DATA Technology & Innovation
PDF
インフラエンジニアの綺麗で優しい手順書の書き方
by
Shohei Koyama
PDF
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
by
Preferred Networks
PDF
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
by
JustSystems Corporation
PDF
Microsoft Azure Storage 概要
by
Takeshi Fukuhara
Java EE から Quarkus による開発への移行について
by
Shigeru Tatsuta
Amazon EKS によるスマホゲームのバックエンド運用事例
by
gree_tech
Spring CloudとZipkinを利用した分散トレーシング
by
Rakuten Group, Inc.
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
by
NTT DATA Technology & Innovation
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
by
Trainocate Japan, Ltd.
マイクロサービス 4つの分割アプローチ
by
増田 亨
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
by
ShuheiUda
Azure API Management 俺的マニュアル
by
貴志 上坂
Cassandra導入事例と現場視点での苦労したポイント cassandra summit2014jpn
by
haketa
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
by
Iida Yukako
Dockerイメージの理解とコンテナのライフサイクル
by
Masahito Zembutsu
【15-B-7】無意味なアラートからの脱却 ~ Datadogを使ってモダンなモニタリングを始めよう ~
by
Developers Summit
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
by
Google Cloud Platform - Japan
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
これで怖くない!?大規模環境で体験するDB負荷対策~垂直から水平の彼方へ~
by
hideakikabuto
Apache Airflow 概要(Airflowの基礎を学ぶハンズオンワークショップ 発表資料)
by
NTT DATA Technology & Innovation
インフラエンジニアの綺麗で優しい手順書の書き方
by
Shohei Koyama
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
by
Preferred Networks
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
by
JustSystems Corporation
Microsoft Azure Storage 概要
by
Takeshi Fukuhara
Similar to WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
PDF
[CEDEC 2018] グローバル スケール コネクテッドゲームを GCP で作ろう!
by
Samir Hammoudi
PDF
[GCC18] 世界中のプレイヤーを3つの「S」で支える Google Cloud Platform (GCP) 〜スピード・スケール・スタビリティ〜
by
Samir Hammoudi
PDF
Wordpress案件にgkeを採用してみた(短縮版)
by
Yu Amano
PDF
『 イドラ ファンタシースターサーガ 』を支える GCP | Google Cloud INSIDE Games & Apps
by
Google Cloud Platform - Japan
PDF
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...
by
Google Cloud Platform - Japan
PDF
The Google File System
by
Shuzo Kashihara
PDF
GCP でも Serverless!!
by
Igarashi Toru
PDF
Google Cloud Platformでソーシャルゲームを1本出してみた!
by
Hasegawa Yusuke
PPTX
Spanner移行について本気出して考えてみた
by
techgamecollege
[CEDEC 2018] グローバル スケール コネクテッドゲームを GCP で作ろう!
by
Samir Hammoudi
[GCC18] 世界中のプレイヤーを3つの「S」で支える Google Cloud Platform (GCP) 〜スピード・スケール・スタビリティ〜
by
Samir Hammoudi
Wordpress案件にgkeを採用してみた(短縮版)
by
Yu Amano
『 イドラ ファンタシースターサーガ 』を支える GCP | Google Cloud INSIDE Games & Apps
by
Google Cloud Platform - Japan
株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game...
by
Google Cloud Platform - Japan
The Google File System
by
Shuzo Kashihara
GCP でも Serverless!!
by
Igarashi Toru
Google Cloud Platformでソーシャルゲームを1本出してみた!
by
Hasegawa Yusuke
Spanner移行について本気出して考えてみた
by
techgamecollege
More from gree_tech
PPTX
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
by
gree_tech
PDF
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
by
gree_tech
PPTX
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
by
gree_tech
PPTX
アプリ起動時間高速化 ~推測するな、計測せよ~
by
gree_tech
PPTX
長寿なゲーム事業におけるアプリビルドの効率化
by
gree_tech
PPTX
Cloud Spanner をより便利にする運用支援ツールの紹介
by
gree_tech
PPTX
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
by
gree_tech
PPTX
海外展開と負荷試験
by
gree_tech
PPTX
翻訳QAでのテスト自動化の取り組み
by
gree_tech
PPTX
組み込み開発のテストとゲーム開発のテストの違い
by
gree_tech
PPTX
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
by
gree_tech
PPTX
データエンジニアとアナリストチーム兼務になった件について
by
gree_tech
PPTX
シェアドサービスとしてのデータテクノロジー
by
gree_tech
PPTX
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
by
gree_tech
PPTX
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
by
gree_tech
PPTX
比較サイトの検索改善(SPA から SSR に変換)
by
gree_tech
PPTX
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
by
gree_tech
PPTX
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
by
gree_tech
PPTX
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
by
gree_tech
PPTX
基調講演 -グリーが目指すエンジニアのあり方、チームのあり方-
by
gree_tech
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
by
gree_tech
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
by
gree_tech
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
by
gree_tech
アプリ起動時間高速化 ~推測するな、計測せよ~
by
gree_tech
長寿なゲーム事業におけるアプリビルドの効率化
by
gree_tech
Cloud Spanner をより便利にする運用支援ツールの紹介
by
gree_tech
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
by
gree_tech
海外展開と負荷試験
by
gree_tech
翻訳QAでのテスト自動化の取り組み
by
gree_tech
組み込み開発のテストとゲーム開発のテストの違い
by
gree_tech
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
by
gree_tech
データエンジニアとアナリストチーム兼務になった件について
by
gree_tech
シェアドサービスとしてのデータテクノロジー
by
gree_tech
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
by
gree_tech
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
by
gree_tech
比較サイトの検索改善(SPA から SSR に変換)
by
gree_tech
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
by
gree_tech
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
by
gree_tech
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
by
gree_tech
基調講演 -グリーが目指すエンジニアのあり方、チームのあり方-
by
gree_tech
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
1.
WFSにおける Cloud Spannerと GKEを中心とした GCP導入事例の紹介 株式会社WFS リードエンジニア
藤田貴大
2.
• 藤田貴大(ふじた たかひろ) •
所属 • 株式会社WFS Technology Development部 Engineering5グループ リードエンジニア • 職歴 • 組み込みエンジニアとしてネットワーク機器の開発に携わったのち、 2012年にグリー入社。インフラ、Webゲーム開発、QAを経て、 2017年よりサーバエンジニアとしてネイティブゲームの開発に携わ っている。 自己紹介 2
3.
3 はじめに • WFSでは、ゲームサーバとしてGoogle Cloud Platform(GCP)の利用を進めています •
現在GCPを利用してリリースされているタイトルは ”シドニアの騎士 掌位ノ絆” • 他にも開発中タイトルが 控えています ©弐瓶勉・講談社/東亜重工重力祭運営局 © WFS
4.
4 本発表の概要 • どうしてGCP、GKE、Cloud Spannerを採用したのか •
導入にあたって出た問題にどう対応したのか • 実際につかってみてどうだったのか
5.
5 WFSのゲームについて • ソーシャルゲーム • 遊んでいる時は常にゲームサーバと通信している •
データがサーバ側にある • 世界展開している • さまざまな国に対してサービスを提供している • サーバ負荷の変動が大きい
6.
6 WFSにおけるサーバへの要求 • ゲームなので、応答性能はある程度必要 • 応答速度はゲームの楽しさに影響がある •
サービスを提供する全地域に対して ある程度のレイテンシで通信したい • サーバリソースをできるだけ柔軟に変更したい
7.
7 ソーシャルゲームのサーバ規模について • リリース直後や人気のイベントの開始など アクセスが集中するタイミングがある • 数倍、10倍、、、 •
イベントなどは月に数回
8.
8 リソース最適化 • できるだけ余剰リソースは作りたくない • ゲームを止めたくない(メンテナンス) •
サービスを提供したままサーバリソースを調整したい
9.
9 いままではどうだったか • ゲームサーバ • 現在はKubernetesに頼っているのでできている •
それ以前、VMに直接デプロイしていた頃からオンラインで 実施可能 • MySQL • メンテナンスが必要 • 弊社インフラチームにまかせればオンラインでDBの最適化 (マスタ分割/統合など)が可能であるが、数週間の準備が必要 • Memcached/Redis • メンテナンスが必要
10.
10 GCP導入の理由 • レイテンシが短い • Cloud
Spannerが使えそうだった • Google Kubernetes Engine
11.
11 レイテンシ
12.
12 実測したレイテンシ • 他社クラウドを利用したゲームで海外展開する場合は 各地域(US、EU、etc…)にサーバを配置している • GCPでは東京リージョンから各地域にサービスを提供できて いる 東京リージョン
<-> ブラジル 他社 1000msec以上 GCP 300msec未満
13.
13 さまざまな地域からのレイテンシが短いほうが良い理由 • あるいは、サーバの配置場所を選択できた方がいい理由 • 1か所に集中していた方が管理がしやすい •
リソースの共有も可能 • 外部サービスとの連携 • WFSの認証・決済システムであるGamelib • 独立したシステムでHTTPSにより通信している • 海外リージョンにサーバを設置するために Gamelibも海外サーバを作ってもらっている ゲームサーバ 認証・決済 システム
14.
14 Cloud Spanner
15.
15 Cloud Spanner • 水平分割しなくてよい •
メンテナンスコストが低い • ランニングコストは高いかもしれない • スプリット分割が難しそう 無制限のスケーリング、強整合性、最大 99.999% の可用性を備えたフルマネージド リレーショナル データベースです。 ● 無制限のスケーリングによって、リレーショナル セマンティクスと SQL のすべてのメリットを享受 ● 任意のサイズで開始し、ニーズの拡大に応じて制限なしでスケーリング ● 計画的ダウンタイムのない、オンラインによるスキーマ変更で高可用性を実現 ● リージョンや大陸全体にわたる強整合性で高性能のトランザクションを提供 ● 自動シャーディングなどの機能により手動のタスクを排除し、イノベーションに注力 Cloud Spanner https://cloud.google.com/spanner/?hl=ja
16.
16 Cloud Spannerのコスト • 他社MySQLサービスとの比較 •
APIサーバに10,000RPSの負荷をかけたときの比較 1リクエスト当たりのDBアクセス ノード数 ノードコスト(比率) 他社MySQLサービス read:5 update/insert:4 8(※) 1 Cloud Spanner read:5 update/insert:4 20 1.3 ※:実際に必要なノードは4。 ただし、障害に備えたスタンバイが必要であるためx2で8。 DB ゲームサーバ 負荷測定ツール
17.
17 Cloud Spannerのコスト考察 • MySQLと比べたとき、スタンバイを考慮に入れると そこまで大きく差は開かない •
Cloud Spannerはスケールアウト/スケールインが オンラインで実施可能であるため、さらにコストダウンの 可能性がある
18.
18 Cloud Spannerのスプリット分割 • リクエスト処理にかなり大きく 影響する •
基本的には制御できない • 現在のスプリットの状態がわからない • 予防的に事前に負荷をかけて スプリット分割を促す RPS レイテンシ
19.
19 Spanner運用ツール • インフラチームで開発 • この後のセッションで詳しい説明がありますので... •
温める君 • 事前にスプリット分割を促す • 上げ下げ君 • ノード数を自動で制御する
20.
20 Google Kubernetes Engine
21.
21 Google Kubernetes Engine •
特徴的な機能 • Workload Identity • プリエンプティブルインスタンス
22.
22 Workload Identity • GKE(Kubernetes)のサービスアカウントと GCPのサービスアカウントを紐づけて Google
Cloudサービスを利用する権限を管理する方法 • GCPのドキュメントでは”推奨される方法”というようになっ ている • だが、当初は利用できなかった • PHP SDKの問題
23.
23 Workload Identity with
PHP • PHPのSDKに問題が多かった • PHP側のキャッシュ管理にバグがあった • podがスタートしてから一定時間でCloud Spannerへ通信できなく なる • アクセストークンの有効期限と キャッシュ有効期限が連動していなかった • Google様に連絡して修正していただきました • https://github.com/googleapis/google-auth-library-php/issues/308 • 高負荷時、アクセストークンの更新に失敗する • メタデータサーバからのアクセストークンの取得に失敗して 空の情報をキャッシュしていた • こちらも、最新のSDKでは解消済み
24.
24 プリエンプティブルインスタンスの活用 • コスト面で非常に魅力的なので導入したい • ゲームサーバはもともとステートレスなので 導入しようと思えばできるのではと考えていた •
実際はそう簡単ではなかった • 突然停止するとエラーになったり、Sidecarで回収している ログが欠損したりする プリエンプティブル VM インスタンスは、標準 VM の料金よりもはるかに低価格(60~91% 割引)で利用できます。ただし、他 のタスクがリソースを再利用する必要がある場合、Compute Engine がこのインスタンスを停止(プリエンプト)する可能性があ ります。プリエンプティブル インスタンスは Compute Engine の余剰のキャパシティを利用する機能であり、使用できるかどう かは利用状況に応じて異なります。 プリエンプティブル VM インスタンス https://cloud.google.com/compute/docs/instances/preemptible?hl=ja
25.
25 GKE version 1.20 •
2021/09にStable • Graceful Node Shutdown機能 • ApacheがGraceful Shutdownできる • lifecycleのpreStopで後片付けができる • 処理の中断、ログの欠損などが無くなった • Cronjobは工夫が必要 • ノードの入れ替えを分散させる工夫を検討中 • 複数台同時に入れ替わると良くない • 経験的に24時間で停止するので、そのあたりを調整できたら と考えている
26.
26 実際にサービスを提供してみて • Workload Identityを利用したCloud
Spannerへの アクセスは順調 • 事前のスプリット分割はうまくいって 実サービスでスプリット分割の兆候はみられなかった • メンテナンスをせずにサーバリソースの最適化ができている • さまざまな国に対して東京リージョンから サービスを提供できている (世界展開をしている別のゲームで) • プリエンプティブルインスタンスも一部導入できている • ノードの入れ替えを分散させられていない
27.
27 まとめ • GKE +
Cloud Spannerをつかったゲームを 提供することができた • Cloud Spannerはスプリット分割など 難しいところもあるが、ツールを充実させるなどして 運用可能になった • GKE 1.20になってプリエンプティブルVMが サービスに使えるようになった • PHP SDKは最初バグもあったが問題は解消されてきている
28.
28
Download