da ich selber gerade dabei bin meine Überwachung mit Nagios3 etwas aufzumöbeln, hier ein kleiner Tipp wie man damit die Master-Slave-Replikation von MySQL überwacht.
Erstmal legt man in der Datei /etc/nagios3/command.cfg ein Befehl zur Abfrage des MySQL Servers an
2
3
4
define command {
command_name check_mysqld_slave
command_line $USER1$/check_mysql -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -S -w $ARG3$ -c $ARG4$
}
danach wird der Service in der /etc/nagios3/conf.d/services_nagios2.cfg angelegt
2
3
4
5
6
7
define service {
hostgroup_name mysql-servers-slave
service_description MySQL
check_command check_mysqld_slave![USERNAME]![PASSWORT]![WARNING]![CRITICAL]
use generic-service
notification_interval 0 ; set > 0 if you want to be renotified
}
USERNAME: ein MySQL mit "Super" Recht um die Replikation abzufragen
PASSWORT: das dazugehörige Passwort
WARNING: Sekunden, die der Slave hinterhinken darf, bis eine Warning ausgelöst wird
CRITICAL: Sekunden, die der Slave hinterhinken darf, bis eine Critical Meldung ausgelöst wird
außerdem wird der Service noch mit den entsprechenden Rechnern durch eine hostgroup verbunden in Datei /etc/nagios3/conf.d/hostgroups_nagios2.cfg
2
3
4
5
define hostgroup {
hostgroup_name mysql-servers-slave
alias MySQL Servers
members mysql2
}
wenn alles geklappt hat, sollten die Üerwachungsausgaben in Nagios in etwa so aussehen:
Uptime: 1141150 Threads: 6 Questions: 6791280 Slow queries: 238 Opens: 1881 Flush tables: 2 Open tables: 215 Queries per second avg: 5.951 Seconds behind Master: 0
