Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
サーバレスアプリケーションの監視・運用
Search
Kazutomo Niwa
September 29, 2018
Technology
13
6.7k
サーバレスアプリケーションの監視・運用
ServerlessConf Tokyo 2018 の登壇資料です。
https://gs2.io/
Kazutomo Niwa
September 29, 2018
Tweet
Share
More Decks by Kazutomo Niwa
See All by Kazutomo Niwa
Amazon Event Bridge による次世代の Pub/Sub
kazutomo
0
2k
DynamoDB のインデックス再編事例
kazutomo
2
920
Production-ready Amazon Event Bridge
kazutomo
2
1.1k
もうそこまで迫っている! Cloud2.0 時代の開発
kazutomo
3
1.8k
Game Server Services ではじめる サーバ開発運用しないゲーム開発
kazutomo
1
7.6k
Cloud2.0時代のゲーム開発を支えるGS2
kazutomo
1
2.2k
Unityネットワーク完全に理解した.pdf
kazutomo
3
3.4k
ゼロからサーバレスの先頭に追いつこう
kazutomo
25
12k
サーバレスアーキテクチャ入門
kazutomo
16
6.3k
Other Decks in Technology
See All in Technology
純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing
tomohisa
1
1.1k
Databricks Free Edition講座 データエンジニアリング編
taka_aki
0
2.7k
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
920
迷わない!AI×MCP連携のリファレンスアーキテクチャ完全ガイド
cdataj
0
560
戰略轉變:從建構 AI 代理人到發展可擴展的技能生態系統
appleboy
0
200
AI アクセラレータチップ AWS Trainium/Inferentia に 今こそ入門
yoshimi0227
1
240
AI時代のアジャイルチームを目指して ー スクラムというコンフォートゾーンからの脱却 ー / Toward Agile Teams in the Age of AI
takaking22
11
6.7k
Vivre en Bitcoin : le tutoriel que votre banquier ne veut pas que vous voyiez
rlifchitz
0
270
【Oracle Cloud ウェビナー】ランサムウェアが突く「侵入の隙」とバックアップの「死角」 ~ 過去の教訓に学ぶ — 侵入前提の防御とデータ保護 ~
oracle4engineer
PRO
0
100
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
770
【Agentforce Hackathon Tokyo 2025 発表資料】みらいシフト:あなた働き方を、みらいへシフト。
kuratani
0
120
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
200
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.1k
How to Ace a Technical Interview
jacobian
281
24k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
180
Designing for Timeless Needs
cassininazir
0
120
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
300
Docker and Python
trallard
47
3.7k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
140
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Accessibility Awareness
sabderemane
0
35
Transcript
サーバレスアプリケーションの監視・運⽤ Game Server Services 株式会社 代表取締役社⻑CEO 丹⽻ ⼀智
⾃⼰紹介 Game Server Services, Inc. https://gs2.io 丹⽻ ⼀智(にわ かずとも) Game
Server Services 株式会社 代表取締役社⻑ CEO 2006年 株式会社セガ⼊社 携帯電話向けゲームおよびサーバ開発業務に従事 2009年 任天堂株式会社⼊社 ニンテンドー3DSのOS/SDK開発や、 ゲームサーバの開発・運⽤業務に従事 2016年 Game Server Services 株式会社 設⽴
Game Server Services とは? フルサーバレスアーキテクチャ(FaaS)でモバイルゲーム向けの汎⽤ ゲームサーバを開発・提供。 各社がゲームサーバを開発している現状に疑問を感じ、あらゆるゲー ムに使える汎⽤ゲームサーバを提供することをミッションとし、ゲー ムサーバ界の Unity
を⽬指して開発中。 Game Server Services, Inc. https://gs2.io next
Game Server Services とは? 設⽴2年というヒヨッコスタートアップですが、今年3⽉に DeNA / KLab らから資⾦調達を実施。 Game
Server Services, Inc. https://gs2.io 主な採⽤事例 私、茄⼦で⾶びます(usaya株式会社) Google Play にてシミュレーションカテゴリでどうぶつの森に続く2位 サーバレスアーキテクチャのおかげで無障害でサービス提供中
サーバレスアプリの監視とは? Game Server Services, Inc. https://gs2.io
従来のインフラ監視 Game Server Services, Inc. https://gs2.io Load Average CPU Usage
Memory Usage Disk IO :
サーバレスでは気にしなくていいこと サーバレスアーキテクチャにおいては CPU使⽤率やメモリ使⽤ 率は監視する必要がありません。 Game Server Services, Inc. https://gs2.io Load
Average CPU Usage Memory Usage Disk IO :
じゃ、何もしなくていい? 何もしなくていいか。というとそんなことはありません。 サーバーレスでもサービスがちゃんと提供出来ているのかは監視 する必要があります。 または、意図しない状態が発⽣したときに、フルマネージドサー ビスの問題なのか、⾃分のアプリケーションの問題なのか切り分 けられる指標が必要です。 Game Server Services,
Inc. https://gs2.io サービスは正しく動いてる? どのコンポーネントが異常?
必要となる監視 サービス監視 サービスが正しく提供出来ているか判断する指標 コンポーネント監視 サービスを構成するコンポーネントが 正しく動作しているか判断出来る指標 Game Server Services, Inc.
https://gs2.io
サービス監視 Game Server Services, Inc. https://gs2.io 例: Steam では 同時ログイン数を
記録している ログイン数が急激に減少 ↓ 何らかの異常が発⽣
コンポーネント監視 キャパシティ管理または上限緩和の必要な項⽬ ・Lambda の同時実⾏数 ・API Gateway への Request/sec ・DynamoDB のキャパシティ使⽤率
障害発⽣時に障害点を特定するための項⽬ ・API Gateway の応答時間 ・Lambda の応答時間 ・DynamoDB の応答時間 Game Server Services, Inc. https://gs2.io
GS2 ではどうしているか? Game Server Services, Inc. https://gs2.io
課題 Game Server Services, Inc. https://gs2.io GS2 は AWS/GCP のハイブリッド構成
それぞれ CloudWatch / Stackdriver とツールが異なる
課題 Game Server Services, Inc. https://gs2.io AWS /GCP で提供される 視覚化⽅法が
”折れ線グラフ” 中⼼で メトリックによっては不適切
どうしているか Game Server Services, Inc. https://gs2.io GS2 では を採⽤ ⼤型ディスプレイに表⽰して
いつでも⾒られる状態に
Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
ダッシュボードの構成 Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
基本メトリック • 秒間アクセス数 • サービス利⽤者起因のエラー数 • GS2起因のエラー数 • 想定外の例外発⽣数 •
Google App Engine のクォーターリミット到達数 Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
サービスパフォーマンス • API Gateway がレスポンスした時間 • Lambda がレスポンスした時間 • Lambdaで実⾏するコードがレスポンスした時間
• 認証/認可検証にかかった時間 • DynamoDB のIOにかかった時間 Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
キャパシティ監視 • DynamoDB で最もキャパシティを消費しているテーブルの使⽤ 率 • Lambda の同時実⾏数のアカウント上限値に対する使⽤率 • Lambda/DynamoDB
のスロットル発⽣回数 Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
アラームの状態 • アラームが全てOKな状態か? • アラームが出てるとすればどのカテゴリか? Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
直近4時間のAPIコール数 • 点線は1週間前の同時間帯のグラフ • 直線は直近4時間におけるトレンド • 今現在どの程度のアクセスがあるかを可視化 Game Server Services,
Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
直近4時間のAPIランキング • 利⽤されているマイクロサービスランキング • レスポンスタイムのワーストランキング Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io 直近1週間のAPIコール数 • 点線は1週間前の同時間帯のグラフ • 直線は直近1週間におけるトレンド
• 前⽇・先週と⽐べてどのくらい変化があるかを可視化
Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io • 点線は1ヶ⽉前の同時間帯のグラフ • 直線は直近1ヶ⽉間におけるトレンド •
跳ね上がっているのはクライアントの実装ミスによってビジー ループが発⽣していた箇所。Datadog があったおかげですぐに 検出して対応が出来た 直近1ヶ⽉間のAPIコール数
Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io • サービスの提供にかかっているインフラコストの可視化 • 異常な増え⽅をしていないかを視覚化 インフラコスト
Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io • サービス提供による売り上げの視覚化 売り上げ
ダッシュボードの作り⽅ Game Server Services, Inc. https://gs2.io
プラグインのインストール • AWS や GCP、Slack といったメジャーなプロダクトには⼤体プ ラグインが存在する Game Server Services,
Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io プラグインの設定 • AWS アカウントと AssumeRole
に使⽤するロールの設定 • どのサービスのメトリックを収集するかを設定 • 収集したメトリックに付与するタグを設定
Game Server Services, Inc. https://gs2.io ダッシュボードの作成 • ダッシュボードメニューから新規作成を選択
Game Server Services, Inc. https://gs2.io コンポーネントの追加 • ドラッグ&ドロップでコンポーネントを追加 • コンポーネントには種類がある
• 折れ線グラフ • 積み上げグラフ • 数値 • ランキング • ログ :
Game Server Services, Inc. https://gs2.io メトリックの設定 • レンダリングするデータソースを設定 • Select
や GroupBy といった設定も可能 • 移動平均やトレンドといったフィルタを適⽤することも可能
異常を検出するには Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io メトリックの設定 • 値の範囲でダッシュボードに表⽰する⾊を設定可能 • 異常値になったときには⾊が変わるようにすることで、すぐに
異常であることを認識出来るように
Game Server Services, Inc. https://gs2.io アラームの設定 • 値が異常値になった時にメールやSlackに通知可能 • CloudWatch
や Stackdriver にも同様の機能があるが、データを 加⼯したり、多くの指標を使ってアラームを設定可能
異常を調査するには Game Server Services, Inc. https://gs2.io
想定外の例外が検出!!! Game Server Services, Inc. https://gs2.io ログが⾒たい…
想定外の例外が検出!!! Game Server Services, Inc. https://gs2.io どのマイクロサービスで起こってるんだ? このマイクロサービスのアカウントどれだっけ?
ログが… Game Server Services, Inc. https://gs2.io Lambda が実⾏されたコンテナ毎に分かれてる
ログが… Game Server Services, Inc. https://gs2.io もぅマヂ無理。 リスカしょ・・・
Datadog Logs Game Server Services, Inc. https://gs2.io 全てのアカウント/プロジェクトのログを集約 フィルタリングも爆速
Game Server Services, Inc. https://gs2.io Datadog Logs マイクロサービスで絞り込んだり
Game Server Services, Inc. https://gs2.io Datadog Logs Lambda ファンクションで絞り込んだり
Game Server Services, Inc. https://gs2.io Datadog Logs レスポンス時のステータスコードで絞り込んだり
Game Server Services, Inc. https://gs2.io Datadog Logs ⽬的のログを⾒つけたら レコードを選ぶと詳細が⾒られる
Game Server Services, Inc. https://gs2.io Datadog Logs リクエストの内容や レスポンスの内容が⾒られる
ダッシュボードとの連携 Game Server Services, Inc. https://gs2.io ダッシュボードからログに⾶ぶことも可能
ログの取り込み⽅ Game Server Services, Inc. https://gs2.io TCPでDatadogのサーバに繋いで流し込む 以上!
ピタゴラ装置を もっと視覚化してほしい… Game Server Services, Inc. https://gs2.io
Game Server Services, Inc. https://gs2.io サービスマップ • ファンクションの関係を視覚化 • 類似サービスの
Stackdriver Trace や X-Ray よりいけてる ビュー
Game Server Services, Inc. https://gs2.io サービスマップ • ファンクションの関係を視覚化 • 類似サービスの
Stackdriver Trace や X-Ray よりいけてる ビュー
Game Server Services, Inc. https://gs2.io サービスマップ • ノードを選択すると、より細かい情報にアクセス可能
Game Server Services, Inc. https://gs2.io サービスマップ • ノードを選択すると、より細かい情報にアクセス可能
プラットフォーマーが提供するサービスとは異なり アカウントを超えた動向もみれる といいなあ Game Server Services, Inc. https://gs2.io
……… Game Server Services, Inc. https://gs2.io
残念ながら サービスマップはサーバレスから使えません (エージェントのインストールが必要) Game Server Services, Inc. https://gs2.io
みんなで Datadog に要望をだそう! Game Server Services, Inc. https://gs2.io
Game Server Services では仲間を募集中 裁量労働制 年収792万円 (⽉額66万円・みなし残業20時間込み・賞与無し)+ ストックオプション https://gs2.io/recruit.html Game
Server Services, Inc. https://gs2.io