check_bareos (check_bacula)

Info

Die Idee zu diesem nützlichen check script für diverse Monitoring System wie nagios, icinga, usw. kam mir, als ich auf bareos für die backup Infrastruktur umgestiegen bin und bis an hin keine ausgereiften nagios/icinga check-plugins dafür fand. Also machte ich mich daran und schrieb in python selbst eines. 😉

Benutzung

Für den Betrieb muss das python Modul psycopg2 installiert werden:
yum:

yum install python3-psycopg2

apt:

apt install python3-psycopg2

In der shell wird es wie folgt benutzt:

Usage: check_bareos [-H ] [-U ] [-P ] [-D ] [--warning-severity ] [--critical-severity ] [--days ] [--help] [-d] [--list-status]

Options:
  -h, --help            = Show this help
  -H                    = Database hostname                    (default: localhost)
  -U                    = Database username                    (default: read-only)
  -P                    = Database password                    (default: read-only)
  -D                    = Database name                        (default: bareos)
  --warning-severity    = From this number reports WARNING     (default: 15)
  --critical-severity   = From this number reports CRITICAL    (default: 25)
  --days                = Number of days to look back for jobs (default: 2)
  -d                    = Show debug information
  --list-status         = List the available bareos statuses
-HHostname des Datenbankservers
-UBenutzername des Datenbankservers
-PPasswort des Datenbankservers
-DName der Bareos-Datenbank
–warning-severityAb dieser Stufe wird ein WARNING ausgegeben. Die einzelnen Stufen können mit –list-status angezeigt werden.
–critical-severityAb dieser Stufe wird ein CRITICAL ausgegeben. Die einzelnen Stufen können mit –list-status angezeigt werden.
–daysWie viele Tage hintereiander sollen die Jobs angeschaut werden?
-dDebug Informationen anzeigen
–list-statusStatusliste der bareos events anzeigen

Eingebunden wurde das in icinga so:

command:

define command{
  command_name                         check_bareos
  command_line                         $USER2$/check_bareos -H $HOSTADDRESS$ $ARG1$
}

service:

define service {
  use                                  backup-service
  host_name                            backupserver
  service_description                  Bareos-backup
  check_command                        check_bareos!-U $USER28$ -P $USER29$ -D bareos --warning-severity=15 --critical-severity=25 --days=2
}

Download