Saas型のサーバの負荷、死活監視サービスのmackerel(以下、マカレル)の公式プラグインをインストール手順です。
追加したプラグインは、以下の点になります。
1.Apache
2.MySQL
プラグインのインストール手順
サーバのOSがCentOS 5系なのでyumでインストールします。
基本的にはマカレフのヘルプに書いてある通りで問題なくインストールできます。
yum install mackerel-agent-plugins
【補足】
マカレルのリポジトリの追加方法
インストール作業が完了すると/usr/local/bin以下に各種プラグインがインストールされます。
次にマカレフの設定ファイルに利用するプラグインの設定を追加します。
【Apache】
[plugin.metrics.apache2] command = "/usr/local/bin/mackerel-plugin-apache2 -p 1080" type = "metric"
【MySQL】
[plugin.metrics.mysql] command = "/usr/local/bin/mackerel-plugin-mysql -host localhost -port=**** -username=**** -password=****"
※port、username、passwordは環境毎に変える。
マカレルに連携後に表示されるグラフは、以下のようになります。
Apacheで追加されるグラフは、
・Apache Bytes
・Apache CPU Load
・Apache Request
・Apache Score borad
・Apache Workers
になります。
MySQLで追加されるグラフは、
・MySQL Command
・MySQL Connections
・MySQL InnoDB Row Lock Time
・MySQL InnoDB Row Lock Waits
・MySQL InnoDB Rows
・MySQL Join/Scan
・MySQL Slave status
・MySQL Table Locks/Slow Queries
・MySQL Threads
・MySQL Traffic
になります。
Apacheのプラグインは、Apacheのmod_statusを元にしているため、mod_statusの設定を追加する必要があります。
SetHandler server-status
VirtualHostを利用して複数のドメインを運用しているサーバの場合は、以下のように設定します。
ServerName localhost SetHandler server-status Order deny,allow Deny from all Allow from localhost
ApacheとMySQLのプラグインの動作確認は、コンソールからプラグインを実行することでできます。
【Apache】
$ /usr/local/bin/mackerel-plugin-apache2 -p 1080
apache2.bytes.bytes_sent 172810 1416656122
apache2.cpu.cpu_load 0.002147 1416656122
apache2.req.requests 24401 1416656122
apache2.scoreboard.score-_ 28 1416656122
apache2.scoreboard.score-S 0 1416656122
apache2.scoreboard.score-R 0 1416656122
apache2.scoreboard.scpre-W 0 1416656122
apache2.scoreboard.score-K 0 1416656122
apache2.scoreboard.score-D 0 1416656122
apache2.scoreboard.score-C 0 1416656122
apache2.scoreboard.score-L 0 1416656122
apache2.scoreboard.score-G 0 1416656122
apache2.scoreboard.score-I 0 1416656122
apache2.scoreboard.score-. 99 1416656122
apache2.workers.busy_workers 1 1416656122
apache2.workers.idle_workers 28 1416656122
【MySQL】
$ /usr/local/bin/mackerel-plugin-mysql -host=localhost -port=**** -username=**** -password=****
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “3031307156”: value out of range
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “OFF”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “ON”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “0.000000”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “AUTH_MASTER”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “0.000”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “OFF”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “NONE”: invalid syntax
2014/11/22 20:35:38 FetchMetrics: strconv.ParseInt: parsing “”: invalid syntax
mysql.join.Select_full_join 0 1416656138
mysql.join.Select_full_range_join 0 1416656138
mysql.join.Select_scan 1.578947 1416656138
mysql.join.Sort_scan 0 1416656138
mysql.threads.Max_used_connections 51 1416656138
mysql.threads.Threads_connected 28 1416656138
mysql.threads.Threads_running 1 1416656138
mysql.threads.Threads_cached 23 1416656138
mysql.connections.Connections 1.578947 1416656138
2014/11/22 20:35:38 Thread_created is not exist at last fetch
mysql.connections.Aborted_clients 0 1416656138
mysql.connections.Aborted_connects 0 1416656138
mysql.seconds_behind_master.Seconds_Behind_Master 0 1416656138
mysql.traffic.Bytes_sent 0 1416656138
mysql.traffic.Bytes_received 195.789474 1416656138
mysql.innodb_row_lock_waits.Innodb_row_lock_waits 0 1416656138
mysql.cmd.Com_insert 0 1416656138
mysql.cmd.Com_select 0 1416656138
mysql.cmd.Com_update 0 1416656138
mysql.cmd.Com_update_multi 0 1416656138
mysql.cmd.Com_delete 0 1416656138
mysql.cmd.Com_delete_multi 0 1416656138
mysql.cmd.Com_replace 0 1416656138
mysql.cmd.Com_set_option 0 1416656138
mysql.cmd.Qcache_hits 0 1416656138
mysql.cmd.Questions 4.736842 1416656138
mysql.table_locks.Table_locks_immediate 0 1416656138
mysql.table_locks.Table_locks_waited 0 1416656138
2014/11/22 20:35:38 Slow Queries is not exist at last fetch
mysql.innodb_rows.Innodb_rows_read 0 1416656138
mysql.innodb_rows.Innodb_rows_inserted 0 1416656138
mysql.innodb_rows.Innodb_rows_updated 0 1416656138
mysql.innodb_rows.Innodb_rows_deleted 0 1416656138
mysql.innodb_row_lock_time.Innodb_row_lock_time 0 1416656138