Prometheus とは?

Prometheus

Prometheus最新情報

NRIのOpenStandiaが提供するPrometheus最新情報

OSSの保守サポートサービスの内容はこちら OSSの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

Prometheusバージョンアップ情報

■2022-05-10
[VerUP]Prometheus v2.35.0(リリース日:2022/04/21)
■2022-03-23
[VerUP]Prometheus v2.34.0(リリース日:2022/03/15)
■2022-03-15
[VerUP]Prometheus v2.33.5(リリース日:2022/03/08)
■2022-03-01
[VerUP]Prometheus v2.33.4(リリース日:2022/02/22)
■2022-02-25
[VerUP]Prometheus v2.33.3(リリース日:2022/02/11)
■2022-02-16
[VerUP]Prometheus v2.33.1(リリース日:2022/02/02)
■2021-12-29
[VerUP]Prometheus v2.32.1(リリース日:2021/12/17)
■2021-12-21
[VerUP]Prometheus v2.32.0(リリース日:2021/12/09)
■2021-12-21
[VerUP]Prometheus v2.31.2(リリース日:2021/12/09)
■2021-12-21
[VerUP]Prometheus v2.30.4(リリース日:2021/12/09)

すべてを見る

更新日:2021-05-26

Prometheusの概要

Prometheus(プロメテウス)は、GO言語で書かれたオープンソースのモニタリングツールです。音声ファイル共有サービスを提供するSoundCloud社によって2012年から開発されています。

Prometheusのシステムは、図1に示すようにPrometheusサーバを中心とした複数のコンポーネントで構成されます。これらのコンポーネントのほとんどは任意で、必要に応じて導入します。
Prometheusサーバは設定に従いExporterからデータを収集します。

図 1  Prometheusのアーキテクチャ

Prometheusのアーキテクチャ

(https://prometheus.io/docs/introduction/overview/より)

AlertManager(アラートマネージャ)はPrometheusサーバのアラートを管理するためのモジュールです。
アラートメール送信やPagerDuty・Opsgenie(*1)への連携、重複除外、グルーピングなどの機能があります。

サーバへ時系列データをPushするためにはPushgateway(プッシュゲートウェイ)を使用する必要があります。バッチやスクリプトは、処理の結果をPushgatewayへPushし、Pushgatewayが結果を保持することで、PrometheusサーバはPushgatewayから結果データをPullするという仕組みとなっています。

監視対象のサーバにインストールし、Prometheusサーバからのリクエストに応じて、収集したメトリック情報を返すサーバをExporter(エクスポータ)と呼びます。
Exporterには、サーバのリソース情報を収集するnode_exporterや、固有のサービス情報を収集する以下の公式のExporterが存在します。

  • blackbox_exporter:HTTP/HTTPS/DNS/TCP/ICMP 経由のエンドポイントをブラックボックス的に計測するExporter
  • consul_exporter:Consulのサービスの稼働状況をエクスポートするExporter
  • graphite_exporter:Graphiteのプレーンテキストプロトコルでエクスポートされた統計情報用のExporter
  • haproxy_exporter:HAProxy サーバーの統計情報を取得し、HTTP経由でエクスポートするシンプルなするExporter
  • memcached_exporter:memcachedサーバーから統計情報をエクスポートするExporter
  • mysqld_exporter:MySQLサーバーから統計情報をエクスポートするExporter
  • statsd_exporter:StatsD形式のメトリクスを受け取ってPrometheusメトリクスを出力するExporter

また上記以外にも、サードパ―ティが提供しているExporterも多数存在します。使いたいExporterが見つからない場合は、以下のサイトから探してみるとよいでしょう。

Exporters and integrations
https://prometheus.io/docs/instrumenting/exporters/

Prometheus 2.0からはストレージとして時系列データに特化したローカルのTSDB(time series database)が利用されるようになり、以前のバージョンに比べパフォーマンスが大幅に改善されました。PrometheusのTSDBでは、サンプルデータは2時間ごとのブロックにグループ化され、時間帯ごとに実際のサンプルを含むチャンクと、そのインデックス、およびメタデータで構成されます。クラッシュリカバリのためのログ先行書き込み(WAL)の機能もあります。ただ、これらストレージ機能はクラスタ化やレプリケーションには対応していません。そのため、複数サーバ構成でサーバをまたいでのクエリ実行はできませんが、Prometheusサーバ を階層構造とすることでデータを集約することができます。

Prometheusは2016年7月にバージョン1.0.0をリリースしました。
Prometheusの2020年7月現在の最新リリースバージョンは2.19.2です。
*1. PagerDutyやOpsgenieは、監視システムからのアラートを通報するためのプラットフォームです。

TOPに戻る

Prometheusの特徴

  • 多次元データモデル(メトリクス名とキー/値のペアで識別される時系列データ)
  • データ抽出のための柔軟なクエリ言語(PromQL)
  • それぞれのサーバが自立的で分散ストレージに依存しない
  • HTTP上でのPullモデルによる時系列データの収集
  • 中間ゲートウェイを介しての時系列データのPush
  • サービスディスカバリまたは静的な設定による監視対象の取得

TOPに戻る

他プロダクトとの対比

Prometheus Pandora FMS Zabbix
ライセンス Apache 2.0 GPLv2 GPLv2
開発言語 GO Perl・PHP C・PHP
管理I/F 基本的に設定ファイル
Webコンソール(参照のみ)
Webコンソール Webコンソール
サーバOS OpenBSD/NetBSD/
FreeBSD/DragonFlyBSD/
Darwin/Linux/Windows
FreeBSD/Solaris/HPUX/
AIX/macOS/Linux/
Windows
Linux/UNIX
データストレージ LevelDB・FileSystem MySQL MySQL/Oracle/
PostgreSQL/SQLite/DB2
ネットワーク監視
サーバ監視
ログ監視 × △(Enterprise版のみ)
アラート通知 メール・HipChat・
PagerDuty・Opsgenie・
PushOver・Slack・
WebHook
メール・SMS・Syslog・
Sound・Jabber
メール・SMS・Sound・
Ez Texting・Jabber
クライアントOS OpenBSD/NetBSD/
FreeBSD/DragonFlyBSD/
Darwin/Linux/Windows
Linux/Unix/Windows Linux/Unix/Windows

TOPに戻る

Prometheusのユースケース

・監視対象サーバの数や種類が多い環境において、メトリクス収集やリソース監視を行いたい場合。
・クラウド環境やコンテナ環境などにおいて、サービスディスカバリを使用してリソース監視を行いたい場合。
・性能テスト、ボトルネックの調査など。

TOPに戻る

Prometheusの動作環境

OS: OpenBSD / NetBSD / FreeBSD / DragonFlyBSD / Darwin / Linux / Windows

TOPに戻る

Prometheusのライセンス

PrometheusはApache2.0ライセンスです。
Apache License(アパッチ・ライセンス)のコードが使用されていることの明記を条件に、ソースコードの自由な改変と公開が認められています。

TOPに戻る

Prometheusのダウンロード

https://prometheus.io/download

TOPに戻る

参考情報

Prometheus - GitHub
https://github.com/prometheus
Prometheus.io
https://prometheus.io/

Pandora FMS
https://pandorafms.com/community/
Zabbix
https://www.zabbix.com/

PagerDuty
https://www.pagerduty.com/
Opsgenie
https://www.atlassian.com/software/opsgenie

TOPに戻る

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気midPoint
  • 人気Keycloak
  • 注目MongoDB
  • ForgeRock AM(OpenAM)
  • ForgeRock IDM(OpenIDM)
  • MongoDB
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • PostgreSQL
  • Apache Struts
  • Apache Kafka
  • Apache Hadoop
  • Apache Spark
  • Spring Framework
  • Apache Tomcat
  • Solr
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • ForgeRock DS(OpenDJ)
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • BIND
  • Dovecot
  • Pentaho
  • sendmail
  • Courier-IMAP
  • ForgeRock DS(OpenDJ)
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO