Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo zusammen,

habe folgendes Problem:

Apache + mysql-cluster... 2 nodes sind mit einem Management-Server verbunden

So...ich habe nun ein Script geschrieben das mir eine Mail schicken und einen Dienst neustarten soll, wenn die nodes nicht mehr mit dem Management-Server verbunden sind.

Hier das Script:

#!/bin/sh

MAILTEXT='/tmp/ndbd.txt'

SERVICE='ndbd'


if ((/usr/local/bin/ndb_mgm -e show | sed -ne '5p' | grep "not connected" > /dev/null)

        || /usr/local/bin/ndb_mgm -e show | sed -ne '6p' | grep "not connected" > /dev/null ); then


        if ssh (user@ip) "ps ax | grep -v grep | grep $SERVICE > /dev/null" ; then

                        echo "hostname1: looks fine $SERVICE service running"

                else

                        echo "WARNING: $SERVICE service is not running on hostname1. Restarting Node now" > $MAILTEXT

                        ssh user@ip 'sudo /etc/init.d/mysql-ndb restart' >> $MAILTEXT

        fi


        if ssh user@ip "ps ax | grep -v grep | grep $SERVICE > /dev/null" ; then

                        echo "hostname2: looks fine $SERVICE service running"

                else

                        echo "WARNING: $SERVICE service is not running on hostname2. Restarting Node now" >> $MAILTEXT

                        ssh user@ip 'sudo /etc/init.d/mysql-ndb restart' >> $MAILTEXT

        fi


        mail -s Warning:\ hostname meinemail@bla.com < $MAILTEXT



else

        echo "node is running, everything is fine"


fi

Das script wird alle 5 min durch einen Crontab durchgeführt... jetzt bekomm ich allerdings alle 5 min folgendes per mail gesagt:

hostname1: looks fine ndbd service running

hostname2: looks fine ndbd service running

Hoffe mir kann jemand helfen... wahrscheinlich isses ne klammer oder so, ich kenn mich ja :floet:

Geschrieben

Das ist wahrscheinlich die Konsolenausgabe vom Skript, die der crond nimmt und an root sendet. Pack hinter den Befehl im Crontab-Eintrag ein


> /dev/null 2>&1

und teste erneut.

Geschrieben
Das ist wahrscheinlich die Konsolenausgabe vom Skript, die der crond nimmt und an root sendet. Pack hinter den Befehl im Crontab-Eintrag ein

Code:

> /dev/null 2>&1

und teste erneut.

Hi, danke erstmal für die schnelle Antwort. Hat aber leider nicht das gewünschte ergebnis gebracht...

Ich glaub ja eher, dass etwas mit der logik nicht stimmt... denn er soll ja erst wenn die beiden nodes "not connected" sind in die schleife gehen... ansonsten gleich rausspringen und KEINE Mail senden...

Geschrieben

doh! :upps

is klar, dass er in die if schleife geht, wenn er garkeinen vergleich hat, mit der er das dort vergleichen soll... :S ich sag ja, ich kenn mich und meine Fehler...

Also nun die Frage: Gegen was könnte ich es vergleichen?

Wenn ich

/usr/local/bin/ndb_mgm -e show | sed -ne '5p' | grep "not connected"

alleine ausführe, kommt nix zurück... wenn dort not connected stehen würde, würde das ja dann ausgegeben werden...

Geschrieben


/usr/local/bin/ndb_mgm -e show | sed -ne '5p' | grep "not connected" 

Wenn der Dienst gestoppt ist, dann findet grep die Zeichenkette. Wenn der Dienst gestartet ist, dann kommt keine Ausgabe?

Schreib das Ergebnis in eine Variable und nutze dann die Variable in der IF-Abfrage?

Geschrieben

if  (/usr/local/bin/ndb_mgm -e show | sed -ne '5p' | grep "not connected" ) || (/usr/local/bin/ndb_mgm -e show | sed -ne '6p' | grep "not connected" ) ; then

da war der Fehler...

da war ein Umbruch drinne und die Klammern waren ein wenig falsch gesetzt... :) :upps

Aber danke Trotzdem, für deine Hilfe!

VG

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...