Slide 1

Slide 1 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. マイクロサービスのための システム運用を一瞬でラクにする オブザーバビリティ事例 発表者 NTTドコモ 第一プロダクトデザイン部 マーケティングイノベーション・カスタマーサクセス担当 森 晴菜 川嵜 哲生 -0-

Slide 2

Slide 2 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. アジェンダ -1-  サービス紹介  システム構成 (Observabilityが無いとやっていけない)  システム運用をラクにするための工夫  実例紹介① ~ AWSとSaaSの棲み分けポイント ~  実例紹介② ~ カスタムメトリクスでラクラクObservability ~  まとめ

Slide 3

Slide 3 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. サービス紹介 2 PM 1 スーパー販促プログラム(スパ販) ①お店で「dポイント」や 「d払い」で支払う・貯める ②d払い・dポイントを使ったことのあるお店から お得な情報が届く リピーター d払い・dポイント どちらの利用もOK! d払い・dポイントクラブアプリ内にお店専用のメッセージBOXができる dポイントやd払いでお買い物をしてくれたお客様と、 友達追加無しで直接コミュニケーションが可能になるサービス また行こう!

Slide 4

Slide 4 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. -3- 他 システム 他 システム レコメンド システム クーポン メッセージ 配信システム 他 システム 他 システム 決済 システム アプリ 各種データ参照 Json ①加盟店情報 ②クーポン情報 加盟店からのクーポンや メッセージを配信 他 システム 認証 システム システム構成 このシステムを新規構築 AWS Cloud 他クラウド 他システム

Slide 5

Slide 5 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. -4- 他 システム 他 システム レコメンド システム クーポン メッセージ 配信システム 他 システム 他 システム 決済 システム アプリ 各種データ参照 Json ①加盟店情報 ②クーポン情報 加盟店からのクーポンや メッセージを配信 他 システム 認証 システム システム構成 このシステムを新規構築 AWS Cloud 他クラウド 他システム 障害が起こりそうなポイントを想像してみてください・・・

Slide 6

Slide 6 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. -5- 他 システム 他 システム 他 システム クーポン メッセージ 配信システム 他 システム 他 システム 他 システム ドコモアプリ 各種データ参照 Json ①加盟店情報 ②クーポン情報 加盟店からのクーポンや メッセージを配信 他 システム 他 システム システム構成 このシステムを新規構築 AWS Cloud 他クラウド 他システム 障害が起こりそうなポイントを想像してみてください・・・ d サービスやシステムのマイクロ化が進み、 構成がとにかく複雑 ↓ どこで何が起こっているのか? Observabilityが無いとやっていけない

Slide 7

Slide 7 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. -6- システム運用をラクにするための工夫 ~ SaaSダッシュボード連携でシステム状況可視化 ~

Slide 8

Slide 8 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. システム運用をラクにするための工夫 7 リソースのグラフ化 ログ出力項目を分けて検索・ソート サービスマップ自動作成 AWS X-Ray Amazon CloudWatch Logs カスタムメトリクスを通して値を可視化 Amazon CloudWatch等AWSサービスの監視項目をSaaSにより集約 サービスを集約し、 共通のルールで可視化 ログ追跡のしやすさにより 問い合わせの稼働減を期待

Slide 9

Slide 9 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. システム運用をラクにするための工夫 8 APM(パフォーマンス分析・監視) ログイン等、複雑な条件の外形・サービス監視 どこの処理で時間がかかっているか 一目でわかる 監視ツールを作成しなくてよい アラート形式を統一できる AWS X-Ray Amazon ECS Slackへの障害アラート Amazon CloudWatch等AWSサービスの監視項目をSaaSにより集約

Slide 10

Slide 10 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. システム運用をラクにするための工夫 9 サービスの状況がひとめで分かるダッシュボード例 →3時間で作成! ラクラク!

Slide 11

Slide 11 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. システム運用をラクにするための工夫 10 ユーザがリクエストするAPI・画面は 正常は応答できているか Queueの処理は 正常に進んでいるか コンテナ・ DB等 サーバ状況は正常か 閾値超過で状況をSlackに通知し ダッシュボードへ誘導(即時の状況把握を徹底) サービスの状況がひとめで分かるダッシュボード例 ラクラク!

Slide 12

Slide 12 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. システム運用をラクにするための工夫 11 DynamoDBの状態は正常か 連携先外部システムは 正常にリクエストできているか ユーザ処理のECSタスク数は どこまで増減しているか Amazon CloudWatch システム状況がひとめで分かるダッシュボード例

Slide 13

Slide 13 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 12 Logs AWS Cloud Amazon CloudWatch S3 Log Forwarder S3やCloudWatchLogsに出力した ログをDatadogに連携 ログ種別、ユーザID、URL、 出力文字等様々な検索が可能 ユーザIDやAPI名、ステータスコード を表示、フィルタ可能 システム運用をラクにするための工夫 エラーが発生した場合は ログ詳細をSlackに通知 ユーザ行動を追うためのログ可視化例 log ラクラク!

Slide 14

