Percona NRPE Install (MySQL): Difference between revisions

From vwiki
Jump to navigation Jump to search
(Added Ubuntu install)
 
(One intermediate revision by the same user not shown)
Line 5: Line 5:
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 - <code>/etc/apt/sources.list.d/percona-release.list</code>
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 - <code>/etc/apt/sources.list.d/percona-release.list</code>
# Download appropriate pagckage
# Download appropriate pagckage
#* <code> wget https://repo.percona.com/apt/percona-release_0.1-4.$(lsb_release -sc)_all.deb </code>
#* <code> wget https://repo.percona.com/apt/percona-release_latest.$(lsb_release -sc)_all.deb </code>
# Install package
# Install package
#* <code> dpkg -i percona-release_0.1-4.$(lsb_release -sc)_all.deb </code>
#* <code> dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb </code>
# Enable the repository
#* <code>percona-release setup ps80</code>
# Update cache
# Update cache
#* <code> apt-get update </code>
#* <code> apt-get update </code>
Line 22: Line 24:


== Plugin Setup ==
== Plugin Setup ==
Change the user/pass used in the example below
# Append checks to NRPE config file (see below - change user/pass as required)
# Append checks to NRPE config file (see below - change user/pass as required)
#* <code> vi /usr/local/nagios/etc/nrpe.cfg </code>
#* <code> vi /usr/local/nagios/etc/nrpe.cfg </code>
Line 29: Line 32:
#* <code> mysql -u root -p </code>
#* <code> mysql -u root -p </code>
#* <code> GRANT SELECT, PROCESS, SUPER ON *.* to 'nagios'@'localhost' IDENTIFIED BY 'nagios123'; </code>
#* <code> GRANT SELECT, PROCESS, SUPER ON *.* to 'nagios'@'localhost' IDENTIFIED BY 'nagios123'; </code>
# Create credentials config file for checks to use
#* <code> vi /etc/nagios/mysql.cnf </code>
#* Add the following lines
#* <code> [client] </code>
#* <code> user = nagios </code>
#* <code> password = nagios123 </code>
# Change owner and permissions of credentials config file
#* <code> chown root:nagios /etc/nagios/mysql.cnf </code>
#* <code> chmod 640 /etc/nagios/mysql.cnf </code>


<pre>
<pre>
# MySQL checks
# Example MySQL checks
command[check_mysql]=/usr/lib64/nagios/plugins/check_mysql -u nagios -p nagios123
command[check_mysql_status]=/usr/lib64/nagios/plugins/pmp-check-mysql-status $ARG1$
command[check_mysql_status]=/usr/lib64/nagios/plugins/pmp-check-mysql-status -l nagios -p nagios123 $ARG1$
command[check_mysql_processlist]=/usr/lib64/nagios/plugins/pmp-check-mysql-processlist
command[check_mysql_processlist]=/usr/lib64/nagios/plugins/pmp-check-mysql-processlist -l nagios -p nagios123
command[check_mysql_innodb]=/usr/lib64/nagios/plugins/pmp-check-mysql-innodb -C $ARG1$
command[check_mysql_innodb]=/usr/lib64/nagios/plugins/pmp-check-mysql-innodb -l nagios -p nagios123 -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_uptime]=/usr/lib64/nagios/plugins/pmp-check-mysql-status -l nagios -p nagios123 -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_connx]=/usr/lib64/nagios/plugins/pmp-check-mysql-status -l nagios -p nagios123 -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_status_threadrun]=/usr/lib64/nagios/plugins/pmp-check-mysql-status -l nagios -p nagios123 -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_running]=/usr/lib64/nagios/plugins/pmp-check-mysql-replication-running -l nagios -p nagios123
command[check_mysql_slave_delay]=/usr/lib64/nagios/plugins/pmp-check-mysql-replication-delay
command[check_mysql_slave_delay]=/usr/lib64/nagios/plugins/pmp-check-mysql-replication-delay -l nagios -p nagios123
</pre>
</pre>



Latest revision as of 08:57, 15 March 2019

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

{{#seo: |title=Percona MySQL NRPE plugin install |keywords=mysql,nrpe,nagios,monitor,percona, plugin |description=Instructions on installing the Percona NRPE plugin in order to be able to monitor a MySQL server from Nagios }}