Concept


Shinken Entreprise V02.06.00 introduit un nouveau Module : synchronizer-module-database-backup permettant d'effectuer une sauvegarde automatique à intervalles réguliers de la base de données du Synchronizer ( voir la page Module synchronizer-module-database-backup ).

Cela permettra, en cas de mauvaise manipulation, de restaurer facilement une ancienne version grâce à la commande shinken-synchronizer-database-restore.

Cette commande ne permet de restaurer que la base de données MongoDB du Synchronizer ! Les fichiers de configuration, les logs, les SLA, les métriques et les données utilisateur ne sont pas sauvegardés par le module et ne sont donc par inclus dans la restauration de cette commande.

Pour une restauration complète, voir la page Shinken-backup et Shinken-restore, les commandes de sauvegarde et de restauration.

Utilisation de la commande

La commande shinken-synchronizer-database-restore permet de restaurer n'importe quelle version sauvegardée.

  • Si plusieurs sauvegardes sont disponibles, elle propose la liste des sauvegardes disponibles avec un horodatage, triée de la plus ancienne à la plus récente.


La commande a besoin de redémarrer le Synchronizer,

  • La commande demandera une validation avant d'effectuer le redémarrage.


Il est possible de choisir la sauvegarde à restaurer en saisissant son numéro.

  • Afin que la restauration puisse être effectuée sans risque de corruption de données, la commande shinken-synchronizer-database-restore demande un accord pour arrêter le Synchronizer durant la procédure de restauration.
  • Une fois celle-ci effectuée, la commande demande un accord pour redémarrer le Synchronizer.
  • Lorsque de la restauration de la base de données du Synchronizer, il est possible de restaurer une base qui n'est pas compatible avec la version actuellement installée de Shinken ( c'est le cas si l'archive est antérieure à la mise à jour de Shinken ) .
    • Pour cette raison, la commande lance des actions automatiques afin d'assurer la compatibilité entre la base de données restaurée et la version actuellement installée de Shinken.


Nom du paramètreDescriptionValeur par défaut
-cChemin du fichier de configuration du Synchronizer/etc/shinken/synchronizer.cfg
-d Chemin du dossier où se trouvent les archives de la base MongoDB du SynchronizerLe dossier spécifié dans le fichier de configuration du module "synchronizer-module-database-backup" ( voir la page Module synchronizer-module-database-backup )
-fNom d'un backup à charger (sans l'extension)N/A
--mongo-hostServer où se trouve la base MongoDB du Synchronizer.L'hôte spécifié dans le fichier de configuration du Synchronizer ( /etc/shinken/synchronizer.cfg ).
--mongo-portPort de la base MongoDB du Synchronizer.Port  spécifié dans le fichier de configuration du Synchronizer ( /etc/shinken/synchronizer.cfg ).
--mongo-use-sshPermet de se connecter la base MongoDB du Synchronizer par un tunnel SSH. Utilisé lorsque la base de donnée est sur un serveur différent de celui du Synchronizer.Valeur spécifiée dans le fichier de configuration du Synchronizer ( /etc/shinken/synchronizer.cfg ).
--mongo-ssh-keyClé de l'utilisateur utilisé lors de la connexion SSH à la base MongoDB du Synchronizer.Clé spécifiée dans le fichier de configuration du Synchronizer  ( /etc/shinken/synchronizer.cfg ).
--mongo-ssh-userUtilisateur utilisé lors de la connexion SSH à la base MongoDB du Synchronizer.Utilisateur spécifié dans le fichier de configuration du Synchronizer  ( /etc/shinken/synchronizer.cfg ).





Exemple


Si le script est lancé avec l'option -f et que le backup indiqué n'existe pas, le script l'indiquera et proposera les backups disponibles, comme dans l'exemple ci-dessous :

$ shinken-synchronizer-database-restore -f this-backup-does-not-exists
Impossible to load the required backup
Theses backup were found :
        [  0] 2024-09-24_14-58_synchronizer_localhost.tgz
        [  1] 2024-09-24_15-49_synchronizer_localhost.tgz
        [  2] 2024-09-24_15-54_synchronizer_localhost.tgz
Which backup do you want to restore ? [0-2] :