Login
Newsletter
Werbung

Mo, 13. Juli 2009, 00:00

High Availability Computer Center (hacc-) - Update, Teil 3

Teil 3: Hochverfügbarkeit und Web-Oberfläche

Nagios konfigurieren

Nun sollten Apache2 und Nagios auf einem Steuerknoten laufen, erreichbar durch eine definierte IP-Adresse, die in der Datei /etc/hosts definiert sein sollte. Jetzt ist es an der Zeit, die Nagios-Definition vorzunehmen (siehe auch [7], [9], [10], [11]). Beachtet werden sollte auch, dass der Nutzer nagios Eigentümer von /var/cache/nagios2 ist (siehe dazu im Nagios-Protokoll: less +F /var/log/nagios2/nagios.log).

Hier einige kurze Erläuterungen zu den Nagios-Definitionen. In /etc/nagios2/nagios.cfg wird das Unterverzeichnis conf.d als Ort für weitere Definitionen (die gültigen Definitions-Dateien müssen mit .cfg enden) angegeben. Mit der Zeile service_perfdata_command werden die Voraussetzungen für die Anbindung von Nagiosgrapher geschaffen (definiert in nagios.cfg).

Ansonsten wird versucht, jedes Image oder jede zu steuernde Einheit (zum Beispiel die Steuerserver) in einer Definitionsdatei zusammenzufassen. Allgemein benutzbare Kommandos werden dabei in comand.cfg zusammengefasst. Die Switches (switches.cfg) erhalten ebenso wie die Management Blades (mb.cfg) eine eigene Konfigurationsdatei. Die Steuerknoten werden in hac2-cn.cfg definiert.

Die Datei hac2-n00.cfg beschreibt ein Arbeits-Image. Die Event-Handler event_host und event_service reagieren auf eine Feststellung des Ausfalls eines Hosts oder Services. Dabei hat ein Host-Ausfall immer Priorität. Aber dazu mehr im nächsten Abschnitt.

Anpassungen in /etc/nagios2/nagios.cfg

cfg_dir=/etc/nagios2/conf.d (einzige Konfigurations-Definition)
check_external_commands=1
process_performance_data=1
service_perfdata_command=process-service-perfdata
enable_flap_detection=1
use_regexp_matching=1
admin_email=nagios@localhost

Anpassungen in /etc/nagios2/resource.cfg

$USER2$=/usr/local/bin

Anpassungen in /etc/nagios2/cgi.cfg

default_statusmap_layout=2

Anlegen/Ergänzen: /etc/nagios2/conf.d/command.cfg

define command {
 command_name check_ssh
 command_line $USER1$/check_ssh -t 10 $HOSTNAME$
}
define command{
 command_name check_url
 command_line $USER1$/check_http -u $ARG1$ $HOSTADDRESS$
}
# check_www!DNS-Name!Host-IP!URL
define command{
 command_name check_www
 command_line $USER1$/check_http -H $ARG1$ -I $ARG2$ -u $ARG3$
}
define command{
 command_name event_service
 command_line $USER2$/event_service --host-down "$HOSTDOWNTIME$"
--service-down "$SERVICEDOWNTIME$" -s "$SERVICESTATE$" -t "$SERVICESTATETYPE$"
-a "$SERVICEATTEMPT$" -H "$HOSTNAME$" -d "$ARG1$"
}
define command{
 command_name event_host
 command_line $USER2$/event_host --host-down "$HOSTDOWNTIME$" -s
"$HOSTSTATE$" -t "$HOSTSTATETYPE$" -a "$HOSTATTEMPT$" -H "$HOSTNAME$"
}
define command{
 command_name check_by_ssh
 command_line $USER1$/check_by_ssh -t 3 -H $HOSTNAME$ -l nagios -i
/var/spool/nagios/.ssh/id_dsa -C 'pwd'
 }
# Command to check the load on the local machine
define command{
 command_name check_ssh_load
 command_line $USER1$/check_by_ssh -t 10 -H $HOSTNAME$ -l nagios -i
/var/spool/nagios/.ssh/id_dsa -C "$USER1$/check_load -w $ARG1$ -c $ARG2$"
 }
# 'check_ssh_procs' command definition
define command{
 command_name check_ssh_procs
 command_line $USER1$/check_by_ssh -t 20 -H $HOSTNAME$ -l nagios -i
/var/spool/nagios/.ssh/id_dsa -C "$USER1$/check_procs -w $ARG1$ -c $ARG2$ -C
$ARG3$"
 }
# Pruefen der Aktivitaeten der Knoten
define command{
 command_name check_uptime
 command_line $USER2$/check_uptime -H $HOSTNAME$
 }
# 'check_telnet' command definition
define command{
 command_name check_telnet_mb
 command_line /usr/lib/nagios/plugins/check_tcp -H $HOSTADDRESS$ -p
3172
 }
...

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung