Compactage dans la base
Il est important de noter que pendant que le script va fonctionner, la base se bloquer et les opérations ne pourront pas se faire. Nous vous conseillons de faire cette opération avec Shinken éteint.
Le script de compactage est launch_mongo_compaction.py
| Code Block |
|---|
Attention: ce script ne fonctionne que sur un shinken supérieur à la v02.07.00 |
Il se lance de la manière suivante:
| Code Block | ||||
|---|---|---|---|---|
| ||||
launch_mongo_compaction.py -H IP_SERVER --ssh-user=shinken --connection-method=ssh --ssh-keyfile=~shinken/.ssh/id_rsa |
- -H: adresse publique du serveur à vérifier
- ou localhost si vous souhaitez vérifier le serveur sur lequel s'exécute le script
- --connection-method=ssh: à n'utiliser que pour les serveurs distants afin de créer un tunnel SSH vers le serveur et protéger les accès
- --ssh-user: utilisateur à utiliser pour les serveurs distants pour les connexions SSH
- --ssh-keyfile: clé SSH à utiliser pour les serveurs distants
| Info |
|---|
ATTENTION: Pour rappel, lancer cette commande va bloquer la base pendant l'opération, qui va dépendre de la vitesse du serveur, notamment de la vitesse de ses disques, car toutes les données vont être lues/réécrites. Il faut que Shinken soit arrêté pendant cette opération. |
Au lancement, il va parcourir les bases de données, et va les compacter. Voici une exécution du script:
Pour information, la base de données de ce lancement faisait 600Mo sur disque pour un volume de données en base de 1.5Go.
| Info |
|---|
Cette procédure vous permettra de récupérer de l'espace disque mais n'est pas magique. Il est important que vous limitiez les données stockées dans le temps ( SLA, Événement ) pour que l'espace consommé se limite. |
