「OpenTelemetry」とは――「Observability」(可観測性:オブザーバビリティ)とテレメトリーの基礎知識:Cloud Nativeチートシート(24)
Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する連載。今回は、ObservabilityとOpenTelemetryについて、概要や使い方を簡単に紹介する。
Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する本連載「Cloud Nativeチートシート」。今回は、ObservabilityとOpenTelemetryについて、概要や使い方を簡単に紹介します。
目次
「OpenTelemetry」とは
劇的な勝利を収めたFIFAワールドカップカタール2022 日本対スペイン戦。肉眼では到底捉え切ることができなかった、ビデオアシスタントレフェリー(VAR)による勝利を裏付ける1枚の写真が全世界で注目されたことは記憶に新しいですね。
クラウドネイティブなシステムも動的に変化を続けています。プラットフォームには回復力や管理力、自動化といった特徴が備えられているからです。刻一刻と変わり続ける環境において「Observability」(可観測性:オブザーバビリティ)は重要な概念です。
OpenTelemetryは、Observabilityには欠くことができない、システムの状態を示すさまざまなシグナル(ログやCPU、メモリなどのメトリクス)の収集や送信を標準化する、Cloud Native Computing Foundation(CNCF)プロジェクトです。
Observabilityとテレメトリー
Observabilityは、システムの状態を可視化するさまざまなシグナル「テレメトリー」によって実現されます。Observabilityを考える上で、各テレメトリーについて理解することが重要です。
テレメトリー
テレメトリーについてはObservabilityの3本柱として「ログ」「トレース」「メトリクス」が有名です。「CNCF TAG Observability」のホワイトペーパーでは現在、「プロファイル」「ダンプ」も含めて「Primary Signals」と呼んでいます。
本稿では、基本となる「ログ」「トレース」「メトリクス」に着目し、テレメトリーやその収集方法について簡単に説明します。
- ログ
アプリやサーバで発生している個別のイベント(エラーログ、アクセスログなど) - トレース
複数コンポーネントにまたがるリクエスト全体の流れ、依存関係の情報 - メトリクス
サーバのリソース状況(CPU使用率など)やサービス状況(レイテンシ、トランザクション量、エラーレートなど)といった、特定の時間間隔で測定された数値データ
テレメトリーの詳細については、本連載第13回で詳しく解説しているので併せてご覧ください。
これらのテレメトリー情報を収集し、可視化、解析することでシステムの状態を観測できます。
テレメトリー取得の課題とOpenTelemetry
ここからは下図を見ながら、OpenTelemetryを利用しない場合(左:Separate Collection)と、利用した場合(右:OpenTelemetry Collection)を比較しながら、テレメトリー取得の課題とOpenTelemetryの特徴を紹介します。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- クラウドネイティブの2023年はどうなる? CNCFのCTOが予想
Cloud Native Computing Foundation(CNCF)のCTO(最高技術責任者)であるクリス・アニズィック氏が、2023年のクラウドネイティブ分野に関する予想を公表した。「クラウドIDE」「FinOps」「SBOM」「GreenOps」「Web Assembly」「OpenTelemetry」「Backstage」などのキーワードが見られる。 - New Relicがアプリの問題解決で開発者を助ける新機能、「開発者は本来の仕事に集中できる」
New Relicの日本法人が可観測性プラットフォームで新機能「New Relic CodeStream」を発表した。 開発ツールを離れることなくソースコードの問題箇所を特定し、チーム内で情報を共有して迅速に解決できるという。 - Microsoft、Azure向けの障害予測・障害軽減サービス「Project Narya」を発表
Microsoftは、Azure向けの障害予測と障害軽減のためのサービス「Project Narya」を発表した。仮想マシンの障害回避を目的としており、フィードバックループを通じて障害対応策を自動的に改善できるという。