Si vous avez un serveur distinct pour exécuter votre script de vérification, quelque chose comme ceci ferait un simple test Ping pour voir si le serveur est vivant:
#!/bin/bash
SERVERIP=192.168.2.3
[email protected]
ping -c 3 $SERVERIP > /dev/null 2>&1
if [ $? -ne 0 ]
then
# Use your favorite mailer here:
mailx -s "Server $SERVERIP is down" -t "$NOTIFYEMAIL" < /dev/null
fi
Vous pouvez exécuter le script périodiquement.
Si vous n'avez pas mailx, vous devrez remplacer cette ligne par le programme de messagerie en ligne de commande que vous avez et probablement changer les options. Si votre opérateur fournit une adresse e-mail SMS, vous pouvez envoyer l'e-mail à cette adresse. Par exemple, avec AT & T, si vous envoyez un courriel à phonenumber @ txt.att.net, il envoie l'e - mail à votre téléphone.
Voici une liste des e-mails vers les passerelles SMS:
http://en.wikipedia.org/wiki/List_of_SMS_gateways
Si votre serveur est un serveur Web accessible au public, il existe des services gratuits pour surveiller votre site Web et vous alerter en cas de panne, recherchez une surveillance gratuite du site Web pour en trouver.
Le ping est une option, mais à plusieurs reprises, une machine sera en mesure d'envoyer une réponse ping, tandis que le serveur dont il s'agit est en panne. Il vaut mieux faire un test de bout en bout. Dans l'exemple ci-dessous, une page est demandée au serveur Web.
S'il s'agit d'un serveur Web, il ressemblerait à ceci:
Si vous changez le document html en un document php et faites des tests de script de php comme la connexion à la base de données, les systèmes de fichiers, etc., vous pouvez même tester plus d'aspects du serveur. De cette façon, vous pouvez démarrer une surveillance proactive de la machine (voir les problèmes avant qu'ils ne plantent le serveur).
Similaire à la vérification d'un serveur de messagerie, mais au lieu de demander une page Web, vous envoyez simplement un e-mail via le serveur de messagerie et voyez si vous le recevez dans votre boîte aux lettres
la source
Voici comment j'ai résolu le même problème
la source
/usr/bin/mail -s "$SERVER went down" "$SENDEREMAIL" "$SMSEMAIL"
.Je recommanderais fortement d'utiliser Nagios , c'est une infrastructure de surveillance et d'alerte sur n'importe quel service que vous souhaitez (de nombreux plugins disponibles et vous pouvez écrire le vôtre). Il peut bien sûr faire des pings simples pour vérifier la disponibilité des serveurs, mais comme d'autres l'ont souligné, il est préférable de vérifier la disponibilité des services (par exemple Web, e-mail, etc.) à la place (ce que les nagios peuvent faire facilement).
la source