お世話になっております。
しゃまとんです。

少し前にTLにqiita経由で流れてきたprometheusについてずっと気になっていたので
触ってみました。

読みはプロメテウスでしょうか、、、最近注目を浴びている監視ツールだそうです。
githubで公開されてて、スター数がすごいです。

で、prmetheusがどんなものかですが前述の通りqiitaであったり、他の方が記事にしてくださっているので、 そちらを参照していただくとよいです。

とりあえず自分は動かしてみたいと思ったので、簡単な構成でやってみたメモになります。 構成はprometheusをdockerで動作(ローカルPC)させ、dplyで用意したホストを監視させました。

※ 用語が間違ってたらごめんなさい

■ nodeとしてdplyでサーバを作成
dplyでなんでもお好きなOSでサーバを作成します。dplyが嫌という方は用意できれば何でも良いと思います。
作成後、node_exporterを取得し実行します。手順はこんな感じです。
※ 最新版はこちらで確認してください

# 取得して解凍
wget https://github.com/prometheus/node_exporter/releases/download/v0.13.0/node_exporter-0.13.0.linux-amd64.tar.gz
tar -zxvf node_exporter-0.13.0.linux-amd64.tar.gz
# 実行
cd node_exporter-0.13.0.linux-amd64
./node_exporter

実行すると、9100でlistenします。

■ Prometheusを起動する
prometheusはdockerhubで直ぐ使えるものが用意されているため、すぐに使い始めることができます。 (docker run -p 9090:9090 prom/prometheus)
今回はnodeとして立ち上がっているサーバを登録するため、設定ファイルを作成して利用するようにします。

とりあえずベースファイルを取得します。

curl -O https://raw.githubusercontent.com/prometheus/prometheus/master/documentation/examples/prometheus.yml

取得したymlファイルに追記します。(一番下の数行です)

準備ができたので、下記コマンドで実行してみます。

docker run -p 9090:9090 -v ${working_directory}/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

9090でlistenしているので、アクセスすると画面が表示されるます。プルダウンからnode_cpuを選んでExecuteすると、グラフが表示されるようになります。consoleにはdplyで定義したnodeに関しての値が表示され、取得出来ていることがわかります。

あとは例えば、ノードを追加してグループにしたりとか、アラート(alertmanager)を設定して通知したりとか・・・DBサーバも監視対象にしたりとか・・・でしょうか。
AWS等クラウドサービスにも対応しているようなので、少しづつ理解しながら使えるようになれればいいなと思います。

便利そうなニオイがプンプンしますね!
以上です。

■ 参考