概要
dd-agentのようにコンテナ動かしたら、ホストのメトリクス収集してくれる感じのものが欲しかったので、fluentdのプラグインを使って専用コンテナのイメージを作った。コンテナを動かすだけでホスト上のDockerコンテナのメトリクスを収集してfluentdのサーバに送ってくれる。これができるとkibanaやその他のツールを使ってdockerのメトリクスが簡単に見れて嬉しいはず。
使い方 (同一ホスト上にfluentdのサーバが動いている場合)
Step 1. クローンして頂いて
$git clone https://github.com/nyamage/docker-metrics-agent.git
Step 2. イメージ作って頂いて
$cd docker-metrics-agent
$docker build -t <お好きなタグ名>
Step 3. コンテナ起動!!
$docker run -it --link=<fluentdのサーバが動いているコンテナの名前>:log_server --rm --name=docker_agent -v /sys/fs/cgroup:/mysys/fs/cgroup -v /var/run/docker.sock:/var/run/docker.sock <上で付けたタグ名>
これで定期的にDockerのメトリクスがfluentdサーバに送られるはず。
別ホスト上にあるfluentdサーバに送る場合
fluentd/fluent.confファイル内のserverディレクティブを編集して頂いて、
hostの先に送る先のfulentdのホスト名なりIPかけばいけるはず。
その際はdokcer run時にlinkオプションいらないです。
<match docker.**>
type forward
<server>
host log_server
</server>
</match>
参考URL
docker-metrics-agent
https://github.com/nyamage/docker-metrics-agent
fluent-plugin-docker-metrics
https://github.com/kiyoto/fluent-plugin-docker-metrics
Runtime Metrics
https://docs.docker.com/articles/runmetrics/