監視ツールnagi♂もといnagiosとは~MySQLの監視~
あずにゃん「なんでそんなにメール大量に受信してるんですか?」
今日は、nagiosでMySQLの監視登録を行い、登録の手順方法を学ぶといった内容。
監視を行うことによって、アラートを飛ばすのがごく一般的な使われ方だそうな。
例えば、MySQLのプロセスが落ちました→MySQL止まりましたよ?みたいなアラートですね。
あずにゃんの行動を逐一メールでアラート飛ばしてればそれはメールサーバもパンクしますよ。
下記、登録手順。
MySQL監視用プラグインがインストールされているかの確認。
# ls /usr/lib/nagios/plugins/ check_apt check_ide_smart check_ntp check_ssmtp check_breeze check_ifoperstatus check_ntp_peer check_swap check_by_ssh check_ifstatus check_ntp_time check_tcp check_clamd check_imap check_nwstat check_time check_cluster check_ircd check_oracle check_udp check_dhcp check_jabber check_overcr check_ups check_dig check_ldap check_pgsql check_users check_disk check_ldaps check_ping check_wave check_disk_smb check_load check_pop contrib check_dns check_log check_procs eventhandlers check_dummy check_mailq check_radius negate check_file_age check_mrtg check_real plugins.pm check_flexlm check_mrtgtraf check_rpc urlize check_fping check_mysql check_sensors utils.pm check_ftp check_mysql_query check_simap utils.py check_game check_nagios check_smtp utils.pyc check_hpjd check_nntp check_snmp utils.sh check_http check_nntps check_spop check_icmp check_nt check_ssh
grepでcheck_mysqlとcheck_mysql_queryがあればokです。
無ければ、下記よりプラグインのダウンロードを行えばよろし。
# yum --enablerepo=epel -y install nagios nagios-plugins nagios-plugins-all
MySQLへ接続を行うための設定
下記内容は、末尾に追加。
# vi /usr/local/nagios/etc/objects/commands.cfg define command{ command_name check_mysql command_line $USER1$/check_mysql -u username -p password }
usernameと、passwordは、MySQLのユーザの情報となります。適宜置き換えること。
# vi /usr/local/nagios/etc/objects/localhost.cfg define service{ use local-service host_name localhost service_description MySQL check_command check_mysql notifications_enabled 0 }
以上で、設定は終了となります。
nagiosの再起動
# service nagios restart
ブラウザから http://サーバー名/nagios/ にアクセスし、メニューの「Services」より、今回追加を行ったMySQLがあるかを確認する。
設定がうまくいっていれば、Statusがokとなっています。
試しにMySQLのプロセスを止めてみましょう。
# /etc/init.d/mysqld stop
しばらくすると、nagiosよりMySQLに接続できなくなったことが表示されます。
とりあえず、登録手順は把握できたので、どこまで細かい設定ができるか等、次回まったり更新予定。