
Thanos(タノス)は、2017年にImprobable社が公開し、その後CNCFのインキュベーションプロジェクトとなったオープンソースの分散システムで、Prometheusの「高可用性」「長期保存」「グローバルクエリ」という3つの課題を一挙に解決することを目的に設計されました。既存のPrometheusサーバにサイドカーを追加するだけで導入を始められる独特のアプローチが特徴で、複数クラスタにまたがるメトリクスを単一PromQLで横断検索できるグローバルビューを実現します。
この記事の目次
- Thanosが解決する3つの課題
- 主要コンポーネントとデータフロー
- 他のグローバル監視基盤との違い
- 導入のステップと注意点
- まとめ
Thanosが解決する3つの課題

Prometheusは単体では非常に強力ですが、レプリカ間の重複排除、長期メトリクス保存、複数クラスタ横断のグローバルビューといった機能を持ちません。Thanosはこれらを「Prometheusを置き換えるのではなく拡張する」という思想で実装します。各Prometheusに「サイドカー」と呼ばれるエージェントを併設し、ブロックをオブジェクトストレージへアップロードしつつ、Thanos QuerierがPromQLを受け付けて複数のソースを束ねます。
この構成により、既存のPrometheus環境を大きく作り直すことなく、段階的にThanos化を進められるのが大きな利点です。最初はサイドカーだけで長期保存を実現し、その後Compactor・Store Gateway・Querierを追加していくことで、フル機能のグローバル監視基盤に育てることができます。
主要コンポーネントとデータフロー

Thanosの代表的なコンポーネントとして、SidecarはPrometheusの隣で動き、ブロックをS3/GCS/Azureなどのオブジェクトストレージへアップロードします。Store GatewayはオブジェクトストレージのブロックをPromQLからアクセス可能にし、Compactorは古いブロックを統合・ダウンサンプリングしてストレージ効率と検索速度を高めます。これらの上にThanos Querierが立ち、複数のPrometheus/Store Gatewayを束ねたグローバルなPromQLエンドポイントを提供します。
重複排除機能により、複数レプリカのPrometheusが同じメトリクスを書き込んでも、Querier側で1本に揃えて結果を返します。Rulerコンポーネントを使えば、グローバル視点での記録ルールやアラートをThanos側で評価することも可能で、複数クラスタを横断したSLO計算やビジネス指標の集計に活用できます。
他のグローバル監視基盤との違い

MimirやVictoriaMetricsがRemote Write前提の独立した分散ストアとして設計されているのに対し、Thanosは「既存のPrometheusに寄り添う」拡張型のアプローチを取ります。既にPrometheusサーバが多数稼働している環境では、Thanosの方が導入のステップが穏やかで、運用チームの学習コストも低めに抑えられる傾向があります。一方、ゼロから大規模監視を構築するなら、Remote Write型の方がスッキリすることも多く、要件次第で選択は変わります。
また、Thanosはオブジェクトストレージにブロックそのものを保管するため、長期保存のコストはオブジェクトストレージ料金にほぼ収束します。ダウンサンプリングにより古いデータを効率的に保持できる点も特徴で、長期トレンド分析や容量計画など、低解像度でも構わないユースケースに適しています。
導入のステップと注意点

Thanosを段階的に導入する際の典型的なステップは、まず一部のPrometheusにSidecarを追加してオブジェクトストレージへの退避を始め、次にStore GatewayとQuerierを立てて長期データをPromQLから検索できるようにすることです。その後、Compactorを動かして古いデータを最適化し、必要に応じてRulerやReceiverを追加することで、グローバル監視基盤としての完成度を高めていきます。
注意点としては、オブジェクトストレージのバケット権限管理、複数Prometheus間の時刻同期、ラベル設計の統一などが挙げられます。クラスタごとにラベル付与ルールがバラバラだと、グローバルクエリの結果が混乱しやすいため、共通ラベル(cluster/env/teamなど)を定義しておくことが運用上の重要なポイントです。Compactorは単一プロセスで動かす必要があるなど、コンポーネント単位の制約も把握しておきましょう。
まとめ
Thanosは、既存のPrometheus環境を活かしながら、長期保存・高可用性・グローバルビューを段階的に追加できる柔軟な分散基盤です。サイドカー型のアプローチは、すでに広く運用されているPrometheusとの相性が非常によく、CNCFインキュベーションプロジェクトとしての成熟度も十分に高い水準にあります。Mimir/VictoriaMetricsと比較しながら、自社の出発点に最も合う形を選ぶことが、効果的な可観測性基盤づくりに繋がります。
※本記事はIT用語辞典の手書きドラフトです。公開前に最新情報・出典を確認のうえ加筆修正してください。

コメント