munin

  • 投稿日:
  • by
  • カテゴリ:
サーバ監視を手っ取り早くと思って、CentOS に munin を入れてみた。

1) インストール
インストールに際し、epel の yum レポジトリを導入しておく。

$ sudo yum --enablerepo=epel -y install munin munin-node

で、インストールされる。

インストールされたままの状態だと、ちょっと面白くないので、apache と mysql の監視も加えてみる。

2) プラグインを追加する。

$ sudo ln -s /usr/share/munin/plugins/apache_accesses /etc/munin/plugins/apache_accesses
$ sudo ln -s /usr/share/munin/plugins/apache_processes /etc/munin/plugins/apache_processes
$ sudo ln -s /usr/share/munin/plugins/apache_volume /etc/munin/plugins/apache_volume
$ sudo ln -s /usr/share/munin/plugins/mysql_bytes /etc/munin/plugins/
$ sudo ln -s /usr/share/munin/plugins/mysql_queries /etc/munin/plugins/
$ sudo ln -s /usr/share/munin/plugins/mysql_slowqueries /etc/munin/plugins/
$ sudo ln -s /usr/share/munin/plugins/mysql_threads /etc/munin/plugins/
3) apache の設定を変える。
/etc/httpd/conf/httpd.conf に設定追加。

ExtendedStatus On
<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
#    Allow from .example.com
    Allow from 127.0.0.1
</Location>
4) mysql に munin 用アカウントの追加。

$ mysql -u root -h localhost -p
mysql> create user 'munin'@'localhost' identified by 'dbpassword';

mysql> grant all privileges on *.* to 'munin'@'localhost';
手元の環境ではこれがエラーになる。(rootユーザーの権限による)
代わりに以下を実行した。
mysql> grant select, insert, update, delete, create, drop, reload, shutdown, process, file, references, index, alter, show databases, super, create temporary tables, lock tables, execute, replication slave, replication client, create view, show view, create routine, alter routine, create user, event, trigger on *.* to 'munin'@'localhost';
5) munin 側に mysql の設定。
/etc/munin/plugin-conf.d/munin-node に追記。

[mysql*]
env.mysqladmin /usr/bin/mysqladmin
env.mysqlopts -u munin  --password=dbpassword -h localhost
env.mysqlconnection DBI:mysql:mysql;host=localhost;port=3306
env.mysqluser munin
env.mysqlpassword dbpassword
6) munin のノードサービスを起動する。

$ sudo service munin-node start
$ sudo chkconfig munin-node on
7) Web画面アクセス時のBasic認証パスワードを設定。

$ sudo htpasswd /etc/munin/munin-htpasswd munin
8) apacheを再起動。

$ sudo service httpd restart
という手順で、監視画面が見られるところまで。
確かにお手軽。