検索
特集

Prometheusとの関係から整理、なぜGrafanaは「OpenTelemetry」を推進する?オープンへ向かうオブザーバビリティー(1/2 ページ)

オブザーバビリティーの分野で存在感を増している「OpenTelemetry」。なぜ今、テレメトリーデータを特定の仕様に閉じないオープンな仕組みが重要になっているのか。GrafanaとOpenTelemetryの関係から考える。

Share
Tweet
LINE
Hatena

 「Grafana」と聞いて、OSS(オープンソースソフトウェア)の可視化/ダッシュボードツールを思い浮かべる人は少なくないだろう。特にオブザーバビリティー(可観測性)の分野で「Prometheus」と組み合わせて利用しているケースは多いかもしれない。

 一方で、近年のオブザーバビリティーを巡る議論の中で耳にする機会が増えているのが、テレメトリーデータの収集などを標準化する「OpenTelemetry」だ。Prometheusと深い関係を築いてきたGrafana Labsも、OpenTelemetryの開発や普及に関わり、その利用を推奨している。

 オブザーバビリティーにおいてオープンであることの意味や、OpenTelemetryがなぜ必要なのか、またAI活用が進む中でオープンであることがどのような意味を持ち始めているのかなどを、Grafana LabsのDeveloper Advocateで、SRE(サイト信頼性エンジニアリング)の分野やOpenTelemetryに詳しい山口能迪氏に聞いた。

そもそも「Grafana」とは 「Prometheus」との関係から整理

 そもそも「Grafana」とは。その対象は文脈によって少し異なる場合もあるので、そこから整理しておこう。その原点は、スウェーデンの開発者トルケル・オーデゴール(Torkel Odegaard)氏が開発し、2014年にオープンソースで公開した可視化/ダッシュボードツールだ。さまざまなデータソースに接続してデータを可視化できる。

 特にオブザーバビリティーの分野では、メトリクスを収集、蓄積するPrometheusと組み合わせて利用する構成が広く普及しており、同分野ではGrafanaと聞いてこのダッシュボードツールを思い浮かべる人が多いのではないだろうか。

 Grafanaが広く利用されるようになった背景の一つが、Prometheusと組み合わせた利用がオブザーバビリティーの分野で定着したことだ。Prometheusでシステムのメトリクスを収集、蓄積し、そのデータをGrafanaのダッシュボードで可視化する構成だ。「コミュニティーで非常に人気を集めた構成だ」と山口氏は言う。

 当初のGrafanaが担っていたのは、基本的にデータを「見る」部分だったが、Grafanaを開発するGrafana Labsは次第にバックエンドにも領域を広げていった。メトリクスを扱う「Mimir」、ログを扱う「Loki」、分散トレースを扱う「Tempo」などを開発し、OSSとして提供している。なおGrafanaという名称が指す対象としては、そうした技術を基盤にGrafana Labsがマネージドサービスとして提供する「Grafana Cloud」もある。

 一方で現在も、OSS版のGrafanaを純粋な可視化ツールとして使うケースは多い。例えば部署ごとに異なるオブザーバビリティーツールやデータソースを利用している場合、それらの横断的なダッシュボードを作ることができる。オブザーバビリティーに限らず、宇宙関連の組織でもデータの可視化に利用されるなど、その用途は幅広い。

PrometheusからOpenTelemetryへ なぜ「オープン」が必要なのか

 可視化ツールからオブザーバビリティーへと領域を広げてきたGrafanaだが、山口氏によれば一貫して重視されてきたのがオープンであることだ。オープンソースであることでユーザー自らが検証や機能追加ができ、結果としてそのコミュニティー全体の価値は高まっていく。

 その考え方はPrometheusとの関係にも表れている。前述の通り、GrafanaはPrometheusと組み合わせて使われることが多く、Grafana LabsはPrometheusプロジェクトへの貢献も続けてきた。Prometheusを自社独自の仕組みに置き換えるのではなく、Prometheusとの互換性が重視されてきた。「Prometheusという広く普及した形式でメトリクスを扱えるようにしておけば、ユーザーは別の選択肢を使いたくなった場合にも、移行しやすくなる」(山口氏)

メトリクスだけではない OpenTelemetryが登場した背景

 そうした特定の製品やベンダーにユーザーを閉じ込めないという考え方は、「OpenTelemetry」への取り組みにも表れている。

 まずPrometheusとOpenTelemetryの関係を整理しておこう。PrometheusはOpenTelemetryよりも歴史が長く、メトリクスの収集、蓄積、検索などを担う仕組みとして広く普及してきた。その後、システムの分散化が進むにつれて、メトリクスだけでなく、複数のサービスをまたいだ処理の流れを追跡する「分散トレース」の重要性も高まっていった。こうした中、テレメトリーデータを取得するための標準化を目指す「OpenTracing」や「OpenCensus」といったOSSプロジェクトが登場し、両者が2019年に統合されてOpenTelemetryが誕生した。

 とはいえOpenTelemetryがPrometheusを置き換えるというわけではない。Prometheusは現在もメトリクスの世界で広く利用されており、PrometheusとOpenTelemetryの間では相互運用性を高める取り組みも進んでいる。

 Grafana Labsでは、Prometheusの形式でメトリクスだけを扱うこともできる一方、「メトリクスを分散トレースやログなどと関連付けて利用したい場合にはOpenTelemetryを推奨している」(山口氏)という。

Copyright © ITmedia, Inc. All Rights Reserved.

       | 次のページへ
ページトップに戻る