Contexte

Afin de prévenir d'une perte de données après un crash d'un ou de plusieurs de vos serveurs utilisés dans votre architecture Shinken, nous vous conseillons d'utiliser les commandes shinken-backup et shinken-restore.

Ces deux commandes vous permettront de sauvegarder ou de restaurer tout ou une partie d'un serveur de votre architecture Shinken.



Commande de Backup

Utilisation

La commande de base pour la sauvegarde complète d'un serveur shinken est la suivante :

shinken-backup

Les différences options possibles :

OptionOption courtDescriptionDémon sur lequel se trouve les données à sauvegarder
--help-hAffiche l'aide de la commandeTous
--sla-sSauvegarde les données SLABroker
--user-uSauvegarde les données des utilisateurs de l'UI de visualisation (portails, listes, favoris, tableaux de bords..)Broker
--configuration-cSauvegarde les données de configurationSynchronizer
--metrology-mSauvegarde les données de métrologieBroker
--log-lSauvegarde les logsTous
--output-directory [dir]-od [dir]Permet de choisir où enregistrer le backup
--output-name [name]-on [name]Permet de choisir le nom du backup


La commande shinken-backup ne peut pas être exécutée dans les dossiers /etc/shinken et /etc/shinken-user

Attention, pensez bien à utiliser cet outil générique sur le bon serveur. Par exemple, sauvegarder les SLA depuis un serveur Poller ne sera pas cohérent. Ou encore, pour sauvegarder la configuration de Shinken, placez vous sur le serveur hébergeant le duo Arbiter/Synchronizer.

 

Exemples

Voici un exemple de sauvegarde complete d'un serveur hébergeant l'ensemble des démons :

root@vm-shinken: ~
$ shinken-backup
Saving Sla
  Sla save size: 360M
Saving User
  User save size: 72K
Saving Configuration
  Configuration save size: 8.0M
Saving Metrology
  Metrology save size: 3.9M
Saving Logs
  Logs save size: 2.8M

Done : your backup directory is /root/shinken-backups/2017-11-13__17-50-33

Exemple de la sauvegarde de la configuration sur un serveur hébergeant le démon Synchronizer :

root@vm-shinken: ~
$ shinken-backup --configuration
Saving Configuration
  Configuration save size: 3.1M

Done : your backup directory is /root/shinken-backups/2017-11-10__17-46-11


Commande de restauration

Utilisation


shinken-restore DIRECTORY-TO-RESTORE


Le dossier "DIRECTORY-TO-RESTORE" doit contenir les dossiers de backups comme : configuration/ metrology/ user/ sla/ context/


Les différences options possibles :

OptionOption courtDescriptionDémon sur lequel se trouve les données à restaurer
--help-hAffiche l'aide de la commandeTous
--sla-sRestaure les données SLABroker
--user-uRestaure les données des utilisateurs de l'UI de visualisation (portails, listes, favoris, tableaux de bords..)Broker
--restore-only-user [USER]

Restaure les données de l'UI de visualisation (portails, listes, favoris, tableaux de bords..) pour l'utilisateur spécifié - à utiliser avec l'option -u

(lightbulb) Cette option ne demande pas le redémarrage de Shinken

Broker
--configuration-cRestaure les données de configurationSynchronizer
--with-key-backup [HASH]
Pour un backup contenant des données protégées, restaure également la clé de chiffrement spécifiée. Il s'agit du résultat de la commande shinken-protected-fields-keyfile-export.Synchronizer
--metrology-mRestaure les données de métrologieBroker
--log-lRestaure les logsTous


Restauration d'une base de données de configuration dont les données sensibles sont chiffrées

Si la configuration que vous souhaitez restaurer contient des données chiffrées, shinken-restore vous demandera de restaurer la clé après son exécution, avant de démarrer le Synchronizer.

Le Synchronizer refusera de démarrer tant que la clé n'est pas restaurée.

Vous pouvez également utiliser l'option --with-key-backup pour restaurer la clé avec la configuration.

Si vous avez égaré votre clé, shinken-restore vous propose d'utiliser la commande shinken-protected-fields-keyfile-rescue-from-backup.





Exemples

Voici un exemple de restauration d'un backup complet Shinken depuis le dossier ~/shinken-backups :

root@vm-shinken: ~/shinken-backups

$ shinken-restore 2017-11-09__16-16-53

Stopping Shinken before restoring
Restoring from 02.04.01.fr to 02.04.02.fr
-Restoring Sla            DONE
-Restoring User           DONE
-Restoring Configuration  DONE
-Restoring Metrology      DONE
-Restoring Logs           DONE

Sanatizing your restored data
   fix_double_link                         :   skip (unecessary)
   fix_double_sync_keys                    :   skip (unecessary)
   fix_default_item_se_uuid                :   skip (unecessary)
   fix_remove_shinken_core                 :   skip (unecessary)
   fix_remove_deprecated_check             :   skip (unecessary)
   fix_remove_undefined_aix_templates      :   skip (unecessary)
   fix_flapping_thresholds                 :   skip (unecessary)
   fix_business_impact                     :   skip (unecessary)

Done. You can restart your shinken with /etc/init.d/shinken start


Après la restauration des données, des scripts de "Sanatize" sont lancés. Ces scripts permettent, si nécessaire, de réparer certaines incohérences dans vos données.

Une fois la restauration terminée, vous devez démarrer Shinken.

Voici un autre exemple de restauration d'un backup de la configuration de Shinken, lancé depuis le serveur hébergeant l'Arbiter/Synchronizer :

root@vm-shinken: ~/shinken-backups

$ shinken-restore --configuration 2017-11-08__10-58-54

Stopping Shinken before restoring
Restoring from 02.04.01-release to 02.04.02-release
-Restoring Configuration  DONE

Sanatizing your restored data
   fix_double_link                         :   executed [OK]
   fix_double_sync_keys                    :   skip (unecessary)
   fix_default_item_se_uuid                :   skip (unecessary)
   fix_remove_shinken_core                 :   skip (unecessary)
   fix_remove_deprecated_check             :   skip (unecessary)
   fix_remove_undefined_aix_templates      :   skip (unecessary)
   fix_flapping_thresholds                 :   skip (unecessary)
   fix_business_impact                     :   skip (unecessary)

Done. You can restart your shinken with /etc/init.d/shinken start

Voici un dernier exemple de restauration d'un backup des données de l'utilisateur "monutilisateur" de Shinken (portails, listes, favoris, tableaux de bords), lancé depuis le serveur hébergeant le Broker :

root@vm-shinken: ~/shinken-backups

$ shinken-restore -u --restore-only-user monutilisateur 2017-12-13__11-44-49/
Restoring from 02.04.01-release to 02.04.03-release
-Restoring User
 Restoring only the user monutilisateur

Restore of the user monutilisateur data is OK