Script de sauvegarde Nagios – Centreon (FAN)

Bonjour, aujourd’hui, je vous propose un script de sauvegarde pour la distribution FAN (Fully Automated Nagios).

Il permet de sauvegarder les différents fichiers de configuration de Nagios et Centreon ainsi que l’historique associé (Mysql).

#!/bin/sh
#
#Script de sauvegarde Nagios(3.x)-Centreon(2.x)
#Version 1.0
#
#A utiliser avec les scripts 'RestoreCentreon' et backUpMail.
#
#Par Hervé Vanmeerbeck
#############################################

# Arret des services de supervision
supervision stop
 
# Creation d'un dossier temporaire
mkdir /BackUpCentreon
cd /BackUpCentreon
 
# Compression des fichiers de configuration, des vues et des logs
echo -e "\n Précompression des fichiers \n"
tar cf conf_nagios.tar /etc/nagios
tar cf logs_nagios.tar /var/log/nagios
tar cf logs_centreon.tar /var/log/centreon
tar cf conf_centreon.tar /usr/share/centreon/cron /usr/share/centreon/filesGeneration /usr/share/centreon/lib
tar cf confs_apache.tar /etc/httpd/conf.d/centreon.conf /etc/httpd/conf.d/nagios.conf
tar cf confs_cron.tar /etc/cron.d/centreon /etc/cron.d/centstorage
tar cf confs_init.tar /etc/init.d/nagios /etc/init.d/ndo2db /etc/init.d/centcore /etc/init.d/centstorage
tar cf vues_centreon.tar /var/lib/centreon/metrics /var/lib/centreon/nagios-perf /var/lib/centreon/status
 
# Sauvegarde des bases de donnees
echo -e "\n Sauvegarde de la base de donnée... \n"
mysqldump -u root --opt centreon2 > BdD_centreon.sql
mysqldump -u root --opt centreon2_storage > BdD_storage.sql
mysqldump -u root --opt nagios > BdD_ndo.sql
 
# Relance des services de supervision
supervision start
 
# Définition du path où sont les sauvegardes
rep=/root
 
# Creation des fichiers ZIP de sauvegarde
echo -e "\n Compression des fichiers... \n"
jour=`date +%A`
if [ -e $rep/Sauvegardes/CentConf-$jour.tar.gz ]; then
rm $rep/Sauvegardes/Cent*-$jour.tar.gz
fi
tar czf $rep/Sauvegardes/CentConf-$jour.tar.gz /BackUpCentreon/conf_nagios.tar /BackUpCentreon/conf_centreon.tar /BackUpCentreon/confs_apache.tar /BackUpCentreon/confs_cron.tar /BackUpCentreon/confs_init.tar /BackUpCentreon/BdD_centreon.sql
tar czf $rep/Sauvegardes/CentHist-$jour.tar.gz /BackUpCentreon/logs_nagios.tar /BackUpCentreon/logs_centreon.tar /BackUpCentreon/vues_centreon.tar /BackUpCentreon/BdD_storage.sql /BackUpCentreon/BdD_ndo.sql
 
# Suppression du dossier temporaire
rm -R /BackUpCentreon
 
# Modification des droits sur les fichiers
chmod 750 $rep/Sauvegardes/Cent*-$jour.tar.gz
chown root:root $rep/Sauvegardes/Cent*-$jour.tar.gz
echo -e "\n Back-Up Terminé! \n"
 
# End of script

Utilisation : ./Backup

Cette entrée a été publiée dans Développement, Réseaux. Vous pouvez la mettre en favoris avec ce permalien.

