Nous allons sauvegarder notre F5 sur un serveur linux qui sera lui même sauvegardé par notre outil de sauvegarde préféré. Par la suite, nous superviserons la sauvegarde via nagios.
Sauvegarde
Sur le serveur linux, nous allons créer deux scripts :
- un qui devra être exécuté à distance sur le BIG-IP
- un qui lancera le script à distance et qui se chargera de faire le ménage.
Script 1 :
Nom du script : sauvegarde_distante_bigip.sh
Description : Ce script exécute le script de sauvegarde à distance, récupère la sauvegarde en rsync et supprime les vielles sauvegardes
Contenu :
F5_ALL="@IP-BIG-IP1 @IP-BIG-IP2"
cd /sauvegarde/bigip
for HOST in $F5_ALL; do
echo "Backing up $HOST … "
ssh root@$HOST < /proc/backup_bigip.sh
rsync -avz -e ‘/usr/bin/ssh’ root@$HOST:/var/local/ucs/lc.fr.ucs /sauvegarde/bigip/daily.$HOST.$(/bin/date +%F).ucs
done# Purge expired backups
find /sauvegarde/bigip/ -name "daily.*" -mtime +7 -exec rm -f {} \;
Script 2 :
Nom du script : backup_bigip.sh
Description : Ce script lance la sauvegarde sur le bigip
Contenu :
cd /var/local/ucs
# This the bigpipe utility – man bigpipe
/bin/rm -f lc.fr.ucs
/bin/bigpipe config save lc.fr.ucs
La sauvegarde se trouvera dans /sauvegarde/bigip/ et se nommera par exemple daily.192.168.0.1.2010-05-31.ucs
Il vous suffira de sauvegarder /sauvegarde/bigip/ avec votre logiciel de sauvegarde favoris.
Planifier le script 1 tous les jours à l’aide de la crontab.
Supervision :
Pour la supervision, nous allons simplement vérifier que le fichier de la sauvegarde journalière à bien été effectuée. En gros, le fichier doit exister et ne doit pas être vide.
Créer le script check_sauvegarde_bigip.sh dans le répertoire libexec de votre serveur linux. Voici son contenu :
CRITICAL=2
OK=0
HOST=$1
FICHIER=/sauvegarde/bigip/daily.$HOST.$(/bin/date +%F).ucs
if [ -f $FICHIER ]; thenif [ -s $FICHIER ] ; then
echo "OK:BIGIP:$HOST-SAUVEGARDE OK"
exit $OK
else
echo "CRITICAL:$FICHIER SAUVEGARDE ERREUR"
exit $CRITICALfi
else
echo " CRITICAL:$FICHIER SAUVEGARDE ERREUR"
exit $CRITICALfi
Voici la méthode pour l’exécuter en ligne de commande :
check_sauvegarde_bigip.sh 192.168.0.1
sous nagios :
check_nrpe –H @IP_Linux –c check_sauvegarde_bigip –a $HOSTADDRESS
Pour pouvoir exécuter le script à distance via nagios, il vous faudra modifier votre nrpe.conf en ajoutant la ligne :
command[check_sauvegarde_bigip]=/usr/local/nagios/libexec/check_sauvegarde_bigip.sh $ARG1$
Bonne sauvegarde