Percona NRPE Install (MySQL)

From vWiki
Jump to navigation Jump to search

Instructions on installed the Percona NRPE plugin in order to be able to monitor a MySQL server from Nagios. See the following page for more info - https://www.percona.com/doc/percona-monitoring-plugins/1.1/nagios/index.html

Ubuntu Install

Percona Repository

If you don't have it available already, you'll need to add the Percona repository (if it is you should have the following file - /etc/apt/sources.list.d/percona-release.list

  1. Download appropriate pagckage
  2. Install package
    • dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb
  3. Enable the repository
    • percona-release setup ps80
  4. Update cache
    • apt-get update

Install Plugins

apt-get install percona-nagios-plugins

Red Hat Install

Note that the instructions below were written for an older version than is current, please check the Percona site (URL above) for up to date info.

  1. Add the Percona repository
  2. Install the Percona NRPE Nagios plugins
    • yum install percona-nagios-plugins percona-toolkit

Plugin Setup

Change the user/pass used in the example below

  1. Append checks to NRPE config file (see below - change user/pass as required)
    • vi /usr/local/nagios/etc/nrpe.cfg
  2. Check NRPE is set to allow parameters
    • dont_blame_nrpe=1
  3. Create MySQL user
    • mysql -u root -p
    • GRANT SELECT, PROCESS, SUPER ON *.* to 'nagios'@'localhost' IDENTIFIED BY 'nagios123';
  4. Create credentials config file for checks to use
    • vi /etc/nagios/mysql.cnf
    • Add the following lines
    • [client]
    • user = nagios
    • password = nagios123
  5. Change owner and permissions of credentials config file
    • chown root:nagios /etc/nagios/mysql.cnf
    • chmod 640 /etc/nagios/mysql.cnf
# Example MySQL checks
command[check_mysql_status]=/usr/lib64/nagios/plugins/pmp-check-mysql-status $ARG1$
command[check_mysql_processlist]=/usr/lib64/nagios/plugins/pmp-check-mysql-processlist
command[check_mysql_innodb]=/usr/lib64/nagios/plugins/pmp-check-mysql-innodb -C $ARG1$
command[check_mysql_status_uptime]=/usr/lib64/nagios/plugins/pmp-check-mysql-status x Uptime -C '<' -w $ARG1$ -c $ARG2$
command[check_mysql_status_connx]=/usr/lib64/nagios/plugins/pmp-check-mysql-status -x Threads_connected -o / -y max_connections -T pct -w $ARG1$ -c $ARG2$
command[check_mysql_status_threadrun]=/usr/lib64/nagios/plugins/pmp-check-mysql-status -x Threads_running -w $ARG1$ -c $ARG2$
command[check_mysql_slave_running]=/usr/lib64/nagios/plugins/pmp-check-mysql-replication-running
command[check_mysql_slave_delay]=/usr/lib64/nagios/plugins/pmp-check-mysql-replication-delay

NRPE Compiled Without Argument Support

Sometime Nagios has been compiled and installed so that it will never accept arguments (regardless of dont_blame_nrpe config).

cd /root/nrpe/nrpe-2.13/
./configure --enable-command-args
/etc/init.d/nrpe stop
make
make install
/etc/init.d/nrpe start