SlideShare une entreprise Scribd logo
1  sur  24
© 2021, Amazon Web Services, Inc. or its Affiliates.
2021-09
メトリクス⼊⾨
CloudWatch Container Insights
AWS Blackbelt Container
© 2021, Amazon Web Services, Inc. or its Affiliates.
分散システムを「観測可能」にする三つの柱
• システム内で発⽣したイベント情報
• 各イベントが独⽴したレコードとして記録される
• タイムスタンプを伴うことが多い
• e.g. アクセスログ、 エラー情報、…
• ある時点のなんらかのシステム状態を表現する数値情報
• ⼀定間隔ごとの時系列データとして記録される
• 1つ以上のディメンジョン/ラベルで識別される
• e.g. CPU 使⽤率、エラー率、ストレージ残容量、…
• 1つのトランザクションを複数システムで構成するフロー情報
• トランザクションごとにユニークな識別⼦をもって記録される
• システム間のやりとりに関するメタ情報付与も
• e.g. ある HTTP リクエストの受け取りからレスポンスまで
• 「リクエスト・パス」
© 2021, Amazon Web Services, Inc. or its Affiliates.
分散システムを「観測可能」にする三つの柱
• システム内で発⽣したイベント情報
• 各イベントが独⽴したレコードとして記録される
• タイムスタンプを伴うことが多い
• e.g. アクセスログ、 エラー情報、…
• ある時点のなんらかのシステム状態を表現する数値情報
• ⼀定間隔ごとの時系列データとして記録される
• 1つ以上のディメンジョン/ラベルで識別される
• e.g. CPU 使⽤率、エラー率、ストレージ残容量、…
• 1つのトランザクションを複数システムで構成するフロー情報
• トランザクションごとにユニークな識別⼦をもって記録される
• システム間のやりとりに関するメタ情報付与も
• e.g. ある HTTP リクエストの受け取りからレスポンスまで
• 「リクエスト・パス」
Amazon
CloudWatch
Amazon
CloudWatch
AWS
X-Ray
© 2021, Amazon Web Services, Inc. or its Affiliates.
このセッションで扱うこと
• AWS CloudWatch Container Insights 概要
• AWS CloudWatch Container Insights の準備
• AWS CloudWatch Container Insights の利⽤例
(注)AWS CloudWatch Logs Insights および AWS X-Ray とも統合
されていますが、メトリクス中⼼に扱います
4
© 2021, Amazon Web Services, Inc. or its Affiliates.
Container Insights概要
© 2021, Amazon Web Services, Inc. or its Affiliates.
• CloudWatchのデフォルトの設定ではタスク、コンテナ単位のメトリクスが取得できなかった
• タスク、コンテナ単位レベルの問題を検知する際に、より詳細なメトリクス情報が必要と
なる場合があった
タスク、コンテナ単位レベルの問題の検知が難しい例 )
Container Insights登場前のコンテナモニタリングの例
サービス
タスク A タスク B タスク C Amazon CloudWatch
Logs
サービス全体の
CPU使⽤率︓50%
サービス単位の
メトリクス
CPU使⽤率: 25% CPU使⽤率: 99% CPU使⽤率: 25%
⼀部のTaskに負荷が集中していても
検知できない
サービス全体としてはパフォーマンスに
問題ないように⾒えてしまう
© 2021, Amazon Web Services, Inc. or its Affiliates.
• 各コンテナからECSタスクメタデータエンドポイントを呼び出し、カスタムメトリクスと
してCloudWatchにメトリクスを送信する
• サードパーティー製のメトリクス送信⽤のコンテナをサイドカーとして配置する
サービス
タスク
タスク タスク
メトリクス
送信⽤コンテナ
Amazon CloudWatch
サービス単位
のメトリクス
ECSタスクメタデータ
エンドポイント
ECSタスクメタデータエ
ンドポイント
ECSタスクメタデータ
エンドポイント
Container Insights登場前のコンテナモニタリングの例
タスクやコンテナレベルのメトリクスを取得するには何かしらの⼯夫が必要だった
サードパーティ製の分析ツール
カスタム
メトリクス
メトリクス
メトリクス
送信⽤コンテナ
メトリクス
送信⽤コンテナ
Appコンテナ Appコンテナ Appコンテナ
© 2021, Amazon Web Services, Inc. or its Affiliates.
Amazon CloudWatch Container Insightsとは
• コンテナ化されたアプリケーションのメトリクスとログを収集、集計、
要約できるCloudWatchの機能の⼀つ
• CloudWatchにてタスク、コンテナレベルでのモニタリングが可能
• Container Insights が収集するメトリクスは ⾃動的に作成される
ダッシュボードに集約され、より鋭い洞察を⾏うことが可能
• AWSが提供するコンテナオーケストレーションツールであるAmazon
ECSや、Amazon EKS、および Amazon EC2 の Kubernetes プラット
フォームでご利⽤可能
© 2021, Amazon Web Services, Inc. or its Affiliates.
Amazon CloudWatch Container Insightsの概要
• Amazon CloudWatchと統合された、タスクやコンテナレベルでメトリクスやログを
取得することが可能
サービス
タスク A タスク B タスク C
CPU使⽤率: 25% CPU使⽤率: 99% CPU使⽤率: 25%
© 2021, Amazon Web Services, Inc. or its Affiliates.
Amazon CloudWatch Container Insightsの概要
• Container Insights が収集するメトリクスは ⾃動的にダッシュボードに集約され、
可視化を⾏うことが可能
© 2021, Amazon Web Services, Inc. or its Affiliates.
Amazon CloudWatch Container Insightsの概要
• CloudWatch Logs InsightsやX-Rayとも統合されている
• Container Insightsのダッシュボードを起点により詳細な分析が可能
Container Insights
Amazon CloudWatch
Logs Insights
AWS X-Ray
• グラフのより詳細な値を⾒たい
• ログに対し分析クエリを発⾏したい
CloudWatch Logs Insightsの要件の例
• タスク間の通信をトレースしたい
X-Ray を使う要件の例
© 2021, Amazon Web Services, Inc. or its Affiliates.
Container Insightsの使い方
© 2021, Amazon Web Services, Inc. or its Affiliates.
Container Insightsを有効にする 〜 ECS編 〜
• マネジメントコンソールの「ステップ 2: クラスターの設定」画⾯にて
「 Container Insights を有効にする」にチェックを⼊れる
新規のクラスタに対し有効化する
© 2021, Amazon Web Services, Inc. or its Affiliates.
• Container Insightsのオプトインについて
Container Insightsを有効にする 〜 ECS編 〜
n Container Insightsは以下の単位でデフォルトで有効化することが可能
・
・
・
画⾯下部へ移動
• アカウント全体
• IAMロール
• IAMユーザ
適⽤範囲でContainer Insightsがデフォルトで有効にな
る
© 2021, Amazon Web Services, Inc. or its Affiliates.
Container Insightsを有効にする 〜 ECS編 〜
• Container Insightsが有効かどうかは、ECSのクラスター画⾯で「Container
Insights」に緑⾊のチェックが⼊っているかどうかで確認できる
© 2021, Amazon Web Services, Inc. or its Affiliates.
Container Insightsを有効にする 〜 EKS編 〜
Container Insightsを有効にするための前提条件を確認
https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/Container-Insights-prerequisites.html
◼Amazon EKS と Kubernetes で Container Insights をセットアップする 前提条件の確認
• Container Insightsが利⽤可能なリージョンでクラスタが起動している
• kubectl がインストール、権限設定が完了しており、 kubectl apply が実⾏可能な状態になっている
• IAM のアクセス許可
• ワーカーノードの IAM ロールにポリシーをアタッチ
or
• クラスターでサービスアカウントの IAMロールを使⽤し、このロールにポリシーをアタッチ
© 2021, Amazon Web Services, Inc. or its Affiliates.
Container Insightsを有効にする 〜 EKS編 〜
Container Insightsを有効にする⼿順
https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/deploy-container-insights-EKS.html
◼Amazon EKS と Kubernetes で Container Insights をセットアップする
• 必須⼿順
• CloudWatch にメトリクスを送信する CloudWatch エージェントまたは、または AWS
Distro for OpenTelemetry を DaemonSet としてセットアップ
• CloudWatch Logs にログを送信する DaemonSet として FluentD/Fluent Bit をセット
アップ
• オプション⼿順
• Amazon EKS コントロールプレーンのログ記録を有効にする(コントロールプレーンのロ
グをCloudWatch Logsで監査する必要がある場合)
• StatsD エンドポイントとして CloudWatch エージェントをセットアップする(StatsDを使
⽤している場合)
• App Mesh Envoy アクセスログを有効にする
© 2021, Amazon Web Services, Inc. or its Affiliates.
ユースケース
ECSでタスクに配置するコンテナのリソースを適切な
サイズにチューニングしたい
© 2021, Amazon Web Services, Inc. or its Affiliates.
ユースケースの詳細
• コンテナごとの適切なリソースの配分は⾮常に重要
• 適切でないリソース配分はパフォーマンスの劣化や、過剰なリソースの確保、リソース不
⾜によるプロセスの停⽌につながる可能性がある
タスク
Nginxコンテナ Railsコンテナ
256MiB
256ユニット
768MiB
768ユニット
250 /
250 /
128 /
128 /
CPUユニット数: 1024ユニット
メモリ: 1024MB
を割り当てる
• タスク全体ではリソースに余⼒があるが、⽚⽅のコンテナ
でリソースが⾜りていない
512MiB
512ユニット
1536MiB
1536ユニット
250 /
250 /
128 /
128 /
CPUユニット数: 2048ユニット
メモリ: 2048MB
を割り当てる
タスク
Nginxコンテナ Railsコンテナ
• どちらのコンテナにも余⼒があるが、タスク全体で
リソースを効率的に使えていない状態
例) リソースが適切に配分できていない例
© 2021, Amazon Web Services, Inc. or its Affiliates.
Container Insightsを使って適切なリソース配分を⾏う
• Container Insightsはコンテナ単位のリソースモニタリングが可能であるため、各コンテナ
に適切なリソース配分が⾏われているかを確認できる
• 適切なリソース配分により、効率的かつ安全に運⽤できるリソースを割り当てる
タスク
Nginxコンテナ Railsコンテナ
680MiB
680ユニット
344MiB
344ユニット
250 /
250 /
128 /
128 /
タスク
Nginxコンテナ Railsコンテナ
256MiB
256ユニット
768MiB
768ユニット
250 /
250 /
128 /
128 /
CPUユニット数: 1024ユニット
メモリ: 1024MB
を割り当てる
Container Insightsを使ってリソースの使
⽤状況をモニタリングする
チューニング
CPUユニット数: 1024ユニット
メモリ: 1024MB
を割り当てる
© 2021, Amazon Web Services, Inc. or its Affiliates.
ステップ1. Containerごとのメトリクスを確認する
• Container Insightsの⾃動ダッシュボードから「ECS Tasks」を選択し、Containerご
とのパフォーマンスを確認する
⽚⽅のコンテナに負荷が偏ってい
ることが判明した︕
© 2021, Amazon Web Services, Inc. or its Affiliates.
ステップ.2 Containerリソース配分を変更する
• ECSコンソールのタスク定義からタスク内のコンテナリソース配分を変更する
container-a︓メモリ256MB/CPU 128ユニット
container-b︓メモリ256MB/CPU 128ユニット
container-a︓メモリ384MB/CPU 192ユニット
container-b︓メモリ128MB/CPU 64 ユニット
© 2021, Amazon Web Services, Inc. or its Affiliates.
ステップ3. 再びContainerごとのリソースを確認
• あらためて Container Insights からコンテナごとのリソース使⽤状況を確認する
適切なリソース割り当てが
できたことを確認︕
© 2021, Amazon Web Services, Inc. or its Affiliates.
このセッションで扱ったこと
• AWS CloudWatch Container Insights 概要
ü パフォーマンス変化、リソース使⽤率、運⽤状況把握
• AWS CloudWatch Container Insights の準備
ü ECS ではクラスタ作成時に選ぶだけ (あとからでも可)
ü EKS では DaemonSet として CloudWatch エージェント
• AWS CloudWatch Container Insights の利⽤例
ü コンテナ単位のメトリクスを確認して最適な配置
24

Contenu connexe

Plus de Amazon Web Services Japan

202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用Amazon Web Services Japan
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdfAmazon Web Services Japan
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介Amazon Web Services Japan
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon Web Services Japan
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことAmazon Web Services Japan
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチAmazon Web Services Japan
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介Amazon Web Services Japan
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer ProfilesAmazon Web Services Japan
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨Amazon Web Services Japan
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介Amazon Web Services Japan
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介Amazon Web Services Japan
 
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...Amazon Web Services Japan
 
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピAmazon Web Services Japan
 
20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operations20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operationsAmazon Web Services Japan
 
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報Amazon Web Services Japan
 
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをなAmazon Web Services Japan
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPNAmazon Web Services Japan
 

Plus de Amazon Web Services Japan (20)

202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
 
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
 
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
202112 AWS Black Belt Online Seminar 店内の「今」をお届けする小売業向けリアルタイム配信基盤のレシピ
 
20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operations20211209 Ops-JAWS Re invent2021re-cap-cloud operations
20211209 Ops-JAWS Re invent2021re-cap-cloud operations
 
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
20211203 AWS Black Belt Online Seminar AWS re:Invent 2021アップデート速報
 
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
[AWS EXpert Online for JAWS-UG 18] 見せてやるよ、Step Functions の本気ってやつをな
 