Slide 14 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 13 AWS Cloud X-Ray・Agentから トレースをDatadogに連携 レイテンシやURL等 様々な検索が可能 URL毎のレイテンシやステータス が一目で追える システム運用をラクにするための工夫 リクエストの処理内訳 を可視化 AWS X-Ray APMでアプリケーションの「それぞれの処理のパフォーマンス」を可視化 ラクラク!

Slide 15

Slide 15 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 14 API・画面の外形監視 システム運用をラクにするための工夫 APIの不正応答でSlack通知、 まず何をするべきかを誘導 ユーザへ提供しているAPIや画面を外形監視して不正な応答をしていれば通知へ ラクラク!

Slide 16

Slide 16 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 15 Q.全部SaaSに集約しているけどSaaSだけ見ているの? システム運用をラクにするための工夫 A.平常時はその通りですが、 トラブル時にこんなことがありました・・・

Slide 17

Slide 17 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. -16- 実例紹介① ~ AWS CloudWatchとSaaSの棲み分けポイント ~

Slide 18

Slide 18 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 実例紹介① ~ AWSとSaaSの棲み分けポイント ~ 17 休日に外形監視でアラートが発生 →APIが遅くなり数回に1回エラーを返す状態 Datadogのダッシュボードを色々見たけど 異常がすぐに見つからない… APIのレイテンシが悪化している SaaSにダッシュボードを集約すると便利だが、こんなこともあるので要注意!

Slide 19

Slide 19 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 実例紹介① ~ AWSとSaaSの棲み分けポイント ~ 18 DynamoDBのモニタリングは 色々な事象でお世話になりました 困ってDynamoDBの管理コンソールから CloudWatch Contributor Insights・CloudWatchメトリクス を見ると、読み取り調整されたリクエストが表示されている →アカウントデフォルトのクォータ値で制限されていた! すぐにAWSソリューションズアーキテクトさんに連絡して サポートケースからQuotaの引き上げを依頼 →すばやく対応していただき、連絡から30分以内に引き上げ 異常は解消。 Point! AWSのメトリクスがDatadogにまだ反映されていなかった(30分後には反映) SaaSにダッシュボードを集約すると便利だが、こんなこともあるので要注意!

Slide 20

Slide 20 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 実例紹介① ~ AWSとSaaSの棲み分けポイント ~ 19 SaaSは便利だが、すべてのメトリクスが リアルタイムに反映されない。 ダッシュボード化は担当者任せなのでメトリクスに漏れも発生 AWSでは各サービスのコンソールに 「異常が発生した際に見ておきたい」ダッシュボードが存在 Amazon Aurora Amazon DynamoDB このサービスたちも! ラクラク!

Slide 21

Slide 21 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. -20- 実例紹介② ~ カスタムメトリクスでラクラク可視化 ~

Slide 22

Slide 22 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 21 AWS Cloud 他クラウド 他システム Amazon CloudWatchのカスタムメトリクス を使えば簡単に可視化できる! 実例紹介② ~カスタムメトリクスでラクラク可視化 ~ Amazon CloudWatchカスタムメトリクスを使って、メトリクス以外の要素を可視化 例) ・AWS連携している他クラウドの状況 ・DBの値 import boto3 cloudwatch = boto3.client('cloudwatch') … PutMetricData = cloudwatch.put_metric_data( Namespace='string', MetricData=[ { 'MetricName': 'string', 'Dimensions': [ { 'Name': 'string', 'Value': 'string' }, ], 'Timestamp': datetime(2015, 1, 1), 'Value': 123.0, 'Unit': "Count", … }, … ラクラク!

Slide 23

Slide 23 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. AWS Cloud CloudWatchカスタムメトリクスでラクラク可視化 22 キュー数のチェック Pub/Sub キュー数確認 タスク数の変更 CloudWatch アラーム Auto Scaling ・・・ Application AutoScaling CloudWatch カスタムメトリクス AWS連携している他クラウドの状況 ・他クラウドのキュー滞留数をCloudWatchのカスタムメトリクスに記録 → キュー処理をAutoScaling化してECSタスクを増減可能に ラクラク!

Slide 24

Slide 24 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. AWS Cloud CloudWatchカスタムメトリクスでラクラク可視化 23 Pub/Sub キュー数確認 CloudWatch カスタムメトリクス Amazon DynamoDB Amazon ElastiCache データベースの値やロジック値を CloudWatchカスタムメトリクスを通して可視化できる DBの値 ・DynamoDBやElastiCacheのテーブルに格納されている値をカスタムメトリクスへPush → CloudWatchカスタムメトリクスを通してDB値(例では待機人数)の増減状況を可視化 ラクラク!

Slide 25

Slide 25 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. まとめ -24-  複雑化するシステムのどこで何が起こっているのか知るためObservabilityは必須  AWSのサービスやSaaSを使うとシステム運用がラクになる。 AWSとSaaSの棲み分けを理解し、必要な場面で使い分けを  AWS各サービスコンソールのダッシュボードを活用しよう  AWS CloudWatchカスタムメトリクスは色々な値をラクラク可視化できる 運用をラクにする目的で Observabilityを使いこなそう

Slide 26

Slide 26 text

© 2008 NTT DOCOMO, INC. All rights reserved. © 2023 NTT DOCOMO,INC. All Rights Reserved. 25 ご清聴ありがとうございました。