[TP] Sauvegarde et restauration


Nous allons utiliser Dev Tools pour manipuler les utilisateurs/rôles. Pour rappel, vous pouvez passer directement par l'API Elasticsearch.

Ce que vous allez apprendre dans ce TP :

Les prérequis

Vous devez disposer d'un cluster Elasticsearch avec une instance Kibana connectée à ce cluster. Nous vous invitons à faire le TP sur l'installation d'Elasticsearch si ce n'est pas encore le cas.

Vous devez aussi disposer d'un espace pour stocker les sauvegardes. Pour ce TP on utilisera un dossier partagé qu'on montera sur l'ensemble des conteneurs/VMs.
ATTENTION : Quelque soit le mécanisme utilisé pour stocker les snapshots, il doit disposer d'une politique de backup que vous devez gérer en dehors d'Elasticsearch.

Les espaces de sauvegardes

  1. Création du stockage
    Vous devez disposer d'un espace de stockage pour vos sauvegardes. Elasticsearch vous propose plusieurs options : Cloud (Azure, GCP et AWS) et autres. Dans ce TP on utilisera l'option 'Shared file system'. Pour cela, il faut donc avoir un montage NFS monté au même endroit sur les noeuds master et data. Cela est déjà fait dans la configuration Docker. Vous pouvez donc utiliser le dossier '/data/backups'.
  2. Déclaration du stockage
    Vous devez déclarer le stockage '/data/backups' dans Elasticsearch
  3. Configuration du stockage
    Vous devez créer un nouveau 'repository' nommé 'monpremierrepo' de type 'shared file system' avec les paramètres suivants :
    • Taille des fichiers: 1 giga
    • vitesse de restauration par seconde : demi giga
  4. Vérification du stockage
    Vous devez tester que l'ensemble des noeuds master et data ont bien accès au repo.

La politique de sauvegarde

  1. Ma premiere politique
    Vous devez configurer une politique nommée 'mapremierepolicy' qui va générer des snapshots qui portent le nom de 'monpremiersnaphot' et va stocker les sauvegardes dans le 'repository' 'monpremierrepo', sauvegardes les index commençants par mon et s'exécuter tous les jours à 3h du matin avec un roulement sur 3 jours.
    ATTENTION : Il est conseillé de faire plusieurs politiques de sauvegardes en fonction du type de données. Par exemple, il ne sert à rien de sauvegarder un paramètre tous les jours alors qu'il est modifié 1 ou 2 fois par an. A l'inverse vous aurez des index avec des informations critiques qu'il faudra peut être sauvegarder toutes les heures?
  2. Test de ma politique
    Vous devez forcer l'exécution de la politique.

Et ensuite

A ce stade, on a mis en place notre snaphot avec sa politique. On va donc tester un restauration. Mais pour vérifier la restauration on va simuler des actions involontaires.
  1. Erreur sur index
    Vous devez supprimer l'index 'montroisiemeindex'
  2. Erreur sur document
    Vous devez supprimer dans l'index 'monsecondindex' le document qui a l'id 4.
  3. Retour arrière
    Vous devez restaurer le dernier snapshot réalisé.
  4. Retour arrière ciblé
    Vous devez restaurer uniquement l'index 'montroisiemeindex'

Niveau de difficulté: (4/5)