SlideShare une entreprise Scribd logo
1  sur  19
- 2022/09/27 Kubernetes Novice Tokyo #21 -
OpneTelemetry を用いた Observability 基盤の実装
with AWS Distro for OpenTelemetry
所属:
氏名:逆井 啓佑(さかさい けいすけ)
© 2022 NTT DATA Corporation
自己紹介
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
逆井 啓佑
さかさい
belongs:
carrier:
3 yrs:”Scrum Team の PO 兼 非機能試験担当”
k8sNovice:
#17:”性能試験は CI/CD にお任せ!”
description:
性能試験の際に、当たり前にトレースやログ、
メトリクスを GCP で見てるが、そもそもこれって
どうやって取得、可視化してるの
...?????
- 2022/09/27 Kubernetes Novice Tokyo #21 -
自己紹介
Observability
(o11y)
テレメトリー
OpenTelemetry
(Otel)
© 2022 NTT DATA Corporation
ログ/トレース
の紐付け
Observability
(o11y)
テレメトリー
OpenTelemetry
(Otel)
ログ/トレース
の紐付け
自己紹介
- 2022/09/27 Kubernetes Novice Tokyo #21 -
k8s 上のアプリに
Observability を整備して基本を勉強 しよう。
=> 今回は 構築した o11y 基盤について LT します!
© 2022 NTT DATA Corporation
Introduction
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
イントロとして Observability 〜 OpenTelemetry まで
学んだことを簡単にお話しします。
※ 勉強するにあたって O11yCon2022 が大変手助けになりました。
イントロページもカンファレンスの Session を多く参考にさせて頂いております。
Ref:
・入門 OpenTelemetry Collector (@katzchang san)
・kubernetes Observability入門 (@yosshi_ san)
Introduction: Observability
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
Observability の Three pillars(三本柱) => 今は Primary Signals と呼ぶ
Logs Traces Metrics
システムの イベント
を時系列で記録 したもの
特定の時間間隔で
測定された統計値
複数のコンポーネントに
またがる リクエスト全体の流れ/
依存関係を可視化 したもの
ログ トレース メトリクス
これらをまとめてテレメトリー
Introduction: OpenTelemetry
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
o11y やるには、テレメトリがないと始まらない
テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化)
Service
Input Output
計
装
Exp.
テレメトリ
ログ
メトリクス
トレース
Ref:
・OpenTelemetryのこれまでとこれから (@ymotongpoo san)
❶ 計装やエクスポータ−は
(基本的に)アプリに実装する必要がある
1/3
Introduction: OpenTelemetry
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
o11y やるには、テレメトリがないと始まらない
テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化)
Service
Input Output
計
装
Exp.
テレメトリ
ログ
メトリクス
トレース
Ref:
・OpenTelemetryのこれまでとこれから (@ymotongpoo san)
2/3
❷ 計装や Exp. は各種 OSS やサービスが
API / SDK を提供している
→ Proprietary(ベンダ依存)に繋がる
Introduction: OpenTelemetry
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
o11y やるには、テレメトリがないと始まらない
テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化)
Service
Input Output
計
装
Exp.
テレメトリ
ログ
メトリクス
トレース
Ref:
・OpenTelemetryのこれまでとこれから (@ymotongpoo san)
❸ OpenTelemetry は
テレメトリの計装・エクスポータ−の 標準仕様
3/3
※ エクスポーターとモニタリングサービスの間に
OpenTelemetry Collector を挟むアーキテクチャが一般的。Reference 群を参考
Introduction: OpenTelemetry
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
o11y やるには、テレメトリがないと始まらない
テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化)
Service
Input Output
計
装
Exp.
テレメトリ
ログ
メトリクス
トレース
Ref:
・OpenTelemetryのこれまでとこれから (@ymotongpoo san)
❸ OpenTelemetry は
テレメトリの計装・エクスポータ−の 標準仕様
3/3
※ エクスポーターとモニタリングサービスの間に
OpenTelemetry Collector を挟むアーキテクチャが一般的。Reference 群を参考
Introduction はここまでで、
以降検証についてご紹介させていただきます。
© 2022 NTT DATA Corporation
検証環境: AWS Distro for OpneTelemetry(ADOT)
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
今回は AWS Distro for OpenTelemetry(ADOT) を扱うことで、
OpenTelemetry への理解を深めることにしました。
ADOT は、、、
● OpenTelemetry PJ の AWS サポートのディストリビューション
○ OpenTelemetryの仕様に沿って開発
● EKS(Elastic Kubernete Service) 上で OTel を使う ために、
便利なコンポーネントがプリインストールされている! Ref: https://aws-otel.github.io/
検証環境: AWS Distro for OpneTelemetry(ADOT)
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
今回は AWS Distro for OpenTelemetry(ADOT) を扱うことで、
OpenTelemetry への理解を深めることにしました。
1
2
限られた時間で、計装さえすれば、
バックエンドソリューションは X-Ray、Cloud Watch など整備されている点
(自前で Jaeger / Loki / Prometheus など整備もできるが容易ではない)
エンタープライズ的にも、AP の実装は Open 化(OTel 化)しながらも、
AWS のモニタリングサービスは継続的に使いたいといったケースはあると考えられ、
AWS Distro 今後ますます需要が高まると考えたため(スキルセットの獲得)
ADOT の Architecture
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
μサービス
Kubernetes
API Server
ADOT Collector
Prometheus
Receiver
AWS
Prometheus
Exporter
Processor
AWS X-Ray
Receiver
AWS X-Ray
Exporter
Service Account
● Otel Library で計装済のマイクロサービスからテレメトリを受信
● ADOT Collector は EKS の場合 Sidecar や DaemonSet としてデプロイされる
● AWSモニタリングサービスや、サードパーティサービスに送信
今回構築した基盤はこちら
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
Todo
BFF
Todo
API
User
API
DB
todo namespace observability namespace
Fluent
Bit
ADOT Collector
X-Ray
Cloudwatch
Cloudwatch logs
otel-collector.observability.svc.cluster.local:4318
へ、trace や Span を送信
❷ Tracd
❶ Log
❸ Metrics
ログは Golang で
Not Yet Implemented
の Status
Ref: https://opentelemetry.io/status/
Ref:
・OpenTelemetryを知れば世界が平和に (@nwiizo san)
テレメトリの取得: トレースとログ
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
Logs Traces Metrics
今回は時間の都合上、 ログとトレース 取得の検証を紹介
demonstration
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
demonstration
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
サンプル AP を動かすことで、
AWS のモニタリングソリューションで
ログやトレースを可視化し解析できる o11y 基盤を構築できた。
まとめ
- 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
構築を通して Observability の基礎について学ぶことができた
❶ PJ 全体で o11y 基盤を整備することの重要性
複雑な MSA の動き方を、非開発者や途中参画者がイメージを持つためにトレース情報は有効
(実装を読んで追う前にイメージ持つのはきっと大事)
❷ 普段当たり前に使ってた PJ の o11y 基盤は、
SRE チームの努力の上に成り立っていた ことを肌で感じた...(圧倒的感謝)
© 2022 NTT DATA Corporation
記載されている会社名、商品名、
またはサービス名は、各社の商標登録または商標です。

Contenu connexe

Tendances

Tendances (20)

PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
 
なぜ貴方のモダナイゼーションは評価されないのか ~傾向と対策~ (CloudNative Days Tokyo 2022 発表資料)
なぜ貴方のモダナイゼーションは評価されないのか ~傾向と対策~ (CloudNative Days Tokyo 2022 発表資料)なぜ貴方のモダナイゼーションは評価されないのか ~傾向と対策~ (CloudNative Days Tokyo 2022 発表資料)
なぜ貴方のモダナイゼーションは評価されないのか ~傾向と対策~ (CloudNative Days Tokyo 2022 発表資料)
 
なぜディスクレスハイパーバイザに至ったのか / Why did we select to the diskless hypervisor? #builde...
なぜディスクレスハイパーバイザに至ったのか / Why did we select to the diskless hypervisor? #builde...なぜディスクレスハイパーバイザに至ったのか / Why did we select to the diskless hypervisor? #builde...
なぜディスクレスハイパーバイザに至ったのか / Why did we select to the diskless hypervisor? #builde...
 
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話
 
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
 
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
 
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
Kubernetes 基盤における非機能試験の deepdive(Kubernetes Novice Tokyo #17 発表資料)
Kubernetes 基盤における非機能試験の deepdive(Kubernetes Novice Tokyo #17 発表資料)Kubernetes 基盤における非機能試験の deepdive(Kubernetes Novice Tokyo #17 発表資料)
Kubernetes 基盤における非機能試験の deepdive(Kubernetes Novice Tokyo #17 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
マスタリングTCP/IP ニフクラ編
マスタリングTCP/IP ニフクラ編マスタリングTCP/IP ニフクラ編
マスタリングTCP/IP ニフクラ編
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
 
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
 
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
 

Similaire à OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kubernetes Novice Tokyo #21 発表資料)

Similaire à OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kubernetes Novice Tokyo #21 発表資料) (20)

0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
 
OCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCPOCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCP
 
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
 
Prometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdfPrometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdf
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
 
Amazon EKSによるスケーラブルなCTR予測システム
Amazon EKSによるスケーラブルなCTR予測システムAmazon EKSによるスケーラブルなCTR予測システム
Amazon EKSによるスケーラブルなCTR予測システム
 
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tkKubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
Kubernetesの良さを活かして開発・運用!Cloud Native入門 / An introductory Cloud Native #osc19tk
 
AWSとOCIを比べてみた
AWSとOCIを比べてみたAWSとOCIを比べてみた
AWSとOCIを比べてみた
 
Introduction to Magnum (JP)
Introduction to Magnum (JP)Introduction to Magnum (JP)
Introduction to Magnum (JP)
 
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
 
OpenStack Summit Vancouver YVR Ops
OpenStack Summit Vancouver YVR OpsOpenStack Summit Vancouver YVR Ops
OpenStack Summit Vancouver YVR Ops
 
5分で振り返るKubeCon EU 2019:ランタイムとイメージの話題ダイジェスト
5分で振り返るKubeCon EU 2019:ランタイムとイメージの話題ダイジェスト5分で振り返るKubeCon EU 2019:ランタイムとイメージの話題ダイジェスト
5分で振り返るKubeCon EU 2019:ランタイムとイメージの話題ダイジェスト
 
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
 
OpenStack Summit November 2014 Paris出張報告
OpenStack Summit November 2014 Paris出張報告OpenStack Summit November 2014 Paris出張報告
OpenStack Summit November 2014 Paris出張報告
 
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料) ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
ここがつらいよ、Hyperledger Fabricの商用適用(Blockchain GIG #4発表資料)
 
[old] Oracle Container Engine for Kubernetes (OKE) ご紹介 [2020年7月版]
[old] Oracle Container Engine for Kubernetes (OKE) ご紹介 [2020年7月版][old] Oracle Container Engine for Kubernetes (OKE) ご紹介 [2020年7月版]
[old] Oracle Container Engine for Kubernetes (OKE) ご紹介 [2020年7月版]
 
IoT のシナリオを変える Azure SQL Edge
IoT のシナリオを変える Azure SQL EdgeIoT のシナリオを変える Azure SQL Edge
IoT のシナリオを変える Azure SQL Edge
 
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
OpenTelemetryでWebシステムの処理を追跡しよう - DjangoCongress JP 2022
 
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
 
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
 

Plus de NTT DATA Technology & Innovation

Plus de NTT DATA Technology & Innovation (20)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
 
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
 
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
 
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
 
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
 
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
 
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
 
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
 
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
 
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
 
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
 
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
 
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
 
YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)
YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)
YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)
 

OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kubernetes Novice Tokyo #21 発表資料)

  • 1. - 2022/09/27 Kubernetes Novice Tokyo #21 - OpneTelemetry を用いた Observability 基盤の実装 with AWS Distro for OpenTelemetry 所属: 氏名:逆井 啓佑(さかさい けいすけ) © 2022 NTT DATA Corporation
  • 2. 自己紹介 - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation 逆井 啓佑 さかさい belongs: carrier: 3 yrs:”Scrum Team の PO 兼 非機能試験担当” k8sNovice: #17:”性能試験は CI/CD にお任せ!” description: 性能試験の際に、当たり前にトレースやログ、 メトリクスを GCP で見てるが、そもそもこれって どうやって取得、可視化してるの ...?????
  • 3. - 2022/09/27 Kubernetes Novice Tokyo #21 - 自己紹介 Observability (o11y) テレメトリー OpenTelemetry (Otel) © 2022 NTT DATA Corporation ログ/トレース の紐付け
  • 4. Observability (o11y) テレメトリー OpenTelemetry (Otel) ログ/トレース の紐付け 自己紹介 - 2022/09/27 Kubernetes Novice Tokyo #21 - k8s 上のアプリに Observability を整備して基本を勉強 しよう。 => 今回は 構築した o11y 基盤について LT します! © 2022 NTT DATA Corporation
  • 5. Introduction - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation イントロとして Observability 〜 OpenTelemetry まで 学んだことを簡単にお話しします。 ※ 勉強するにあたって O11yCon2022 が大変手助けになりました。 イントロページもカンファレンスの Session を多く参考にさせて頂いております。
  • 6. Ref: ・入門 OpenTelemetry Collector (@katzchang san) ・kubernetes Observability入門 (@yosshi_ san) Introduction: Observability - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation Observability の Three pillars(三本柱) => 今は Primary Signals と呼ぶ Logs Traces Metrics システムの イベント を時系列で記録 したもの 特定の時間間隔で 測定された統計値 複数のコンポーネントに またがる リクエスト全体の流れ/ 依存関係を可視化 したもの ログ トレース メトリクス これらをまとめてテレメトリー
  • 7. Introduction: OpenTelemetry - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation o11y やるには、テレメトリがないと始まらない テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化) Service Input Output 計 装 Exp. テレメトリ ログ メトリクス トレース Ref: ・OpenTelemetryのこれまでとこれから (@ymotongpoo san) ❶ 計装やエクスポータ−は (基本的に)アプリに実装する必要がある 1/3
  • 8. Introduction: OpenTelemetry - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation o11y やるには、テレメトリがないと始まらない テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化) Service Input Output 計 装 Exp. テレメトリ ログ メトリクス トレース Ref: ・OpenTelemetryのこれまでとこれから (@ymotongpoo san) 2/3 ❷ 計装や Exp. は各種 OSS やサービスが API / SDK を提供している → Proprietary(ベンダ依存)に繋がる
  • 9. Introduction: OpenTelemetry - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation o11y やるには、テレメトリがないと始まらない テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化) Service Input Output 計 装 Exp. テレメトリ ログ メトリクス トレース Ref: ・OpenTelemetryのこれまでとこれから (@ymotongpoo san) ❸ OpenTelemetry は テレメトリの計装・エクスポータ−の 標準仕様 3/3 ※ エクスポーターとモニタリングサービスの間に OpenTelemetry Collector を挟むアーキテクチャが一般的。Reference 群を参考
  • 10. Introduction: OpenTelemetry - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation o11y やるには、テレメトリがないと始まらない テレメトリの収集 => 計装(Instrumentation) + エクスポータ− (+集めて可視化) Service Input Output 計 装 Exp. テレメトリ ログ メトリクス トレース Ref: ・OpenTelemetryのこれまでとこれから (@ymotongpoo san) ❸ OpenTelemetry は テレメトリの計装・エクスポータ−の 標準仕様 3/3 ※ エクスポーターとモニタリングサービスの間に OpenTelemetry Collector を挟むアーキテクチャが一般的。Reference 群を参考 Introduction はここまでで、 以降検証についてご紹介させていただきます。 © 2022 NTT DATA Corporation
  • 11. 検証環境: AWS Distro for OpneTelemetry(ADOT) - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation 今回は AWS Distro for OpenTelemetry(ADOT) を扱うことで、 OpenTelemetry への理解を深めることにしました。 ADOT は、、、 ● OpenTelemetry PJ の AWS サポートのディストリビューション ○ OpenTelemetryの仕様に沿って開発 ● EKS(Elastic Kubernete Service) 上で OTel を使う ために、 便利なコンポーネントがプリインストールされている! Ref: https://aws-otel.github.io/
  • 12. 検証環境: AWS Distro for OpneTelemetry(ADOT) - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation 今回は AWS Distro for OpenTelemetry(ADOT) を扱うことで、 OpenTelemetry への理解を深めることにしました。 1 2 限られた時間で、計装さえすれば、 バックエンドソリューションは X-Ray、Cloud Watch など整備されている点 (自前で Jaeger / Loki / Prometheus など整備もできるが容易ではない) エンタープライズ的にも、AP の実装は Open 化(OTel 化)しながらも、 AWS のモニタリングサービスは継続的に使いたいといったケースはあると考えられ、 AWS Distro 今後ますます需要が高まると考えたため(スキルセットの獲得)
  • 13. ADOT の Architecture - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation μサービス Kubernetes API Server ADOT Collector Prometheus Receiver AWS Prometheus Exporter Processor AWS X-Ray Receiver AWS X-Ray Exporter Service Account ● Otel Library で計装済のマイクロサービスからテレメトリを受信 ● ADOT Collector は EKS の場合 Sidecar や DaemonSet としてデプロイされる ● AWSモニタリングサービスや、サードパーティサービスに送信
  • 14. 今回構築した基盤はこちら - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation Todo BFF Todo API User API DB todo namespace observability namespace Fluent Bit ADOT Collector X-Ray Cloudwatch Cloudwatch logs otel-collector.observability.svc.cluster.local:4318 へ、trace や Span を送信 ❷ Tracd ❶ Log ❸ Metrics ログは Golang で Not Yet Implemented の Status Ref: https://opentelemetry.io/status/ Ref: ・OpenTelemetryを知れば世界が平和に (@nwiizo san)
  • 15. テレメトリの取得: トレースとログ - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation Logs Traces Metrics 今回は時間の都合上、 ログとトレース 取得の検証を紹介
  • 16. demonstration - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation
  • 17. demonstration - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation サンプル AP を動かすことで、 AWS のモニタリングソリューションで ログやトレースを可視化し解析できる o11y 基盤を構築できた。
  • 18. まとめ - 2022/09/27 Kubernetes Novice Tokyo #21 - © 2022 NTT DATA Corporation 構築を通して Observability の基礎について学ぶことができた ❶ PJ 全体で o11y 基盤を整備することの重要性 複雑な MSA の動き方を、非開発者や途中参画者がイメージを持つためにトレース情報は有効 (実装を読んで追う前にイメージ持つのはきっと大事) ❷ 普段当たり前に使ってた PJ の o11y 基盤は、 SRE チームの努力の上に成り立っていた ことを肌で感じた...(圧倒的感謝)
  • 19. © 2022 NTT DATA Corporation 記載されている会社名、商品名、 またはサービス名は、各社の商標登録または商標です。