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.5k
サーバレスアプリケーションの監視・運用
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
1.9k
DynamoDB のインデックス再編事例
kazutomo
2
810
Production-ready Amazon Event Bridge
kazutomo
2
1k
もうそこまで迫っている! Cloud2.0 時代の開発
kazutomo
3
1.7k
Game Server Services ではじめる サーバ開発運用しないゲーム開発
kazutomo
1
7.3k
Cloud2.0時代のゲーム開発を支えるGS2
kazutomo
1
2.1k
Unityネットワーク完全に理解した.pdf
kazutomo
3
3.1k
ゼロからサーバレスの先頭に追いつこう
kazutomo
25
12k
サーバレスアーキテクチャ入門
kazutomo
16
6.1k
Other Decks in Technology
See All in Technology
EDRからERM: PFN-SIRTが関わるセキュリティとリスクへの取り組み
pfn
PRO
0
100
CloudWatch Container Insightsを使ったAmazon ECSのリソース監視
umekou
1
120
一人から始めたSREチーム3年の歩み - 求められるスキルの変化とチームのあり方 - / The three-year journey of the SRE team, which started all by myself
vtryo
7
5.7k
生成AIを活用した機能を、顧客に提供するまでに乗り越えた『4つの壁』
toshiblues
1
210
エラーバジェット枯渇の原因 - 偽陽性との戦い -
phaya72
1
100
サーバーレスで楽しよう!お気軽に始められる3つのポイント / Have fun with Serverless!
_kensh
2
220
Tech Blog執筆のモチベート向上作戦
imamura_ko_0314
0
730
Enhancing SRE Using AI
yoshiiryo1
1
260
ソフトウェア開発現代史:製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す
takabow
15
5.3k
Agentic AI時代のプロダクトマネジメントことはじめ〜仮説検証編〜
masakazu178
3
360
Japan AWS Jr. Championsがお届けするre:Invent2024のハイライト ~ラスベガスで見てきた景色~
fukuchiiinu
0
1.1k
Mocking your codebase without cursing it
gaqzi
0
160
Featured
See All Featured
Scaling GitHub
holman
459
140k
Building Adaptive Systems
keathley
39
2.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
The Invisible Side of Design
smashingmag
299
50k
Speed Design
sergeychernyshev
25
760
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
39
1.9k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Documentation Writing (for coders)
carmenintech
67
4.6k
4 Signs Your Business is Dying
shpigford
182
22k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
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