Prometheus 2.0 の先行プレビュー
2017年4月10日筆者: Fabian Reinartz
2016年7月、Prometheusは1.0のリリースという大きな節目を迎えました。それ以来、新しいサービスディスカバリーの統合や実験的なリモートAPIなど、多くの新機能が追加されました。また、インフラストラクチャ分野の新しい開発、特にKubernetesにより、監視対象の環境が大幅に動的になることがわかりました。当然のことながら、これはPrometheusに新たな課題をもたらし、ストレージ層のパフォーマンスボトルネックを特定しました。
過去数ヶ月間、これらのボトルネックに対処し、全体的に大幅なパフォーマンス改善を示す新しいストレージコンセプトの設計と実装に取り組んできました。これにより、ホットバックアップなどの機能を追加するための道も開かれます。
変更は非常に根本的であるため、新しいメジャーリリースであるPrometheus 2.0が開始されます。安定版のリリースに先立ち、ストレージ以外の重要な機能と変更が計画されています。しかし、本日、新しいストレージの安定化プロセスを開始するために、Prometheus 2.0の初期アルファ版をリリースします。
リリース版のtarballおよびDockerコンテナが現在利用可能です。ストレージの新しいメカニズムに興味がある場合は、内部を探る詳細なブログ投稿を必ずお読みください。
このバージョンは古いストレージデータでは動作せず、既存のプロダクションデプロイメントを置き換えるべきではありません。実行するには、データディレクトリが空である必要があり、-storage.local.retention
を除くすべての既存のストレージフラグを削除する必要があります。
例:以前
./prometheus -storage.local.retention=200h -storage.local.memory-chunks=1000000 -storage.local.max-chunks-to-persist=500000 -storage.local.chunk-encoding=2 -config.file=/etc/prometheus.yaml
以降
./prometheus -storage.local.retention=200h -config.file=/etc/prometheus.yaml
これは非常に初期のバージョンであり、クラッシュ、データ破損、および一般的なバグが予想されます。これらをイシュートラッカーに報告することで、安定版リリースに向けて協力してください。
このアルファリリースでは、実験的なリモートストレージAPIは無効になっています。フェデレートされたPrometheusサーバーなど、タイムスタンプを公開するターゲットのスクレイピングはまだ機能しません。ストレージ形式は互換性がなく、後続のアルファリリース間で再び変更される可能性があります。安定版リリースに近づいた時点で、1.0から2.0へのアップグレードパスを文書化する予定です。