Benutzer-Werkzeuge

Webseiten-Werkzeuge


heartbeat

Dies ist eine alte Version des Dokuments!


Heartbeat ist im der Netzwerkwelt ein Programm, welches überwacht ob ein System bzw. Dienst noch verfügbar ist. Sobald ein Heartbeat-Programm feststellt, dass das primäre System/Dienst nicht mehr verfügbar ist, könnte es das BackUp-System anweisen den ausgefallenen Dienst zu übernehmen.

Im nachfolgenden einige Scripte, welche ein simples, rudimentäres Heartbeat bieten.

  • Heartbeat für ein gesamtes System (ICMP-Test):
<font 14px/courier new,courier,monospace;;#000000;;#ffffff>#!/bin/bash</font>
<font 14px/courier new,courier,monospace;;#000000;;rgb(238, 238, 238) color: rgb(51, 51, 51);>​IP=127.0.0.1</font>
<font 14px/courier new,courier,monospace;;#000000;;#ffffff>ping $IP -c 2 || ping  $IP -c 1 || /srv/backupservice start</font>
  • Heartbeat für einen WebServer:
<font 14px/courier new,courier,monospace;;#000000;;#ffffff>#!/bin/bash
​IP=127.0.0.1
PORT=80
nc -z  $IP $PORT  || /srv/backupWWWstart</font>
  • <font 11px/arial;;#000000;;#ffffff>Heartbeat für einen FTP-Server:</font>
<font 11px/courier new,courier,monospace;;#000000;;#ffffff>#!/bin/bash
​IP=localhost
PORT=21
nc -z  $IP $PORT  || /srv/backupFTPstart</font>
  • Heartbeat für ein Programm:
<font 9pt/ ;;#000000;;#ffffff>#!/bin/bash
PRGNAME=apache2</font> <font 14px/arial;;#000000;;#ffffff>ps -a | grep -w $PRGNAME || /usr/sbin/apache2​</font> <font 14px/ ;;#000000;;#ffffff></font>

Diese Scripte müssen natürlich sinngemäß angepasst werden (über die Variablen PRGNAME,IP, PORT) und das auszuführende Kommando sollte auch exisitieren bzw. angepasst werden.

Bis auf das letzte Script (Heartbeat für ein Programm) müssen diese Scripte natürlich auf den Backupsystemen ausgeführt werden. Da diese Scripte ja regelmäßig laufen sollen empfiehlt sich ein Eintrag in die Crontab wie im folgenden Beispiel:

*     *     *     *     *        /srv/bin/heartbeat

Dafür habe ich dass entsprechende Script ausführbar gemacht (chmod 700) und nach /srv/bin/heartbeat kopiert. Es wird jetzt jede Minute ausgeführt. (für private Zwecke sollte dies vollkommen ausreichend sein…)

Auch das letzte Script (Heartbeat für ein Programm) sollte in die Crontab eingetragen werden, hier jedoch auf den primären System selbst.

Weitere Informationen zu Cron:

http://wiki.ubuntuusers.de/Cron

Bei weiteren Fragen kann Ihnen in der Mailingliste: lug-talk(ät)lists(dot)lug-myk(dot)de geholfen werden.

heartbeat.1393014448.txt.gz · Zuletzt geändert: 2016/01/06 12:44 (Externe Bearbeitung)