PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : von mon aus einen alert an heartbeat absetzen



Hela Wann
17.11.04, 13:41
Hallo.

Wie kann der mon, wenn ein monitor merkt, dass der Dienst nicht mehr läuft, an heartbeat einen alert absetzten, so dass heartbeat auf den nächsten Server umschaltet? Habe alle alert-Skripte durchsucht, aber da ist kein heartbeat dabei.

Danke,

Hela

anquijix
21.03.05, 16:58
du kannst auch eigene alert, bzw monitor scripts basteln.

bei deinem szenario erstellst du ein ganz normales script wo drin /etc/init.d/heartbeat stop drin steht.

http://www.linux-magazin.de/Artikel/ausgabe/2002/10/mon/mon.html

das heir sollte reichen zur lösung deines problems

anquijix
23.03.05, 11:15
ich habe ein problem mit meiner mon installation:

ich möchte ping, httpd und tomcat per mon überwachen.. dies funktioniert mehr oder weniger..
meine config sieht folgendermassen aus:



#
# global options
#
cfbasedir = /etc/mon
pidfile = /var/run/mon.pid
statedir = /var/run/mon/state.d
logdir = /var/run/mon/log.d
dtlogfile = /var/run/mon/log.d/downtime.log
alertdir = /usr/lib/mon/alert.d
mondir = /usr/lib/mon/mon.d
mondir = /usr/lib/mon/mon.d
maxprocs = 20
histlength = 100
randstart = 60s

#
# authentication types:
# getpwnam standard Unix passwd, NOT for shadow passwords
# shadow Unix shadow passwords (not implemented)
# userfile "mon" user file
#
authtype = getpwnam

#
# downtime logging, uncomment to enable
# if the server is running, don't forget to send a reset command
# when you change this
#
dtlogging = yes

#
# NB: hostgroup and watch entries are terminated with a blank line (or
# end of file). Don't forget the blank lines between them or you lose.
#
# Hostgroup ist in diesem Fall die Cluster IP

hostgroup phoebe 192.108.234.168

watch phoebe
service ping
interval 10s
monitor fping.monitor -r 4 -t 6000
allow_empty_group
period wd {Sun-Sat}
alert bring-ha-down.alert -S "No link to master node!!" root@localhost
# alert winpopup.alert pc1 pc2 pc3
alertafter 30s
alertevery 10m
upalert mail.alert -S "Link is back up!" root@localhost
# upalert winpopup.alert pc1 pc2 pc3
upalertafter 5m
numalerts 1
period wd {Sun-Sat}
alert file.alert /var/run/mon/log.d/mon.log
numalerts 5
alertevery 5m
service httpd_restart
depend phoebe:ping
monitor watch_process.monitor /usr/sbin/httpd ;;
allow_empty_group
interval 10s
period wd {Sun-Sat}
alert httpd_restart.alert -S "Service httpd NOT running!! Trying to restart..." root@localhost
# alert winpopup.alert pc1 pc2 pc3
upalert mail.alert -S "Webserver is back up!" root@localhost
# upalert winpopup.alert pc1 pc2 pc3
upalertafter 1m
numalerts 1
service httpd_fail
monitor watch_process.monitor /usr/sbin/httpd ;;
allow_empty_group
interval 20s
period wd {Sun-Sat}
alert bring-ha-down.alert -S "Restart httpd failed! Shutting down heartbeat for takeover..." root@localhost
# alert winpopup.alert pc1 pc2 pc3
numalerts 1
service tomcat_restart
depend phoebe:httpd_restart
monitor watch_process.monitor /usr/java/j2sdk1.4.2_07/bin/java ;;
allow_empty_group
interval 10s
period wd {Sun-Sat}
alert tomcat_restart.alert -S "Service tomcat NOT running!! Trying to restart..." root@localhost
# alert winpopup.alert pc1 pc2 pc3
upalert mail.alert -S "Tomcat service is back up!" root@localhost
# upalert winpopup.alert pc1 pc2 pc3
upalertafter 1m
numalerts 1
service tomcat_fail
monitor watch_process.monitor /usr/java/j2sdk1.4.2_07/bin/java ;;
allow_empty_group
interval 20s
period wd {Sun-Sat}
alert bring-ha-down.alert -S "Restart tomcat failed! Shutting down heartbeat for takeover..." root@localhost
# alert winpopup.alert pc1 pc2 pc3
numalerts 1


wenn ich jetzt tomcat oder httpd stoppe, erkennt mon zwar, dass der dienst nicht mehr läuft. das <service>-restart.alert script wird auch angesprochen, nur läuft der neustart des dienstes fehl. danach wird automatisch das bring-ha-down.alert script angesprochen, was heartbeat beendet, damit der backupserver übernehmen kann.
im restartscript steht lediglich:


#!/bin/sh
/etc/init.d/<service> restart


beim stoppen eines dienstes wird von mon folgender log-eintrag gemacht:


Mar 23 10:55:59 janus mon[6342]: failure for phoebe tomcat_restart 1111571759 Process /usr/java/j2sdk1.4.2_07/bin/java isn't running!
Mar 23 10:55:59 janus mon[6342]: calling alert tomcat_restart.alert for phoebe/tomcat_restart (/usr/lib/mon/alert.d/tomcat_restart.alert,-S "Service tomcat NOT running!! Trying to restart..." ffayyaz@domino2.wi.ten.ch) Process /usr/java/j2sdk1.4.2_07/bin/java isn't running!
Mar 23 10:56:09 janus mon[6342]: failure for phoebe tomcat_restart 1111571769 Process /usr/java/j2sdk1.4.2_07/bin/java isn't running!
Mar 23 10:56:11 janus mon[6342]: failure for phoebe tomcat_fail 1111571771 Process /usr/java/j2sdk1.4.2_07/bin/java isn't running!
Mar 23 10:56:11 janus mon[6342]: calling alert bring-ha-down.alert for phoebe/tomcat_fail (/usr/lib/mon/alert.d/bring-ha-down.alert,-S "Restart tomcat failed! Shutting down heartbeat for takeover..." ffayyaz@domino2.wi.ten.ch) Process /usr/java/j2sdk1.4.2_07/bin/java isn't running!
Mar 23 10:56:11 janus heartbeat[5988]: info: Heartbeat shutdown in progress. (5988)


das komische am ganzen ist, es hat mal mit der gleichen konfiguration funktioniert.. ich habe das gefühl, kleinste änderungen in der conf machen den dienst nicht mehr funktionstüchtig. unter solchen änderungen verstehe ich kommentare einfügen, oder das textlayout anpassen.

weiss jemand weiter?
system ist fedora core 3