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
AWSフルマネージドサービスにおける監視と運用 / Monitoring and Operat...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yusuke Kageyama
November 18, 2020
Technology
1.6k
1
Share
AWSフルマネージドサービスにおける監視と運用 / Monitoring and Operation in AWS Fully Managed Services
ZOZO Technologies Meetup〜ZOZOが提供するEC支援サービスの裏側〜
Yusuke Kageyama
November 18, 2020
More Decks by Yusuke Kageyama
See All by Yusuke Kageyama
大規模トラフィックを支えるサーバーレスアーキテクチャ / Serverless Architecture to Support Large Scale Traffic
mtkage
0
1k
Other Decks in Technology
See All in Technology
GitHub Actions侵害 — 相次ぐ事例を振り返り、次なる脅威に備える
flatt_security
11
6.9k
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
260
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
kaomi_wombat
0
280
SSoT(Single Source of Truth)で「壊して再生」する設計
kawauso
2
400
PostgreSQL 18のNOT ENFORCEDな制約とDEFERRABLEの関係
yahonda
0
150
AWS DevOps Agent or Kiro の使いどころを考える_20260402
masakiokuda
0
120
【Oracle Cloud ウェビナー】データ主権はクラウドで守れるのか?NTTデータ様のOracle Alloyで実現するソブリン対応クラウドの最適解
oracle4engineer
PRO
3
130
Kubernetesの「隠れメモリ消費」によるNode共倒れと、Request適正化という処方箋
g0xu
0
170
遊びで始めたNew Relic MCP、気づいたらChatOpsなオブザーバビリティボットができてました/From New Relic MCP to a ChatOps Observability Bot
aeonpeople
1
130
SaaSの操作主体は人間からAIへ - 経理AIエージェントが目指す深い自動化
nishihira
0
130
Oracle Cloud Infrastructure:2026年3月度サービス・アップデート
oracle4engineer
PRO
0
220
SaaSに宿る21g
kanyamaguc
2
180
Featured
See All Featured
The Mindset for Success: Future Career Progression
greggifford
PRO
0
290
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
250
BBQ
matthewcrist
89
10k
Building an army of robots
kneath
306
46k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
140
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
How to build a perfect <img>
jonoalderson
1
5.3k
Ethics towards AI in product and experience design
skipperchong
2
240
What does AI have to do with Human Rights?
axbom
PRO
1
2.1k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
260
Transcript
AWSフルマネージドサービスにおける 監視と運用 ZOZO Technologies Meetup 〜ZOZOが提供するEC支援サービスの裏側〜 株式会社ZOZOテクノロジーズ SRE部 BtoBチーム 蔭山
雄介 Copyright © ZOZO Technologies, Inc.
© ZOZO Technologies, Inc. 株式会社ZOZOテクノロジーズ 技術開発本部 SRE部 BtoBチーム 蔭山 雄介
▪経歴 2016年: 株式会社アラタナに新卒入社 2020年: 株式会社ZOZOテクノロジーズに転籍 ▪担当業務 2016年 〜 2018年: ECカートシステムの開発・設計(PG/SE) 2019年 〜 2020年: FBZ・中国版ZOZOTOWN「ZOZO」の開発・運用 (PG/SRE) 2
© ZOZO Technologies, Inc. FBZのシステム構成 3
© ZOZO Technologies, Inc. FBZで利用しているAWSサービス(一部抜粋) 4 Lambda Step Functions AWS
Batch API Gateway CloudFront DynamoDB Elasticsearch Service S3 SQS SES SNS CloudWatch AWS WAF Cognito Amazon VPC
© ZOZO Technologies, Inc. FBZで利用しているAWSサービス(一部抜粋) 5 Lambda Step Functions AWS
Batch API Gateway CloudFront DynamoDB Elasticsearch Service S3 SQS SES SNS CloudWatch AWS WAF Cognito Amazon VPC 運用・監視って必要?
© ZOZO Technologies, Inc. FBZで利用しているAWSサービス(一部抜粋) 6 Lambda Step Functions AWS
Batch API Gateway CloudFront DynamoDB Elasticsearch Service S3 SQS SES SNS CloudWatch AWS WAF Cognito Amazon VPC 必要です
© ZOZO Technologies, Inc. マネージドサービスに監視・運用が必要な理由 • サービスを運営するためにマネージドサービスを利用することで必要不可欠なインフラ管理はなくなった • サービスを安定して運営していくには監視は必要不可欠
◦ マネージドサービスといえど落ちることはある ◦ バグが紛れ込んでサービスダウンする可能性も ◦ etc... • マネージドサービスを利用していても、システム上どうしても運用は必要となる ◦ アプリケーションのリリース ◦ 運用上発生するイレギュラーなデータ補正 ◦ 新規店舗出店時のデータ一式の準備 ◦ etc... 7
© ZOZO Technologies, Inc. どのように監視・運用していくか 8 約 50 ご利用いただいてる店 舗さま
約 150 公開している APIエンドポイント 約 330,000 取り扱っている 総商品数 約 350,000 2019年度 出荷データ連携数 約 500 Lambda関数 約 100 S3バケット 約 750 DynamoDBテーブル 約 1,500 SQSキュー
© ZOZO Technologies, Inc. どのように監視・運用していくか 9 約 50 ご利用いただいてる店 舗さま
約 150 公開している APIエンドポイント 約 330,000 取り扱っている 総商品数 約 350,000 2019年度 出荷データ連携数 約 500 Lambda関数 約 100 S3バケット 約 750 DynamoDBテーブル 約 1,500 SQSキュー 少人数での監視・運用は厳しい
© ZOZO Technologies, Inc. どのように監視・運用していくか 10 約 50 ご利用いただいてる店 舗さま
約 150 公開している APIエンドポイント 約 330,000 取り扱っている 総商品数 約 350,000 2019年度 出荷データ連携数 約 500 Lambda関数 約 100 S3バケット 約 750 DynamoDBテーブル 約 1,500 SQSキュー 監視・運用するための仕組み化
© ZOZO Technologies, Inc. FBZでの監視 11
© ZOZO Technologies, Inc. FBZでの監視 12
© ZOZO Technologies, Inc. PagerDuty 13
© ZOZO Technologies, Inc. PagerDuty 運用担当への通知・エスカレーションを行うインシデント管理サービス。 各監視サービスの異常検知情報を集約し、連携された情報を元に対応を行う。 14
© ZOZO Technologies, Inc. CloudWatch メトリクスでの異常値検知 15
© ZOZO Technologies, Inc. CloudWatch メトリクスでの異常値検知 各マネージドサービスのCloudWatch メトリクスで異常値を検知できるようアラームを適切に設定。 異常があった場合にはPagerDutyへ通知する。 16
© ZOZO Technologies, Inc. データ解析によるデータ異常検知 17
© ZOZO Technologies, Inc. データ解析によるデータ異常検知 Elasticsearch Serviceに蓄積されたデータを検索し、一致するデータを通知するシステムを独自構築。 必要であれば運用でデータリカバリを実施する。 18
© ZOZO Technologies, Inc. アプリケーションログ解析 19
© ZOZO Technologies, Inc. アプリケーションログ解析 各Lambda関数がCloudWatch Logsへ出力したログを解析するシステムを独自構築。 ログ内容を解析し、適切にDatadog・PagerDutyへと連携する。 参考記事: https://techblog.zozo.com/entry/serverless-monitoring-lambda
20
© ZOZO Technologies, Inc. Datadog 21
© ZOZO Technologies, Inc. Datadog 連携されたログ情報や各マネージドサービスの稼働状況の解析に利用。 異常が検知された場合は通知を行う。 22
© ZOZO Technologies, Inc. Autify 23
© ZOZO Technologies, Inc. Autify FBZをご利用いただいている自社ECサイト上でE2Eテストを実施。 自社ECサイト運営に異常がないかを常にチェックし、異常があれば通知する。 参考記事: https://techblog.zozo.com/entry/autify-introduction
https://autify.com/ja/stories/zozo-technologies 24
© ZOZO Technologies, Inc. FBZでの運用 • 独自運用ツール ◦ データ不整合チェック ◦
データ補正用Lambda関数 • ボトルネック解析 ◦ X-Rayでの分散トレーシング • リソース管理 ◦ Serverless Frameworkでのアプリケーション管理 ◦ CloudFormationでの店舗別リソース管理 25
© ZOZO Technologies, Inc. データ不整合チェック ZOZOTOWNとFBZ間でのデータ不整合が発生していないか定期的に確認するシステム。 異常があった場合はその状況に応じてデータリカバリまで自動で行う。 26
© ZOZO Technologies, Inc. データ補正用Lambda関数 SQLのように一括アップデートはできないため、データ抽出と補正用のLambda関数を準備。 データ抽出と補正ロジックLambda関数を準備し、実行することでデータの更新を行う。 27
© ZOZO Technologies, Inc. X-Rayでの分散トレーシング X-RayでLambda関数単位での分散トレーシングを実施。 ボトルネックの解析からパーセンタイル値の確認までAWSコンソール上で確認可能。 28
© ZOZO Technologies, Inc. Serverless Frameworkでのアプリケーション管理 Serverless Frameworkを用いて各Lambdaアプリケーションを管理。 リリースもServerless Framework経由で実施することでコードアップロードなどの作業を省力化。
29
© ZOZO Technologies, Inc. CloudFormationでの店舗別リソース管理 店舗別に必要なリソース(S3、DynamoDB、SQSなど)はCloudFormationテンプレートで一括管理。 既存店舗でもリソース更新が必要になった場合はスタック更新することで一括対応可能。 30
© ZOZO Technologies, Inc. まとめ • マネージドサービスのみを利用してるからといって監視・運用は不要にはならない • マネージドサービスにはCloudWatch
メトリクスのようなサービスの稼働状況を把握するためのサービスもあるの で、そちらを活用しながら監視・運用することで管理コストを減らせる • DatadogやAutifyのようなサービス監視に特化したSaaSもあるため、状況に応じて各監視サービスを使い分けるこ とでサービスに適した監視体制を作れる • 作られたサービスの特性上、監視サービスとマッチしていないこともあるため、時には独自の監視システムも作る ことも大事 31
None