2011年11月2日水曜日

RDS(MySQL)をNagiosで監視

スズキです。

RDSは下記のような感じでNagiosで監視しています。

define host {
    use                    cloudpack-dummy-host
    host_name              suz-lab-rds
    address                suzlab.xxxxxxxxxxx.ap-northeast-1.rds.amazonaws.com
}
define service {
    use                    cloudpack-service
    host_name              suz-lab-rds
    service_description    dns
    check_command          check-dns-ip-cloudpack!xxx.xxx.xxx.xxx
}
define service {
    use                    cloudpack-service
    host_name              suz-lab-rds
    service_description    mysql
    check_command          check-mysql-cloudpack!user!pass
}

define host {
    name                     cloudpack-dummy-host
    use                      generic-host
    register                 0
    check_command            check-dummy-cloudpack
    max_check_attempts       1
    normal_check_interval    5
    retry_check_interval     1
}
define service {
    name                     cloudpack-service
    use                      generic-service
    register                 0
    max_check_attempts       3
    normal_check_interval    5
    retry_check_interval     1
}
define command {
    command_name    check-dummy-cloudpack
    command_line    $USER1$/check_dummy 0
}
define command {
    command_name    check-mysql-cloudpack
    command_line    $USER1$/check_mysql -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$
}
define command {
    command_name    check-dns-ip-cloudpack
    command_line    $USER1$/check_dns -H $HOSTADDRESS$ -a $ARG1$
}
(ブログ用に調整しているので、このままでは動作しないかもしれません...)

まず、RDSのHOSTとしてのチェックですが、RDS自体はPINGが通らないので、
下記のように"check_dummy"コマンドを利用するようにしています。
Nagiosで"ping"できないHostを監視

次に、下記で紹介したMulti-AZのフェイルオーバー検知として、DNSのチェックも行なっています。
RDSのフェイルオーバーに関する注意点

最後は、通常のMySQLの監視です。

ブログ、全然書いてない...
--------
http://www.suz-lab.com

0 コメント: