Munin のインストール (Nginx + Ubuntu)

サーバー監視ツールのMuninをUbuntu + Nginx にインストールします。

環境

  • Vagrant 1.9.1
  • Ubuntu 16.04
  • Nginx 1.10.0

目的

http://example.com/munin へアクセスしたときにMuninの監視データがみれるようにします。

インストール

munin-node をインストールします。munin-node はサーバーを実際に監視をするソフトです。

$ apt-get install munin-node

munin-master をインストールします。munin-mastermunin-node が監視したデータを取得して表示したりするソフトです。

$ apt-get install munin

今回は同じUbuntu内に両方入れます。

Munin-nodeの設定

設定ファイルは/etc/munin/munin-node.confです。

特に設定を変更する必要はありません。一応開いて port4949 になっていることを確認します。

Munin-nodeの起動

Munin-nodeを起動します。

$ service munin-node restart

これでサーバーの状態監視が始まりました。Minun-nodeMunin-masterがデータを取得しに来るのを待ち続けます。

Munin-nodeへの接続確認

Munin-master から Munin-node へ接続できるか確認します。今回は同じサーバー内に両方いるので、localhostでMunin-nodeが待ち受けるポート4949へ接続テストをします。同じサーバー内なので、4949ポートの開放も不要です。

$ telnet localhost 4949
Trying ::1...
Connected to localhost.
Escape character is '^]'.
# munin node at example.com

上のような感じで munin node ... と表示されればOKです。quitで終了します。

Munin-masterの設定

次は Munin-master の設定です。設定ファイルは/etc/munin/munin.confです。

確認する点

下記はコメントアウトのままでよいので、値を確認しておきます。

  • dbdir で示されたディレクトリに データが蓄積されます。特に使いません。
  • htmldir で示されたディレクトリに可視化されたデータが html画像の形で保存されます。/var/cache/munin/wwwとなっています。
  • staticdir で示されたディレクトリに上の描画で使用するcssなどが保存されています。/etc/munin/staticとなっています。

変更する点

Munin-node への接続情報を設定します。下記のコメント部分を探します。

# a simple host tree
# [localhost.localdomain]
#     address 127.0.0.1
#     use_node_name yes

それを次のように変えます。今回は同じサーバー内にあるので localhost とします。

[localhost]
  address 127.0.0.1
  use_node_name yes

Munin-masterの起動

Munin-master は特に起動や再起動処理はありません。専用のcronジョブが5分に一回程度動作して、上の接続情報先へデータを取得しに行きます。

以上で、Muninの設定は終了です。

Nginxの設定

http://example.com/munin へアクセスがあったときに、Mininのデータが表示されるようにします。

/etc/nginx/sites-enabled/default を開き、次のようにします。

  • localtion /munin/static/alias には munin.conf の staticdir設定値 を指定します。これを指定しないとCSSが反映されません。
  • localtion /munin/alias には munin.confhtmldir設定値 を指定します。
server {
  listen 80 default_server;
  server_name example.com;
  root /var/www/example.com;
  index index.html index.htm;

  location ^~ /munin/static/ {
    alias /etc/munin/static/;
  }

  location ^~ /munin/ {
    alias /var/cache/munin/www/;
  }
}

Nginxの再起動

$ service nginx restart

Munin監視データの確認

ブラウザでhttp://example.com/munin/へアクセスすると次のように見えます。5分ごとに矢印の位置の時刻が更新されてデータが更新されます。

本番ではBasic認証等をかけて、管理者だけが見れるようにします。

以上です。