Upgrade to Pro — share decks privately, control downloads, hide ads and more …

サーバレスアプリケーションの監視・運用

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for Kazutomo Niwa Kazutomo Niwa
September 29, 2018

 サーバレスアプリケーションの監視・運用

ServerlessConf Tokyo 2018 の登壇資料です。

https://gs2.io/

Avatar for Kazutomo Niwa

Kazutomo Niwa

September 29, 2018
Tweet

More Decks by Kazutomo Niwa

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 Game Server Services, Inc. https://gs2.io 丹⽻ ⼀智(にわ かずとも) Game

    Server Services 株式会社 代表取締役社⻑ CEO 2006年 株式会社セガ⼊社 携帯電話向けゲームおよびサーバ開発業務に従事 2009年 任天堂株式会社⼊社 ニンテンドー3DSのOS/SDK開発や、 ゲームサーバの開発・運⽤業務に従事 2016年 Game Server Services 株式会社 設⽴
  2. Game Server Services とは? 設⽴2年というヒヨッコスタートアップですが、今年3⽉に DeNA / KLab らから資⾦調達を実施。 Game

    Server Services, Inc. https://gs2.io 主な採⽤事例 私、茄⼦で⾶びます(usaya株式会社) Google Play にてシミュレーションカテゴリでどうぶつの森に続く2位 サーバレスアーキテクチャのおかげで無障害でサービス提供中
  3. サービス監視 Game Server Services, Inc. https://gs2.io 例: Steam では 同時ログイン数を

    記録している ログイン数が急激に減少 ↓ 何らかの異常が発⽣
  4. コンポーネント監視 キャパシティ管理または上限緩和の必要な項⽬ ・Lambda の同時実⾏数 ・API Gateway への Request/sec ・DynamoDB のキャパシティ使⽤率

    障害発⽣時に障害点を特定するための項⽬ ・API Gateway の応答時間 ・Lambda の応答時間 ・DynamoDB の応答時間 Game Server Services, Inc. https://gs2.io
  5. 課題 Game Server Services, Inc. https://gs2.io GS2 は AWS/GCP のハイブリッド構成

    それぞれ CloudWatch / Stackdriver とツールが異なる
  6. 課題 Game Server Services, Inc. https://gs2.io AWS /GCP で提供される 視覚化⽅法が

    ”折れ線グラフ” 中⼼で メトリックによっては不適切
  7. サービスパフォーマンス • API Gateway がレスポンスした時間 • Lambda がレスポンスした時間 • Lambdaで実⾏するコードがレスポンスした時間

    • 認証/認可検証にかかった時間 • DynamoDB のIOにかかった時間 Game Server Services, Inc. https://gs2.io
  8. Game Server Services, Inc. https://gs2.io • 点線は1ヶ⽉前の同時間帯のグラフ • 直線は直近1ヶ⽉間におけるトレンド •

    跳ね上がっているのはクライアントの実装ミスによってビジー ループが発⽣していた箇所。Datadog があったおかげですぐに 検出して対応が出来た 直近1ヶ⽉間のAPIコール数
  9. Game Server Services, Inc. https://gs2.io プラグインの設定 • AWS アカウントと AssumeRole

    に使⽤するロールの設定 • どのサービスのメトリックを収集するかを設定 • 収集したメトリックに付与するタグを設定
  10. Game Server Services, Inc. https://gs2.io メトリックの設定 • レンダリングするデータソースを設定 • Select

    や GroupBy といった設定も可能 • 移動平均やトレンドといったフィルタを適⽤することも可能
  11. Game Server Services, Inc. https://gs2.io アラームの設定 • 値が異常値になった時にメールやSlackに通知可能 • CloudWatch

    や Stackdriver にも同様の機能があるが、データを 加⼯したり、多くの指標を使ってアラームを設定可能