Percona Nagios Plugins Installation and Configuration

Percona Nagios Plugins Installation and Configuration

 

 

  本文主要讲述了用percona-monitoring-plugins-nagios监控mysql的配置方法。

1       下载percona monitor nagios插件

cd /usr/local/src

wget https://www.percona.com/downloads/percona-monitoring-plugins/1.1.5/percona-monitoring-plugins-1.1.5.tar.gz

tar -xzf percona-monitoring-plugins-1.1.5.tar.gz

cd percona-monitoring-plugins-1.1.5/nagios/bin

cp * /usr/local/nagios/libexec/

 

 

2       配置nagios server插件目录

vi /usr/local/nagios/etc/resource.cfg

       # Sets $USER1$ to be the path to the plugins

       $USER1$=/usr/local/nagios/libexec

 

3       nagios server上的配置

nagios server端:

vi  /usr/local/nagios/etc/objects/ commands.cfg

 

       define command{

                   command_name    check_nrpe_service

                   command_line    $USER1$/check_nrpe -H $HOSTADDRESS$

                   }

 

         define command{

                   command_name    check_mysql_service

                   command_line    $USER1$/check_mysql -H $HOSTADDRESS$ --extra-opts=client@/etc/nagios/mysql.cnf

                   }

 

         define command{

                   command_name    check_nrpe

                   command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

                   }

 

         define command{

                   command_name    check_mysql_connections

                   command_line    $USER1$/pmp-check-mysql-status -H $HOSTADDRESS$ -x Threads_connected -o / -y max_connections -T pct -w 80 -c 95

                   }

 

         define command{

                   command_name    check_mysql_active_threads

                   command_line    $USER1$/pmp-check-mysql-status -H $HOSTADDRESS$ -x Threads_running -w $ARG1$ -c $ARG2$

                   }

 

         define command{

                   command_name    check_mysql_processlist

                   command_line    $USER1$/pmp-check-mysql-processlist -H $HOSTADDRESS$ -C $ARG1$ -w $ARG2$ -c $ARG3$

                   }

 

         define command {

                   command_name    check_mysql_innodb

                   command_line    $USER1$/pmp-check-mysql-innodb -H $HOSTADDRESS$ -C $ARG1$ -w $ARG2$ -c $ARG3$

                   }

 

         define command{

                   command_name    check_mysql_replication_delay

                   command_line    $USER1$/pmp-check-mysql-replication-delay -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$

                   }

 

         define command{

                   command_name    check_mysql_replication_running

                   command_line    $USER1$/pmp-check-mysql-replication-running -H $HOSTADDRESS$

                   }

 

         define command{

                   command_name    check_mysql_deadlocks

                   command_line    $USER1$/pmp-check-mysql-deadlocks -H $HOSTADDRESS$ -i 5 -w 12 -c 60

                   }

 

         define command{

                   command_name    check_mysql_table_checksum

                   command_line    $USER1$/pmp-check-pt-table-checksum -H $HOSTADDRESS$

                   }

 

 

nagios server端:

vim /usr/local/nagios/etc/servers/mysql/ mysql02-2.111.cfg

 

### percona monitor plugin for mysql ################

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             NRPE Service

                check_command                   check_nrpe_service

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Service

                check_command                   check_mysql_service

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             Free Memory

                check_command                   check_nrpe!rdba_unix_memory

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL PID

                check_command                   check_nrpe!rdba_mysql_pidfile

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Processlist

                check_command                   check_mysql_processlist!states_count!16!32

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL User Connections

                check_command                   check_mysql_processlist!max_user_conn!90!95

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Connections

                check_command                   check_mysql_connections

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Active Threads

                check_command                   check_mysql_active_threads!40!400

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL InnoDB Idle Blocker

                check_command                   check_mysql_innodb!idle_blocker_duration!60!600

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL InnoDB Long Transaction

                check_command                   check_mysql_innodb!max_duration!86400!172800

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL InnoDB Lock Waits

                check_command                   check_mysql_innodb!waiter_count!10!25

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Replication Running

                check_command                   check_mysql_replication_running

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Replication Delay

                check_command                   check_mysql_replication_delay!300!600

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Deadlocks

                check_command                   check_mysql_deadlocks

                }

 

        define service{

                use                             mysql,srv-pnp

                host_name                       mysql02-2.111

                service_description             MySQL Table Checksums

                check_command                   check_mysql_table_checksum

                }

 

nagios server端:

cat /etc/nagios/mysql.cnf

[client]

user=nagios

password=123456

chown root:nagios /etc/nagios/mysql.cnf

chmod 640 /etc/nagios/mysql.cnf

 

 

重启nagios 服务

/etc/init.d/nagios restart

 

4       在被监控的mysql端上的配置

创建mysql用户,让nagios可以连接:

GRANT processlist,SELECT, REPLICATION CLIENT on *.* to 'nagios'@'nagios server ip' IDENTIFIED BY 'nagios';

cat /usr/local/nagios/etc/nrpe.cfg

添加如下两行:

## percona monitor plugin for mysql ###

command[rdba_unix_memory]=/usr/local/nagios/libexec/pmp-check-unix-memory -d -w 96 -c 98

command[rdba_mysql_pidfile]=/usr/local/nagios/libexec/pmp-check-mysql-pidfile

 

 

最终访问nagios的监控如下:


5       参考文档

http://kedar.nitty-witty.com/blog/install-percona-monitoring-tools-for-nagios-mysql-plugins

https://www.percona.com/doc/percona-monitoring-plugins/1.1/nagios/index.html

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28916011/viewspace-2134513/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28916011/viewspace-2134513/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值