【要約】【お母さんでもわかる】eBPFによるオブザーバビリティ [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
従来のAPM導入では、開発チームによるコード改修やエージェントの組み込みが必要となる。このプロセスが、以下の課題を引き起こしている。
- ・開発リソースの不足により、APMの導入が進まない。
- ・マイクロサービス化で、管理対象アプリが増え計装コストが膨らむ。
- ・レガシーな言語環境では、既存エージェントが利用できない。
// Approach
eBPFを利用し、アプリケーションのコード変更なしに情報を収集する手法を採用する。具体的な仕組みは以下の通りである。
- ・OS内のイベントを契機にeBPFプログラムを実行する。
- ・取得データをKVSを介してユーザー空間へ共有する。
- ・New Relic等のプラットフォームが、情報を集約・可視化する。
// Result
eBPF APMの導入により、運用チーム主導で迅速な可視化が可能となる。これにより、以下の成果が得られる。
- ・Kubernetes環境で、コンテナ内のアプリを自動検出し計装できる。
- ・外部APIやDBクエリのボトルネックを特定できる。
- ・言語に依存せず、レガシーシステムへの導入も可能となる。
Senior Engineer Insight
> eBPFは導入の「速さ」と「広さ」において、圧倒的な優位性を持つ。特にマイクロサービス環境での全体把握や、開発工数を抑えたい運用現場において、極めて実戦的な選択肢だ。ただし、関数レベルの詳細解析には限界がある。詳細なデバッグが必要な箇所には従来のAPMを併用する、ハイブリッドな戦略が現実的である。