3 minutes
[Docker] prometheusをとりあえず動かしてみた
お世話になっております。
しゃまとんです。
少し前に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等クラウドサービスにも対応しているようなので、少しづつ理解しながら使えるようになれればいいなと思います。
便利そうなニオイがプンプンしますね!
以上です。
■ 参考