Sauvegarde et restauration de la rétention avec le module PickleRetentionFile

Où trouver la rétention Pickle

Lorsque le module PickleRetentionFile est utilisée, la sauvegarde de la rétention se fait dans un fichier qui se trouve au chemin suivant : /var/lib/shinken/

Les fichiers de rétention sont nommés en suivant ce format : 

retention.dat_--_realm--REALM_NAME_--_scheduler--SCHEDULUER_NAME_--_id--SCHEDULER_ID.retention

Avec :

NomExempleDescription
REALM_NAMEAllNom du royaume
SCHEDULER_NAMEscheduler-masterNom du Scheduler
SCHEDULER_ID0Id du Scheduler



Exemple de fichier : 

retention.dat_--_realm--all_--_scheduler--scheduler-master_--_id--0.retention


Il peut y avoir plusieurs fichiers de rétention dans /var/lib/shinken si vous avez ( par exemple ) plusieurs royaumes.

Pensez à vérifier que vous les avez tous sauvegardés.


Comment sauvegarder la rétention Pickle

Si vous passez par ligne de commande, il suffit de copier les fichiers à l'endroit souhaité avec la commande cp <source> <destination> :

cp /var/lib/shinken/retention.dat_--_realm--all_--_scheduler--scheduler-master_--_id--0.retention /root/retention_save/

Cette commande va copier le fichier de rétention retention.dat_--_realm--all_--_scheduler--scheduler-master_--_id--0.retention dans le dossier /root/retention_save/


Le dossier de destination /root/retention_save/ n'est qu'un exemple, choisissez un endroit que vous retiendrez.


Comment restaurer la rétention Pickle

Pour restaurer un fichier de rétention Pickle, il suffit de le remettre à l'endroit prévu pour ces fichiers : /var/lib/shinken

cp /root/retention_save/retention.dat_--_realm--all_--_scheduler--scheduler-master_--_id--0.retention /var/lib/shinken/ 


Attention, la commande cp écrase la destination !

Avant de restaurer les fichiers Pickle, assurez vous qu'ils n'y a pas de fichier du même nom dans /var/lib/shinken, ou assurez vous de les sauvegarder si besoin.


Sauvegarde et restauration de la rétention avec le module MongodbRetention

Où se trouve la rétention dans Mongo

Avec le module MongodbRetention, la rétention se trouve dans la base shinken par défaut ) dans les collections retention_hosts_raw et retention_services_raw.

Comment sauvegarder la rétention MongodbRetention

Pour enregistrer les données de ces collections, on utilise la commande mongodump :

mongodump -d DATABASE_NAME -c COLLECTION_NAME -o OUTPUT_FOLDER_NAME


NomExempleDescription
DATABASE_NAMEshinkenNom de la base Mongo
COLLECTION_NAMEretention_hosts_rawNom de la collection Mongo
OUTPUT_FOLDER_NAMEretention_hosts_11_10_2021Nom du fichier de sortie de la commande. Ce paramètre est optionnel mais nous vous recommandons de donner un nom parlant au dossier créé par mongodump. Si ce paramètre n'est pas renseigné, alors le dossier sera nommé dump.

Exemple de commandes :

mongodump -d shinken -c retention_hosts_raw -o retention_hosts_11_10_2021
mongodump -d shinken -c retention_services_raw -o retention_services_11_10_2021


La command mongodump écrase le dossier existant si il existe, avant de lancer la commande, assurez vous qu'il n'y ait pas de dossier appellé comme votre paramètre "-o"