tl;dr

  • マイブームの collectd でサーバー、クライアント環境って作れるのか調べてみたら意外に簡単だった
  • facette もセットアップは簡単なのでついでに触ってみる

メモ

Vagrantfile

Contribute to vagrant-collectd development by creating an account on GitHub.

github.com

collectd のクラサバ構成

クラサバ構成のキモは network プラグイン。以下のように server(メトリクスデータを収集する側)、client(サーバーにメトリクスデータを飛ばす側)で設定するだけ。

#
# server
#
$ cat /etc/collectd/collectd.conf.d/network.conf
LoadPlugin network


  
    # SecurityLevel Sign
    # AuthFile "/etc/collectd/passwd"
    # Interface "eth0"
  


#
# client
#
$ cat /etc/collectd/collectd.conf.d/network.conf
LoadPlugin network


  
    # SecurityLevel Sign
    # AuthFile "/etc/collectd/passwd"
    # Interface "eth0"
  

認証も設けることが出来るので、実運用の際には認証は設定しておきたい。(上記の Vagrantfile では認証は設定されていない)

facette とは

facette は Go 言語で書かれた rrd や Graphite 等の時系列データベースをバックエンドデータベースとして利用可能な時系列データの可視化ツール。

Time series data visualization and graphing software

facette.io

現在は開発途上な為、プロダクション環境での利用は推奨されていないので注意。
導入については、各種 OS 環境のパッケージを取得してインストールする。

vagrant up

vagrant up --provision

実行すると仮想マシンが 2 台構築されて以下のような構成となる。

[ vm02 ](collectd) => [ vm01 ](facette / collectd) <= [ ワシ ] 

facette UI

ざっくりと紹介。

20161010182833

Graphite とか influxdb とかも利用可能。機会があれば試してみよう。

20161010182913

Origin がバックエンドのデータベースのことだと思われる。今回は collectd(rrd)のみ。

20161010182954

Sources が各 collectd が動いているホスト。Source Groups で各 Source をグルーピング出来る。

20161010183001

collectd で収集しているメトリクス各種。

20161010183011

まだまだお触りが足りていないけど、グラフをこさえるところまではイケた。

以上

メモでした。

元記事はこちら

collectd と facette の Vagrantfile を作った(collectd でサバクラ環境を作る)