20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes
 
20211109 bleaの使い方(基本編)
20211109 bleaの使い方(基本編)20211109 bleaの使い方(基本編)
20211109 bleaの使い方(基本編)
 
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
 

Dernier

論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Dernier (9)

論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

202109 AWS Black Belt Online Seminar メトリクス入門 CloudWatch Container Insights

  • 1. © 2021, Amazon Web Services, Inc. or its Affiliates. 2021-09 メトリクス⼊⾨ CloudWatch Container Insights AWS Blackbelt Container
  • 2. © 2021, Amazon Web Services, Inc. or its Affiliates. 分散システムを「観測可能」にする三つの柱 • システム内で発⽣したイベント情報 • 各イベントが独⽴したレコードとして記録される • タイムスタンプを伴うことが多い • e.g. アクセスログ、 エラー情報、… • ある時点のなんらかのシステム状態を表現する数値情報 • ⼀定間隔ごとの時系列データとして記録される • 1つ以上のディメンジョン/ラベルで識別される • e.g. CPU 使⽤率、エラー率、ストレージ残容量、… • 1つのトランザクションを複数システムで構成するフロー情報 • トランザクションごとにユニークな識別⼦をもって記録される • システム間のやりとりに関するメタ情報付与も • e.g. ある HTTP リクエストの受け取りからレスポンスまで • 「リクエスト・パス」
  • 3. © 2021, Amazon Web Services, Inc. or its Affiliates. 分散システムを「観測可能」にする三つの柱 • システム内で発⽣したイベント情報 • 各イベントが独⽴したレコードとして記録される • タイムスタンプを伴うことが多い • e.g. アクセスログ、 エラー情報、… • ある時点のなんらかのシステム状態を表現する数値情報 • ⼀定間隔ごとの時系列データとして記録される • 1つ以上のディメンジョン/ラベルで識別される • e.g. CPU 使⽤率、エラー率、ストレージ残容量、… • 1つのトランザクションを複数システムで構成するフロー情報 • トランザクションごとにユニークな識別⼦をもって記録される • システム間のやりとりに関するメタ情報付与も • e.g. ある HTTP リクエストの受け取りからレスポンスまで • 「リクエスト・パス」 Amazon CloudWatch Amazon CloudWatch AWS X-Ray
  • 4. © 2021, Amazon Web Services, Inc. or its Affiliates. このセッションで扱うこと • AWS CloudWatch Container Insights 概要 • AWS CloudWatch Container Insights の準備 • AWS CloudWatch Container Insights の利⽤例 (注)AWS CloudWatch Logs Insights および AWS X-Ray とも統合 されていますが、メトリクス中⼼に扱います 4
  • 5. © 2021, Amazon Web Services, Inc. or its Affiliates. Container Insights概要
  • 6. © 2021, Amazon Web Services, Inc. or its Affiliates. • CloudWatchのデフォルトの設定ではタスク、コンテナ単位のメトリクスが取得できなかった • タスク、コンテナ単位レベルの問題を検知する際に、より詳細なメトリクス情報が必要と なる場合があった タスク、コンテナ単位レベルの問題の検知が難しい例 ) Container Insights登場前のコンテナモニタリングの例 サービス タスク A タスク B タスク C Amazon CloudWatch Logs サービス全体の CPU使⽤率︓50% サービス単位の メトリクス CPU使⽤率: 25% CPU使⽤率: 99% CPU使⽤率: 25% ⼀部のTaskに負荷が集中していても 検知できない サービス全体としてはパフォーマンスに 問題ないように⾒えてしまう
  • 7. © 2021, Amazon Web Services, Inc. or its Affiliates. • 各コンテナからECSタスクメタデータエンドポイントを呼び出し、カスタムメトリクスと してCloudWatchにメトリクスを送信する • サードパーティー製のメトリクス送信⽤のコンテナをサイドカーとして配置する サービス タスク タスク タスク メトリクス 送信⽤コンテナ Amazon CloudWatch サービス単位 のメトリクス ECSタスクメタデータ エンドポイント ECSタスクメタデータエ ンドポイント ECSタスクメタデータ エンドポイント Container Insights登場前のコンテナモニタリングの例 タスクやコンテナレベルのメトリクスを取得するには何かしらの⼯夫が必要だった サードパーティ製の分析ツール カスタム メトリクス メトリクス メトリクス 送信⽤コンテナ メトリクス 送信⽤コンテナ Appコンテナ Appコンテナ Appコンテナ
  • 8. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon CloudWatch Container Insightsとは • コンテナ化されたアプリケーションのメトリクスとログを収集、集計、 要約できるCloudWatchの機能の⼀つ • CloudWatchにてタスク、コンテナレベルでのモニタリングが可能 • Container Insights が収集するメトリクスは ⾃動的に作成される ダッシュボードに集約され、より鋭い洞察を⾏うことが可能 • AWSが提供するコンテナオーケストレーションツールであるAmazon ECSや、Amazon EKS、および Amazon EC2 の Kubernetes プラット フォームでご利⽤可能
  • 9. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon CloudWatch Container Insightsの概要 • Amazon CloudWatchと統合された、タスクやコンテナレベルでメトリクスやログを 取得することが可能 サービス タスク A タスク B タスク C CPU使⽤率: 25% CPU使⽤率: 99% CPU使⽤率: 25%
  • 10. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon CloudWatch Container Insightsの概要 • Container Insights が収集するメトリクスは ⾃動的にダッシュボードに集約され、 可視化を⾏うことが可能
  • 11. © 2021, Amazon Web Services, Inc. or its Affiliates. Amazon CloudWatch Container Insightsの概要 • CloudWatch Logs InsightsやX-Rayとも統合されている • Container Insightsのダッシュボードを起点により詳細な分析が可能 Container Insights Amazon CloudWatch Logs Insights AWS X-Ray • グラフのより詳細な値を⾒たい • ログに対し分析クエリを発⾏したい CloudWatch Logs Insightsの要件の例 • タスク間の通信をトレースしたい X-Ray を使う要件の例
  • 12. © 2021, Amazon Web Services, Inc. or its Affiliates. Container Insightsの使い方
  • 13. © 2021, Amazon Web Services, Inc. or its Affiliates. Container Insightsを有効にする 〜 ECS編 〜 • マネジメントコンソールの「ステップ 2: クラスターの設定」画⾯にて 「 Container Insights を有効にする」にチェックを⼊れる 新規のクラスタに対し有効化する
  • 14. © 2021, Amazon Web Services, Inc. or its Affiliates. • Container Insightsのオプトインについて Container Insightsを有効にする 〜 ECS編 〜 n Container Insightsは以下の単位でデフォルトで有効化することが可能 ・ ・ ・ 画⾯下部へ移動 • アカウント全体 • IAMロール • IAMユーザ 適⽤範囲でContainer Insightsがデフォルトで有効にな る
  • 15. © 2021, Amazon Web Services, Inc. or its Affiliates. Container Insightsを有効にする 〜 ECS編 〜 • Container Insightsが有効かどうかは、ECSのクラスター画⾯で「Container Insights」に緑⾊のチェックが⼊っているかどうかで確認できる
  • 16. © 2021, Amazon Web Services, Inc. or its Affiliates. Container Insightsを有効にする 〜 EKS編 〜 Container Insightsを有効にするための前提条件を確認 https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/Container-Insights-prerequisites.html ◼Amazon EKS と Kubernetes で Container Insights をセットアップする 前提条件の確認 • Container Insightsが利⽤可能なリージョンでクラスタが起動している • kubectl がインストール、権限設定が完了しており、 kubectl apply が実⾏可能な状態になっている • IAM のアクセス許可 • ワーカーノードの IAM ロールにポリシーをアタッチ or • クラスターでサービスアカウントの IAMロールを使⽤し、このロールにポリシーをアタッチ
  • 17. © 2021, Amazon Web Services, Inc. or its Affiliates. Container Insightsを有効にする 〜 EKS編 〜 Container Insightsを有効にする⼿順 https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/deploy-container-insights-EKS.html ◼Amazon EKS と Kubernetes で Container Insights をセットアップする • 必須⼿順 • CloudWatch にメトリクスを送信する CloudWatch エージェントまたは、または AWS Distro for OpenTelemetry を DaemonSet としてセットアップ • CloudWatch Logs にログを送信する DaemonSet として FluentD/Fluent Bit をセット アップ • オプション⼿順 • Amazon EKS コントロールプレーンのログ記録を有効にする(コントロールプレーンのロ グをCloudWatch Logsで監査する必要がある場合) • StatsD エンドポイントとして CloudWatch エージェントをセットアップする(StatsDを使 ⽤している場合) • App Mesh Envoy アクセスログを有効にする
  • 18. © 2021, Amazon Web Services, Inc. or its Affiliates. ユースケース ECSでタスクに配置するコンテナのリソースを適切な サイズにチューニングしたい
  • 19. © 2021, Amazon Web Services, Inc. or its Affiliates. ユースケースの詳細 • コンテナごとの適切なリソースの配分は⾮常に重要 • 適切でないリソース配分はパフォーマンスの劣化や、過剰なリソースの確保、リソース不 ⾜によるプロセスの停⽌につながる可能性がある タスク Nginxコンテナ Railsコンテナ 256MiB 256ユニット 768MiB 768ユニット 250 / 250 / 128 / 128 / CPUユニット数: 1024ユニット メモリ: 1024MB を割り当てる • タスク全体ではリソースに余⼒があるが、⽚⽅のコンテナ でリソースが⾜りていない 512MiB 512ユニット 1536MiB 1536ユニット 250 / 250 / 128 / 128 / CPUユニット数: 2048ユニット メモリ: 2048MB を割り当てる タスク Nginxコンテナ Railsコンテナ • どちらのコンテナにも余⼒があるが、タスク全体で リソースを効率的に使えていない状態 例) リソースが適切に配分できていない例
  • 20. © 2021, Amazon Web Services, Inc. or its Affiliates. Container Insightsを使って適切なリソース配分を⾏う • Container Insightsはコンテナ単位のリソースモニタリングが可能であるため、各コンテナ に適切なリソース配分が⾏われているかを確認できる • 適切なリソース配分により、効率的かつ安全に運⽤できるリソースを割り当てる タスク Nginxコンテナ Railsコンテナ 680MiB 680ユニット 344MiB 344ユニット 250 / 250 / 128 / 128 / タスク Nginxコンテナ Railsコンテナ 256MiB 256ユニット 768MiB 768ユニット 250 / 250 / 128 / 128 / CPUユニット数: 1024ユニット メモリ: 1024MB を割り当てる Container Insightsを使ってリソースの使 ⽤状況をモニタリングする チューニング CPUユニット数: 1024ユニット メモリ: 1024MB を割り当てる
  • 21. © 2021, Amazon Web Services, Inc. or its Affiliates. ステップ1. Containerごとのメトリクスを確認する • Container Insightsの⾃動ダッシュボードから「ECS Tasks」を選択し、Containerご とのパフォーマンスを確認する ⽚⽅のコンテナに負荷が偏ってい ることが判明した︕
  • 22. © 2021, Amazon Web Services, Inc. or its Affiliates. ステップ.2 Containerリソース配分を変更する • ECSコンソールのタスク定義からタスク内のコンテナリソース配分を変更する container-a︓メモリ256MB/CPU 128ユニット container-b︓メモリ256MB/CPU 128ユニット container-a︓メモリ384MB/CPU 192ユニット container-b︓メモリ128MB/CPU 64 ユニット
  • 23. © 2021, Amazon Web Services, Inc. or its Affiliates. ステップ3. 再びContainerごとのリソースを確認 • あらためて Container Insights からコンテナごとのリソース使⽤状況を確認する 適切なリソース割り当てが できたことを確認︕
  • 24. © 2021, Amazon Web Services, Inc. or its Affiliates. このセッションで扱ったこと • AWS CloudWatch Container Insights 概要 ü パフォーマンス変化、リソース使⽤率、運⽤状況把握 • AWS CloudWatch Container Insights の準備 ü ECS ではクラスタ作成時に選ぶだけ (あとからでも可) ü EKS では DaemonSet として CloudWatch エージェント • AWS CloudWatch Container Insights の利⽤例 ü コンテナ単位のメトリクスを確認して最適な配置 24