Als Betriebssystem für das Monitoring System wird aktuell ein SuSE Linux Enterprise Server 11 eingesetzt. Weiter stützt sich das System dann auf die Open Monitoring Distribution OMD, die auch die Check_MK Installation beinhaltet. Auf der Homepage gibt es auch Installationspakete für weitere Linux-Distributionen:
Open Monitoring Distribution – http://omdistro.org
Check_MK – https://mathias-kettner.de/check_mk.html
Hier zeige ich eine Check_MK Konfigurationsdatei main.mk. Diese stammt aus einem Monitoringsystem, wurde aber um einige Hosts gekürzt. Auch wurden Hostnamen und IP-Adressen durch „fiktive“ Werte ersetzt. Dadurch kann es sein, dass darauffolgende Definitionen mal auf einen nicht existenten Host zeigen. Aber als Beispiel für eigene Konfigurationen kann es genutzt werden.
all_hosts
In diesem Abschnitt werden die zu überwachenden Hosts eingetragen. Damit die Abfrage richtig funktioniert, müssen die angegebenen Hostnamen auflösbar sein.
Auch können an die Hostnamen getrennt durch das Pipe-Zeichen „|“ Tags definiert werden, die in weiteren Definitionen verwendet werden können.
all_hosts = [ ’srvvmnagios‘, \
’srv1|windows-tag‘, \
’sap1|windows-tag|sap‘, \
’srv2|backup|windows-tag‘, \
’srv3|windows-tag|web-tag‘, \
’srv4|windows-tag|citrix‘, \
’srv5|windows-tag|sometag‘, \
’srv6|ping‘, \
’srv7|windows-tag|owntag‘, \
‚www.google.de|ping‘, \
’srv8|ping|web-tag‘, \
’srv9|vmware-tag‘, \
’switch1|snmp-switch|snmp‘, \
’switch2|snmp-switch|snmp|nobulk‘, \
‚192.168.209.38|snmp-lom|snmp|ILO‘, \
‚192.168.108.53|snmp|snmp-backup-tag‘ , \
‚192.168.108.52|snmp‘ , \
‚client1|ping‘ ]
Native Nagios Konfigurationsoptionen beeinflussen
Mit der Variable extra_host_conf können native Nagios Optionen beeinflusst werden und z.B. an per Tag gruppierte Hosts oder gar all_hosts übergeben werden.
Die Timeperiod GoodForSleep habe ich über die Nagios Konfiguration ~/etc/nagios/conf.d/timeperiods.cfg eingerichtet.
extra_host_conf[„notification_interval“] = [ ( „0“, ALL_HOSTS ) ]
extra_host_conf[„notification_period“] = [ ( „GoodForSleep“, ALL_HOSTS ) ]
extra_service_conf[„notification_interval“] = [ ( „0“, ALL_HOSTS, ALL_SERVICES ) ]
extra_service_conf[„contact_groups“] = [ ( „admins“, ALL_HOSTS, ALL_SERVICES ) ]
extra_service_conf[„notification_period“] = [ ( „GoodForSleep“, ALL_HOSTS, ALL_SERVICES ) ]
…
#Auszug der Nagios Konfig timeperiods.cfg
define timeperiod{
timeperiod_name GoodForSleep
alias Only Good For Sleep
sunday 06:00-22:00
monday 06:00-22:00
tuesday 06:00-22:00
wednesday 06:00-22:00
thursday 06:00-22:00
friday 06:00-22:00
saturday 06:00-22:00
}