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 #
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'.
Déclaration du stockage
Vous devez déclarer le stockage '/data/backups' dans Elasticsearch
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
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 #
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?
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.
Erreur sur index
Vous devez supprimer l'index 'mon-deuxieme-index'
Erreur sur document
Vous devez supprimer dans l'index 'mon-second-index' le document qui a l'id 4.
Retour arrière
Vous devez restaurer le dernier snapshot réalisé.
Retour arrière ciblé
Vous devez restaurer uniquement l'index 'mon-deuxieme-index'
Niveau de difficulté : ●●●●○ (4/5)
Mon suivi
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
Glossaire de la formation
Observabilité
La capacité à connaître l'état interne d'un système à partir des données qu'il émet.Ces données sont classées en 3 piliers : logsmétriquestracesprofil...
Elastic Common Schema (ECS)
Une spécification open source qui permet de structurer vos données de manière homogène dans l'écosystème Elastic.
RBAC (Role-Based Access Control)
Contrôle d'accès basé sur les rôles. Les permissions sont attribuées à des rôles spécifiques (ex: admin, lecteur) plutôt qu'directement aux utilisateu...
Authentification
Processus permettant de vérifier et valider l'identité d'un utilisateur ou d'un système (ex: login/mot de passe, jeton, biométrie).
Autorisation
Processus intervenant après l'authentification pour déterminer si l'entité a les droits et privilèges nécessaires pour accéder à une ressource.
API Key
Clé d'API. Code alphanumérique unique utilisé pour identifier, authentifier et autoriser l'accès à une interface de programmation (API).
Architecture
Conception globale et structurelle d'un système informatique, définissant ses différents composants, leurs relations et les principes guidant son évol...
Repository
Dépôt de stockage centralisé. Peut désigner un dépôt de code source (ex: Git) ou un dépôt d'artefacts et binaires (ex: Harbor, Nexus, Artifactory).
Articles recommandés
Snapshot Lifecycle Management : sauvegardes automatisées, restauration et reprise après sinistre
Protéger les données Elasticsearch : dépôts de snapshots (S3, GCS, Azure, système de fichiers), p...
Architecture distribuée Elasticsearch : rôles des nœuds, shards, répliques et allocation
Comprendre le fonctionnement distribué d'Elasticsearch : rôles des nœuds, nœuds master et quorum,...
Automatisation et infrastructure as code pour Elasticsearch : API, Terraform, Ansible et CI/CD
Automatiser l'administration d'Elasticsearch : API REST et clients, fournisseur Terraform elastic...
Cross-cluster search et cross-cluster replication : architectures multi-clusters Elasticsearch
Concevoir des architectures multi-clusters Elasticsearch : clusters distants, cross-cluster searc...
Ingestion Elasticsearch : Bulk API, ingest pipelines, enrich et reindex
Ingérer et transformer des données dans Elasticsearch : Bulk API, ingest pipelines et processeurs...
Administrer Kibana : espaces, rôles, utilisateurs et supervision
Organiser Kibana pour plusieurs équipes : espaces, rôles et privilèges sur les index et les fonct...
Monitoring et troubleshooting Elasticsearch : santé, shards non assignés, JVM, hot threads et slow logs
Diagnostiquer un cluster Elasticsearch : cluster health et CAT APIs, shards non assignés et alloc...
Sécurité avancée Elasticsearch : TLS, certificats, clés d'API, FLS, DLS et audit
Sécuriser Elasticsearch en profondeur : TLS transport et HTTP, gestion des certificats avec elast...
OpenSearch en production : ISM, sauvegardes, sécurité et bonnes pratiques
Automatiser le cycle de vie avec ISM, sauvegarder par snapshots, gérer les rôles et dimensionner ...