前回はMuninに標準で付属するプラグインを使ってMySQLの監視を行いました。
今回はGithub(https://github.com/munin-monitoring/contrib/tree/master/plugins/mysql)で公開されているプラグインを用いてさらに監視項目を増やしてみます。
プラグインのダウンロード
Gitを使って一括してダウンロードすることができます。詳細については「MuninでServersMan@VPSを監視: nginx その1」を参照してください。
コマンド一発でまとめてダウンロードすることができます。
ここでは/usr/local/share/munin/contrib/plugins/mysql以下にMySQL用のプラグインがダウンロードされたとして紹介します。
プラグインの種類
上記のGithubには13個のプラグインが公開されていますが、ここでは以下のプラグインについて紹介します。
- mysql_connections
MySQLに対する接続数 - mysql_qcache
キャッシュに保持されているクエリ数 - mysql_qcache_mem
キャッシュのサイズ - mysql_size_
指定したデータベースのサイズ - mysql_size_all
MySQLの全データベースのサイズ - mysql_size_ondisk
HDD上の各データベースのサイズ - mysql_slave
MySQLのスレーブスレッドの状態(?)
共通の設定
今回紹介するプラグインの多くは/etc/munin/plugin-conf.d/munin-nodeの設定として、次の記述が必要になります。
[mysql*データベース名] env.mysqlopts --user=データベース名 --password=パスワード --host=localhost
この記述については前回のmysql_bytesプラグインを参照してください。
mysql_connectionsプラグイン
上記の共通の設定をしていればプラグインのシンボリックリンクを作成してmunin-nodeを再起動すれば設定完了です。
cd /etc/munin/plugins ln -s /usr/local/share/munin/contrib/plugins/mysql/mysql_connections mysql_connectionsデータベース名 service munin-node restart
グラフは次のようになります。現状では受付可能なコネクションの数パーセント程度しか使っていないようです。
mysql_qcacheプラグイン
このプラグインも上記の共通の設定があればシンボリックリンクとmunin-nodeを再起動だけで設定完了です。
cd /etc/munin/plugins ln -s /usr/local/share/munin/contrib/plugins/mysql/mysql_qcache mysql_qcacheデータベース名 service munin-node restart
グラフは次のようになります。たぶんキャッシュが有効に使われているのだと思います。
mysql_qcache_memプラグイン
このプラグインも上記の共通の設定があればシンボリックリンクとmunin-nodeを再起動だけで設定完了です。
cd /etc/munin/plugins ln -s /usr/local/share/munin/contrib/plugins/mysql/mysql_qcache_mem mysql_qcache_memデータベース名 service munin-node restart
グラフは次のようになります。キャッシュは16MB用意されているようです。日中は90%近くキャッシュとして使っていますが、夕方に急激にキャッシュ量が落ちたのが気になります。こういう動きは1日だけでなく長い時間で監視する必要があります。
mysql_size_プラグイン
このプラグインも上記の共通の設定があればシンボリックリンクとmunin-nodeを再起動だけで設定完了です。
cd /etc/munin/plugins ln -s /usr/local/share/munin/contrib/plugins/mysql/mysql_size_ mysql_size_データベース名 service munin-node restart
グラフは次のようになります。とりあえずデータベース(このWordPressサイト用のデータベース)の大きさはあまり変わっていないようです。一日二日でそう変わるものでもないので長い期間監視して傾向をつかむ必要があります。
mysql_size_allプラグイン
このプラグインも上記の共通の設定があればシンボリックリンクとmunin-nodeを再起動だけで設定完了です。
cd /etc/munin/plugins ln -s /usr/local/share/munin/contrib/plugins/mysql/mysql_size_all mysql_size_allデータベース名 service munin-node restart
グラフは次のようにMySQLに存在する各データベースのサイズの変化が表示されます。
下記のグラフでは紫色で示されているデータベース(このWordPress用のデータベース)だけがやたらに大きいために、グラフがほとんど紫色になってしまっています。
mysql_size_ondiskプラグイン
このプラグインを使うためには/etc/munin/plugin-conf.d/munin-nodeに次の行を書き加える必要があります。
[mysql_size_ondisk] user mysql
あとは他のプラグインと同様にシンボリックリンクを作成してmunin-nodeを再起動します。
cd /etc/munin/plugins ln -s /usr/local/share/munin/contrib/plugins/mysql/mysql_size_ondisk mysql_size_ondiskデータベース名 service munin-node restart
スクリーンショットはこのプラグインを稼動したばかりのときのものです。MySQLのデータベースごとにHDD上でのサイズが表示されます。
mysql_slaveプラグイン
このプラグインも共通の設定があればシンボリックリンクとmunin-nodeを再起動だけで設定完了です。
cd /etc/munin/plugins ln -s /usr/local/share/munin/contrib/plugins/mysql/mysql_slave mysql_slaveデータベース名 service munin-node restart
これでグラフが表示されるようになるのですが・・・私の環境ではグラフの線がずっとゼロのままでした。正直、このグラフの意味がわかっていません。
まとめ
今回はGithubに公開されているプラグインを使ってMySQLの監視項目を増やしました。
まだ設定したばかりであまり有効に使えていませんが、データベースサイズなどは推移を見て行きたいものです。
コメント