17 réponses à Script de sauvegarde Nagios – Centreon (FAN)

  1. Alexis dit :

    Et RE GEEK ! =D

  2. AlexNogard dit :

    Bonjour,
    Vos scripts sauvegardes / restaurations sont interessants !
    Je peux me permettre d’en parler sur mon blog ?

    Cordialement,
    alexandre Nogard

  3. Tibo dit :

    Bonjour et merci pour tes scripts !

    J’ai un petit problème … Après une demi-heure d’exécution du script j’ai le message « –Dump completed on  » (juste après le dump de la table statistics) et le script n’avance plus.

    J’appuie alors sur la touche entrée, ce qui me fait quitter le script, et aucune sauvegarde n’est faite (pas de /root/Sauvegardes et compagnie…).
    Et les services arrêtés (cencore, centstorage et nagios) en début de script semblent redémarrer entre les tar et les dump…
    Une idée ?

    (Si tu veux échanger par mail, ce qui sera plus pratique peut-être, avant de faire un retour ici, je suis OK)

  4. Tibo dit :

    C’est encore moi. C’était une erreur bête …
    Suffisait de remplacer les occurrences « > » par « > » c’est tout…

    En revanche nouvelle erreur (qui est peut-être assez bête aussi) Tout semble bien se dérouler, sauf la fin…
    Voilà la fin de l’exécution du script :

    Compression des fichiers…

    tar: Retrait de « / » de tête des noms des membres
    tar: /root/Sauvegardes/CentConf-mercredi.tar.gz: ne peut open: Aucun fichier ou répertoire de ce type
    tar: Erreur non récupérable: fin de l’exécution immédiate
    tar: /root/Sauvegardes/CentHist-mercredi.tar.gz: ne peut open: Aucun fichier ou répertoire de ce type
    tar: Erreur non récupérable: fin de l’exécution immédiate
    tar: Retrait de « / » de tête des noms des membres
    chmod: ne peut accéder `/root/Sauvegardes/Cent*-mercredi.tar.gz’: Aucun fichier ou répertoire de ce type
    chown: ne peut accéder `/root/Sauvegardes/Cent*-mercredi.tar.gz’: Aucun fichier ou répertoire de ce type

    Back-Up Terminé!

    • Dominique dit :

      Bonjour,
      Je suis débutant sur Nagios et j’ai le même problème que toi avec ce script.
      Tu veux dire quoi par « Suffisait de remplacer les occurrences « > » par « > » »???
      Merci d’avance.
      Cordialement,
      Dominique Sarr

      • admin dit :

        Bonjour,

        Ce que Tibo voulait dire c’est qu’il faut remplacer les « & g t; » par des « > » à la suite du copier-coller car ces caractères sont réinterprétés par le navigateur (html).

        Je vais modifier le script en ligne pour éviter ce problème à l’avenir.
        Cordialement,

  5. David Debray dit :

    Bonjour,
    je suis étudiant et débutant dans le monde de la supervision et je voudrais utiliser un script de sauvegarde tel que celui-ci.
    Vous allez peut être touver ma question bête mais d’où sort la commande « supervision [stop|start] » ?

    • admin dit :

      Bonjour,

      En fait, cette commande fait appel au script de controle des services de supervision que vous trouverez ICI.
      N’hésitez pas si vous avez des questions ;-)

  6. David Debray dit :

    ah oui… je n’

  7. David Debray dit :

    Merci pour la réponse et merci beaucoup pour les scripts!!

  8. Sellaoui dit :

    Bonjour,
    je viens de créer une interface web liée à ma base de données nagios.sql ,la solution que j’ai proposé c’était l’ajout automatique des hôtes, et donc après avoir ajouter les nouvelles hotes à ma bases de données nagios.sql , je veux les prendres en charges.
    ma question est comment , je peux inserer ou copier de ma base vers les fichiers config de nagios ?
    merci

  9. bwen dit :

    Bonjour,

    Merci pour le script, cependant moi il faut que je rajoute mkdir Sauvegardes

    Cordialement

  10. Gwen dit :

    Bonjour et tout d’abord merci pour ces scripts.

    J’ai une interrogation sans réponse et cela me tracasse; j’ai fait un backup de mon FAN et teste la procédure en réinjectant tout ca dans un FAN vierge. Et cela fonctionne, seulement j’aimerai savoir pourquoi!
    En effet, lors du backup, j’avais des warning du type « retrait de / de tête des noms des membre »; apres un coup de google, c’est tar qui fait cela par mesure de prudence pour eviter qu’au « dé-tarage » l’arborescence local soit écrasée. Soit. Je décide donc de ne pas ajouter l’option « -P » qui passe outre.
    Je lance ensuite restore, ajoute mes plugins et ca roule. Cependant, j’ai dans ma sous-arboresence backup (là où j’ai mis mes sauvegardes et mes scripts backup, restore et supervision) une nouvelle arborescence etc, usr et var. Cela semble logique puisqu’ils découlent du dé-tarage. Pourtant mes fichiers semblent présents aux 2 lieux. Le fichiers services.cfg par exemple est correct dans les 2 chemins; comment cela se fait-il? soit ca détare dans /etc/nagios soit dans mon backup/etc/nagios?
    il semblerait que cela fonctionne puisque je retrouve mes services; nagios regénére-t-il quelque chose? Dans l’affirmative, a quoi bon sauvegarder…Puis-je effacer les fichiers de mon backup/etc?

    Merci pour votre aide!

    • admin dit :

      Bonjour,

      Désolé pour le retard de ma réponse.
      TAR doit logiquement restaurer les fichiers contenu dans l’archive dans leur emplacement d’origine (donc dans /etc/nagios…).
      Il ne devrait pas les décompresser aussi dans le répertoire courant.
      Avez-vous modifié la commande « tar cf » ?

      Cdlt,

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

Please copy the string Qjuk5j to the field below: