Translations of this page:

Nagios

maßgeschneiderte Objektvariablen


Hoch zu
Hoch zu: Inhalt
Siehe auch
Siehe auch: Objektkonfiguration, Objektvererbung, Makros

Einführung

Benutzer fragen oft nach neuen Variablen in Host-, Service- und Kontaktdefinitionen. Dazu gehören Variablen für die SNMP-Community, MAC-Adressen, AIM-Benutzernamen, Skype-Nummern und Straßennamen. Die Liste ist endlos. Das Problem, was ich darin sehe ist, dass Nagios weniger generisch und mehr infrastrukturspezifisch wird. Nagios war dazu gedacht, flexibel zu sein, was bedeutet, dass die Dinge in einer generischen Art und Weise geplant waren. Host-Definitionen in Nagios zum Beispiel haben eine generische „address“-Variable, die alles von einer IP-Adresse bis zu menschlich-lesbaren Webgeschreibungen enthalten kann - was immer für die Umgebung des Benutzers angemessen ist.

Trotzdem muss es eine Methode für Administratoren geben, in ihrer Nagios-Konfiguration Informationen zu ihren Infrastrukturkomponenten zu speichern, ohne anderen einen Satz von speziellen Variablen aufzubürden. Nagios versucht dieses Problem zu lösen, indem es Benutzern erlaubt, maßgeschneiderte Variablen in ihren Objektdefinitionen anzugeben. Maßgeschneiderte Variablen erlauben es Benutzern, zusätzliche Eigenschaften in ihren Host-, Service- und Kontaktdefinitionen anzugeben und ihre Werte in Benachrichtigungen, Eventhandlern sowie Host- und Service-Prüfungen zu benutzen.

Grundlagen zu maßgeschneiderten Variablen

Es gibt ein paar wichtige Dinge, die Sie bei maßgeschneiderten Variablen beachten sollten:

  • maßgeschneiderte Variablennamen müssen mit einem Unterstrich (_) beginnen, um einen Namenskonflikt mit Standardvariablen zu verhindern
  • maßgeschneiderten Variablennamen sind unabhängig von Groß- und Kleinschreibung (case-insensitive)
  • maßgeschneiderten Variablen werden von Objektvorlagen wie normale Variablen geerbt
  • Scripts können sich mit Makros und Umgebungsvariablen auf die Werte von maßgeschneiderten Variablen beziehen

Beispiele

Hier ein Beispiel, wie maßgeschneiderte Variablen in verschiedenen Arten von Objektdefinitionen definiert werden können:

define host{
	host_name	linuxserver
	_mac_address	00:06:5B:A6:AD:AA	; <-- Custom MAC_ADDRESS variable
	_rack_number	R32			; <-- Custom RACK_NUMBER variable
	...
	}
define service{
	host_name	linuxserver
	description	Memory Usage
	_SNMP_community	public			; <-- Custom SNMP_COMMUNITY variable
	_TechContact	Jane Doe		; <-- Custom TECHCONTACT variable
	....
	}
define contact{
	contact_name	john
	_AIM_username	john16			; <-- Custom AIM_USERNAME variable
	_YahooID	john32			; <-- Custom YAHOOID variable
	...
	}


maßgeschneiderte Variablen als Makros

Maßgeschneiderte Variablen können über Makros oder Umgebungsvariablen in Scripts und Programmen eingesetzt werden, die Nagios für Prüfungen, Benachrichtigungen usw. ausführt.

Um Namenskonflikte zwischen maßgeschneiderten Variablen aus verschiedenen Objektarten zu verhindern, stellt Nagios „_HOST“, „_SERVICE“ oder „_CONTACT“ an den Anfang von maßgeschneiderten Host-, Service- oder Kontaktvariablennamen in Makros und Umgebungsvariablen. Die folgende Tabelle zeigt die entsprechenden Namen für maßgeschneiderte Variablen, die im obigen Beispiel definiert wurden.

ObjekttypVariablennameMakronameUmgebungsvariable
HostMAC_ADDRESS$_HOSTMAC_ADDRESS$NAGIOS_HOSTMAC_ADDRESS
HostRACK_NUMBER$_HOSTRACK_NUMBER$NAGIOS_HOSTRACK_NUMBER
ServiceSNMP_COMMUNITY$_SERVICESNMP_COMMUNITY$NAGIOS_SERVICESNMP_COMMUNITY
ServiceTECHCONTACT$_SERVICETECHCONTACT$NAGIOS_SERVICETECHCONTACT
ContactAIM_USERNAME$_CONTACTAIM_USERNAME$NAGIOS_CONTACTAIM_USERNAME
ContactYAHOOID$_CONTACTYAHOOID$NAGIOS_CONTACTYAHOOID


ACHTUNG: Bei den Umgebungsvariablen stehen nach „NAGIOS“ zwei Unterstriche (leider habe ich keine Möglichkeit gefunden, das im Wiki-Format korrekt darzustellen).

maßgeschneiderte Variablen und Vererbung

Maßgeschneiderte Objektvariablen werden genau wie Standard-Host-, Service- oder Kontaktvariablen vererbt.

nagios/doku3/customobjectvars.txt · Zuletzt geändert: 2008/02/11 19:40 von wolfgang
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0