5.12. Reconstruction

La reconstruction consiste à recréer le contenu des bases de données (MongoDB-data, Elasticsearch-data) en cas de perte de l’une ou l’autre à partir des informations présentes dans les offres de stockage. Elle part du principe que le contenu des offres n’a pas été altéré.

Prudence

Dans cette version de la solution logicielle VITAM, la reconstruction nécessite de couper le service aux utilisateurs.

Prudence

Une reconstruction complète à partir des offres de stockage peut être extrêmement longue, et ne doit être envisagée qu’en dernier recours.

5.12.1. Procédure multi-sites

5.12.1.1. Cas du site primaire

La reconstruction se réalise de la manière suivante :

  1. Arrêt de VITAM sur le site à reconstruire

    • Utiliser le playbook ansible-vitam-exploitation/stop_vitam_timers.yml
    • Utiliser le playbook ansible-vitam-exploitation/stop_vitam.yml

Il est indispensable de valider que tous les services VITAM (y compris les timers systemd) sont bien arrêtés

  1. Purge des données (le cas échéant) stockées dans MongoDB-data, excepté les bases identity, config et admin.

  2. Purge des données (le cas échéant) stockées dans Elasticsearch-data,

  3. Reconfiguration et démarrage en tant que site secondaire:

    • Paramétrer la variable primary_site à false dans le fichier environmenrs/group_vars/all/vitam_vars.yml puis utiliser le playbook ansible-vitam/vitam.yml
  4. Dès lors, l’accès utilisateur reste coupé, et l’intégralité des données est reconstruite progressivement

    • Le suivi de la reconstruction se fait en observant l’évolution de l’offset de reconstruction stocké dans MongoDB-data
    • Pour la release 8, la procédure est décrite dans la section « Recalcul des données graphe »
  5. La collection Offset de la base de données metadata est créée et permet de suivre l’avancement de la reconstruction.

  6. Une fois la reconstruction terminée (plus de modification dans la collection Offset), il convient de reconfigurer en tant que site primaire, puis redémarrer :

    • Paramétrer la directive primary_site à true puis utiliser le playbook ansible-vitam/vitam.yml

5.12.1.2. Cas du site secondaire

La reconstruction se réalise de la manière suivante :

  1. Arrêt de VITAM sur le site à reconstruire

    • Utiliser le playbook ansible-vitam-exploitation/stop_vitam_timers.yml
    • Utiliser le playbook ansible-vitam-exploitation/stop_vitam.yml

Il est indispensable de valider que tous les services VITAM (y compris les timers systemd) sont bien arrêtés.

  1. Purge des données (le cas échéant) stockées dans MongoDB-data, excepté les bases identity, config et admin.

  2. Purge des données (le cas échéant) stockées dans Elasticsearch-data,

  3. Redémarrage du site secondaire Vitam

    • Utiliser le playbook ansible-vitam-exploitation/start_vitam.yml

    • La prochaine itération de reconstruction au fil de l’eau redémarrera la reconstruction à partir du début

    • Attendre la fin de la reconstruction au fil de l’eau sur le site secondaire

      • Le suivi de la reconstruction se fait en observant l’évolution de l’offset de reconstruction stocké dans MongoDB-data
      • Pour la release 7 (version 1.4.x) il faut lancer le service dédié vitam-metadata-graph-builder.service sur le composant metadata pour recalculer le graphe des unités archivistiques et des groupes d’objets techniques n’ayant pas encore reconstruit leurs données graphe

5.12.2. Procédure mono-site

La procédure à appliquer est la même que la procédure du site primaire pour une installation multi-sites.