Aerospikeの監視データをGraphiteに流し込んでGrafanaでカジュアルに見る


動機

AMCだと最大30分で監視結果が揮発してしまうので、
もっとロングスパンでの監視を、気軽に楽に行う方法をメモ。

概要

Aerospikeが提供してくれるasgraphiteを利用してgraphiteに監視データを流し込み、grafanaで楽に見易く。
※zabbixからgraphiteのデータを見て、alertingするのも加筆予定。

公式ドキュメント-asgraphite

※以下はCentos 6.7で実施した際の手順になります

手順

0. 事前準備

  1. Aerospikeは既にInstall済である前提
  2. graphite、grafanaも同様。install方法はQiitaで探したらあると思う。
    1. なお、graphiteは認証かけてない状態でのメモになります。

1. aerospikeが稼働しているサーバでasgraphiteを稼働させる

python /opt/aerospike/bin/asgraphite -n -s -d -l 'latency:' --start -g 192.168.0.X -p 2003"


# このままだと面倒なので、起動時に自動的に実行するように /etc/rc.localに追加しとく。
echo "python /opt/aerospike/bin/asgraphite -n -s -d -l 'latency:' --start -g 192.168.0.X -p 2003" >> /etc/rc.local

-g でgraphiteが稼働してるサーバを指定
その他optionについてはこっちを確認 http://www.aerospike.com/docs/amc/

なお、デフォルトでは30秒間隔。以下でマジックナンバーとなってる。。
lang:/opt/aerospike/bin/asgraphite
INTERVAL = 30

1秒でも問題なく動きそうなんだけど、一応デフォルトで運用してます。

この時点でgraphiteにデータが溜まってってるはず。

grafanaを設定

  • 既にgrafanaは稼働して、webから見れるって前提で話を進めます。
  1. grafanaにLogin
  2. 左上「Data Sources」から、「Add new」
    1. Type:Graphite
    2. Url: http://graphiteのUrlとかIP:80
    3. Access:proxy
    4. その他、nameとかDefaultとかAuthは環境に併せて。
  3. 画面上部「Home」から+Newを選択して、新規Dashboard作成
  4. 黄緑の資格にカーソル合わせてクリックすることでメニューが出るので「Add Panel」>「Graph」を選択
  5. Metricタブでブラウザから、Metricsを選択していく
    1. instances.citrusleaf.[エアロ稼働サーバ名].latency.reads.* みたいな形式で、見たいデータを選択。
  6. +ADD ROWして新規行を追加したり、Single Statを追加したりしつつ見たいデータを設定してって下さい。

結果こんな感じに

zabbixの見辛いグラフなんかもgrafana流し込んで幸せ監視ライフ!

だんだん書くの面倒になってきてだいぶ端折ってスミマセン。