CosmoCode
  • Great software.

  • Bright people.

  • Happy customers!

CosmoCode GmbH
  • Start
  • Geschäftsfelder
  • Über uns
  • Referenzen
  • Blog
  • Open Source
←
Alle Blogposts
→

Nagios konfigurieren...

... und den Überblick behalten ist gar nicht so einfach. Inzwischen haben wir einen grossen Teil der zu überwachenen Hosts und Services konfiguriert. Hier mal ein paar Tricks... 1) Konfig aufsplitten Die Hauptconfig ist die /etc/nagios.cfg - per default included diese diverse .cfg Dateien für Hosts, Services, Hostgroups und so weiter. Das passiert mit der cfg_file directive. Allerdings ist es ziemlich unpraktisch alles in diesen Dateien zu konfigurieren. Einfacher ist es sich Verzeichnisse an…

Andreas Gohr, 09.11.2005 15:00

Nagios konfigurieren...

… und den Überblick behalten ist gar nicht so einfach. Inzwischen haben wir einen grossen Teil der zu überwachenen Hosts und Services konfiguriert. Hier mal ein paar Tricks…

1) Konfig aufsplitten

Die Hauptconfig ist die /etc/nagios.cfg - per default included diese diverse .cfg Dateien für Hosts, Services, Hostgroups und so weiter. Das passiert mit der cfg_file directive. Allerdings ist es ziemlich unpraktisch alles in diesen Dateien zu konfigurieren. Einfacher ist es sich Verzeichnisse anzulegen und einzelne Konfigs innerhalb dieser Verzeichnisse zu pflegen. konkret sieht das momentan bei uns so aus:

cfg_dir=/etc/nagios/hosts/
cfg_dir=/etc/nagios/services/

Nagios inluded automatisch alle Dateien mit .cfg Endung in diesen Verzeichnissen. Damit kann man schonmal sehr einfach pro host eine eigene Konfig-Datei anlegen.

2) Templates nutzen

Für die meisten services und hosts gibt man sowieso immer wieder die selben Konfigs an. All das kann man in einem Template zusammenfassen und spaeter über die use Direktive verwenden. Zum Beispiel nutzen all unsere Hosts momentan das folgende in /etc/nagios/hosts/_templates.cfg definierte Template:

define host{
  name                            host-template
  notifications_enabled           1       ; Host notifications are enabled
  event_handler_enabled           1       ; Host event handler is disabled
  flap_detection_enabled          1       ; Flap detection is disabled
  process_perf_data               1       ; Process performance data
  retain_status_information       1       ; Retain status information across program restarts
  retain_nonstatus_information    1       ; Retain non-status information across program restarts

  check_command                   check-fast-alive
  checks_enabled                  1
  max_check_attempts              10
  notification_interval           120
  notification_period             24x7
  notification_options            d,u,r

  register                        0       ; fuer templates!
}

Alles was davon abweicht kann im entsprechenden Host Eintrag überschrieben werden. Ein normaler Host eintrag besteht also nur noch aus ein paar Zeilen:

define host{
  use                     host-template
  host_name               fileserver.cosmo
  alias                   CosmoCode Fileserver
  address                 192.168.0.75
}

3) Hostspezifisches zum Host

Es ist nicht nötig Services und Hosts in seperaten Konfigdateien zu konfigurieren. Stattdessen macht es Sinn Services die sehr spezifisch für einen Host sind und nirgends wiederverwendet werden können auch in der Konfig des Hosts vorzunehmen. Bestes Beispiel sind die Checks für HTTP Virtualhosts. Siehe nächsten Punkt.

4) VirtualHosts nicht als Host

Als Nagios host sollten nur physikalische Hosts eingerichtet werden. HTTP VirtualHosts können dann simpel mit einem selbstdefinierten Check getestet werden. Einfach folgende Check Kommandos in /etc/nagios-plugins/config/http.cfg anlegen:

define command{
        command_name    check_httppage
        command_line    /usr/lib/nagios/plugins/check_http -H $ARG1$ -u $ARG2$
}
define command{
        command_name    check_httpport
       command_line    /usr/lib/nagios/plugins/check_http -H $ARG1$ -p $ARG2$ -u $ARG3$
}

Damit lassen sich dann Beliebige URLs checken:

define service{
  use  service-template
  service_description     HTTP DokuWiki
  host_name               fileserver.cosmo
  check_command           check_httppage!wiki.cosmo!/dmz:gateway
}

Obiges Kommando überprüft die Erreichbarkeit von http://wiki.cosmo/dmz:gateway wobei wiki.cosmo ein VirtualHost auf dem fileserver ist.

5) SNMP ist dein Freund

Mit SNMP und selbstdefinierten OIDs eröffnen sich ganz neue Welten. So überwachen wir momentan beispielsweise Platten-Belegung und Platten-Temperatur einiger Remote-Rechner. Wie das geht erzähl ich vielleicht ein andernmal…

Mehr zum Thema

  • Formel Hosting?
  • OpenSource DvD 2.0
  • PC-Welt testete Openoffice.org 2.0 und Office 2003
  • VMware 5.5 Testbericht
  • Bugfix-Release für KDE
  • Linux auf Laptops
  • Active Directory mit SSL und PHP
  • Installing Projektron BCS on Debian Linux
  • Wochenrückblick
  • $200 Linux Laptop

Kontakt

Wir freuen uns sehr über Ihr Interesse!
Sie erreichen uns hier:

CosmoCode GmbH

Prenzlauer Allee 36G
10405 Berlin

Telefon: +49 30 814 50 40 70

Telefax: +49 30 2809 7093


mail: info@cosmocode.de

CosmoCode GmbH  
   

© CosmoCode 2021 | Impressum | Datenschutz | Cookies verwalten

Schließen
Deutsch Englisch
  • Jobs