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
adot-collectorを本番環境に導入してみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
clouddev-code
September 26, 2023
810
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
adot-collectorを本番環境に導入してみた
clouddev-code
September 26, 2023
More Decks by clouddev-code
See All by clouddev-code
microVMsのユースケースを考える.pdf
cloudevcode
0
51
cdk8s_Helm_どちらを選ぶべきか_rev.pdf
cloudevcode
0
150
Regional_NAT_Gatewayについて_basicとの違い_試した内容スケールアウト_インについて_IPv6_dual_networkでの使い分けなど.pdf
cloudevcode
1
930
Grafana_LokiをECS_Fargateで構築する観点公開版.pdf
cloudevcode
0
65
ADK_for_Java.pdf
cloudevcode
1
110
initContainerをECSで実現したい.pdf
cloudevcode
0
47
VPC_Lattice検討したが_採用しなかった話.pptx.pptx.pdf
cloudevcode
0
36
Presentation_-_コンテナイメージ高速化技術.pptx.pdf
cloudevcode
0
44
GitHub_Copilot_AgentでするMCP_Streamable_HTTPまで.pdf
cloudevcode
0
130
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.4k
How to Ace a Technical Interview
jacobian
281
24k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
450
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
270
Claude Code のすすめ
schroneko
67
230k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
520
The Cult of Friendly URLs
andyhume
79
7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.2k
Deep Space Network (abreviated)
tonyrice
0
290
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Transcript
adot-collectorを本番環境に導入してみた
About us Soushi Hiruta コンテナを活用したマイクロサービス基盤設計、構築 SPA、BackendAPI基盤設計、構築 AWS CDK歴 1.5年ほど
CodeCatalystのDev Environmentsでpythonがaliasバージョン固定されている CodeCatalystのDev Environmentsでpyenvで別のバージョンいれても。。。 CodeCatalystのDev EnvironmentsはAmazonLinux2 /etc/profile.d/python3_default.sh
Agenda • 可観測性 • マイクロサービスでの可観測性の課題 • 収集方法 • 構成図 •
変更前 • 変更前の課題 • AWS Distro for OpenTelemetry Collector • 構成図 • 本番環境に適用して発生した課題 • まとめ
可観測 • マイクロサービス的システムでは分散システムになって、メトリクス だけは不十分 AWS Distro for OpenTelemetryを試してみた https://zenn.dev/kobayashi_m42/articles/try-aws-distro-for-opentelemetry
可観測
解決策
収集方法 • Cloudwatch Agent • AWS Distro for Open Telemetry
( ADOT )
全体構成図 CloudwatchAgent
CloudwatchAgent • ヒストグラムに対応していない、jvm metricsなどコンテナ単位で収 集しているので、長期的な傾向がみずらい • Cloudwatch logs、カスタムメトリクスの課金 •
AWS Distro for Open Telemetry
構成図 •
コンフィグ https://github.com/aws-observability/aws-otel-collector/blob/main/config/ecs/ecs-amp-prometheus.yaml メトリクス取得間隔、取得先の設定 左の例だと20s間隔で取得
コンフィグ https://github.com/aws-observability/aws-otel-collector/blob/main/config/ecs/ecs-amp-prometheus.yaml AMP Amazon Managed Prometheusの エンドポイントを設定
コンフィグ https://github.com/aws-observability/aws-otel-collector/blob/main/config/ecs/ecs-amp-prometheus.yaml Containerinsightsで取得できるcpu、メモ リも取得できる
コンフィグ https://github.com/aws-observability/aws-otel-collector/blob/main/config/ecs/ecs-amp-prometheus.yaml 受信(receivers)、処理(processors)、 exporterの設定を行う
AMPメトリクスのグラフ化 https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-onboard-query-standalone-grafana.html Amazon managed for Grafanaなど利用する。 AWS Signature Version 4
(SigV4) authenticationに対応したGrafanaである必要あり
問題ないようにみえたが。。。 •
• メモリ使用量が右肩上がり。。。
Memory Limiter Processor https://github.com/open-telemetry/opentelemetry-collector/tree/main/processor/memorylimiterproce ssor#memory-limiter-processor
Memory Limiter Processor https://github.com/open-telemetry/opentelemetry-collector/tree/main/processor/memorylimiterproce ssor#memory-limiter-processor
Memory Limiter Processor https://github.com/open-telemetry/opentelemetry-collector/tree/main/processor/memorylimiterproce ssor#memory-limiter-processor processorsに、memory_limiterをいれ る
まとめ • • ADOT sidecarを利用することでenvoy metrics、jvm metricsなど をAmazon managed for
prometheusにエクスポートできる • sidecarのメモリ制限は必須
紹介したリファレンス • • オブザーバビリティ・エンジニアリング https://www.oreilly.co.jp/books/9784814400126/ • WS Distro
for OpenTelemetryを試してみた https://zenn.dev/kobayashi_m42/articles/try-aws-distro-for-opentelemetry • https://github.com/aws-observability/aws-otel-collector • https://github.com/open-telemetry/opentelemetry-collector/tree/main/processor/memorylimite rprocessor#memory-limiter-processor •