オープンソースのシステム監視/アラートツールキット「Prometheus 3.0」公開 7年ぶりのメジャーリリースで何が変わった?:従来バージョンとの互換性をほぼ維持
Prometheusチームは、オープンソースのシステム監視およびアラートツールキットの最新版「Prometheus Version 3.0」を公開した。
Prometheusチームは2024年11月14日(米国時間)、広く使われているオープンソースのシステム監視およびアラートツールキットの7年ぶりのメジャーリリースとなる「Prometheus Version 3.0」を公開した。
Prometheusは、Cloud Native Computing Foundation(CNCF)の最も初期の卒業プロジェクトの一つ。サーバのリソース状況やサービス状況などの指標を時系列データとして収集、保存する。指標情報は、ラベルと呼ばれるオプションのキーバリューペアとともに、記録された時刻のタイムスタンプ付きで保存される。
Prometheus 3.0は、公式バイナリとコンテナイメージがダウンロード配布されている。安定性とともに従来バージョンとの互換性をほぼ維持しながら、以下のようなさまざまな新機能を提供している。
モダンな新しいUIに刷新、UTF-8をサポート
Prometheus 3.0のハイライトの一つは、デフォルト(初期設定)で有効になる全く新しいユーザーインタフェース(UI)だ。
PrometheusのUIは完全に書き直され、よりモダンなルック&フィールが導入された他、ツリービューのような新機能が追加された。モダンな技術スタックの採用により、将来のメンテナンスが容易になる見通しだ。
ただし、Prometheusチームは「新しいUIはまだ使われ始めて日が浅いため、バグが残っている可能性もある」とした上で「バグを発見した場合は報告してほしい」と呼び掛けている。
Remote-Write 2.0
新たな「Remote-Write 2.0」プロトコルでは、メタデータ、エグザンプラ(任意のデータを指標データに関連付ける方法)、作成時のタイムスタンプ、ネイティブのヒストグラムなど、多くの新要素のネイティブサポートが追加された。また、ペイロードサイズと圧縮、展開時のCPU使用率を削減するために、文字列インターニング(string interning)が使用されている。
UTF-8サポート
Prometheus 3.0では、デフォルトでメトリック名、ラベル名、ラベル値でUTF-8文字を使用できる。
現在、GoクライアントライブラリのみがUTF-8をサポートするよう更新されており、他の言語のサポートも間もなく追加される。
OTLPサポート
Prometheus 3.0は、OpenTelemetryとの相互運用性向上のために、幾つかの新機能が追加されている。例えば、OTLP(OpenTelemetry Protocol)指標を受信する、OTLP Metricsプロトコルのネイティブレシーバーとして構成できる。OpenTelemetryは、システムの状態を示すさまざまなシグナル(ログやCPU、メモリなどの指標)の収集や送信を標準化するCNCFプロジェクト。
Prometheus 3.0では、UTF-8サポートのおかげで、指標名やラベル名の煩わしい変更(ドットをアンダースコアに変更するような)なしに、OpenTelemetry指標の保存やクエリが可能だ。
ネイティブヒストグラム
ネイティブヒストグラム(実験段階)は、従来のヒストグラムに代わるPrometheusの指標タイプであり、より高い効率と低コストを実現する。データセットに基づいてバケット境界を選択する(更新しなければならない可能性がある)必要がなく、指数関数的成長に基づいてあらかじめバケット境界が設定されている。
パフォーマンス向上
Prometheusチームは、TSDB(Time series Database)モードにおけるPrometheus 2.0.0(7年前にリリース)、2.18.0(4年前にリリース)、3.0.0のprombenchマクロベンチマーク結果を以下のように示し、Prometheus 3.0でメモリとCPUの使用効率が向上していることをアピールしている。
今後の計画
Prometheusチームは、Prometheusの機能強化計画の一部として、新しい、より包括的なガバナンス、より多くのOpenTelemetry機能と同プロジェクトとのさらなる互換性向上、ネイティブヒストグラムの安定性、さらなる最適化、より多くのSDK(Software Development Kit)とツールでのUTF-8サポートを挙げている。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- かゆいところに手が届く実践「Prometheus」「Grafana」――PromQL、スクレイプ、Exporter、運用のためのポイント
Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する連載。今回は、Observabilityのシグナル「メトリクス」について紹介し、「Prometheus」「Grafana」を使う上でのポイントを解説します。 - 「Observability(オブザーバビリティ)」「可観測性」とは何か――クラウドネイティブにおける監視で必要な理由と考慮点、お薦めのOSSの組み合わせ
Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する連載。今回は、「Observability(オブザーバビリティ)」「可観測性」について概要と考慮点、お薦めのOSSの組み合わせを紹介する。 - マイクロサービスの障害で胃を痛めないための「シン・オブザーバビリティ基盤」をOpenTelemetryで作る
Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する連載。今回は、トレース、ログ、メトリクスを関連付け、Grafana、Promtail、Prometheusを利用した横断的なオブザーバビリティ基盤を紹介します。