@0tofuの備忘録...

プログラミングとか仕事の話とかFIT3 RS(GK5)のメンテナンス記録等の雑記

無線LANルータ(ASUS RT-AC68U)をmackerel-agentで監視

この記事はMackerel Advent Calendar 2016 14日目の記事です。

qiita.com

 

今回は、私が自宅で使用している無線LANルータ(ASUS RT-AC68U)をmackerel-agentを利用しMackerelに監視させてみます。

Asuswrt-Merlinにファームウェアを書き換え

標準のファームウェアではmackerel-agentを導入できない為、Asuswrt-Merinファームウェアを書き換えます。

通常のファームウェアと同様に対象機器のファームウェアをダウンロードして更新するだけなので簡単です。

JFFSを有効化

この状態でmackerel-agentが使用可能になるのですが、再起動の度にmackerel-agentごと消えてしまうので、ユーザが書き換え可能なJFFS領域を確保します。

github.com

・ルータの設定画面 -> 管理よりJFFS partitionを有効化

f:id:move0tofu:20161209204553p:plain

また、以降の作業はルータへsshでログインし作業を行うのでsshを有効化しておきましょう。

f:id:move0tofu:20161212230541p:plain

mackerel-agentの導入

RT-AC68Uはarmなので、arm用のmackere-agentをダウンロードします。

また、mackerel-agentを動かすためにAPI keyが必要になりますので、事前に作成しておきます。

 

github.com

mackerel-agent install

mackerel-agentを起動

ルータ再起動時に自動起動すること及び実行時にx509のルート証明書エラーが出ないよう以下のシェルスクリプトを作成し、mackerel-agentが正常に動くようにします。

※証明書「ca-certificates.crt」はルータ内に見つけられなかった為、ubuntuサーバ等よりコピーしています。

/jffs/scripts/ 以下に作成し、再起動時に自動でスクリプトが動くようにします。

 

mackerel-agent start 

# 以下コマンドでバックグラウンドでmackerel-agentを起動
/jffs/scripts/mackerel-agent.sh &
mackereでグラフ確認

正しく動いていると、mackerelにグラフが作成され監視されていることが確認できます!

f:id:move0tofu:20161212233321p:plain

また、confファイルに以下を設定するとCPU、2.4GHz、5GHzWLANの温度も取得できるようになります。

RT-AC68U temp

Mackerelで見ると↓のような感じで出力されます。

f:id:move0tofu:20161214004305p:plain

ASUSのAsuswrt-merlinが導入可能なルーターであれば監視できると思いますので、気になる方は是非導入してみてください!