6 - Conclusion
Qu’est-ce qu’un cluster ?
Haute disponibilité
Une application en haute disponibilité signifie qu’elle continue à fonctionner quand une partie arrête de fonctionner (dans le cadre d’Elasticsearch : quand un nœud devient injoignable par exemple).
Les mécanismes de haute disponibilité d’un cluster commencent réellement à partir de 3 nœuds : il faut 2 nœuds restants pour continuer à fonctionner sans le 3e nœud défectueux.
Santé d’un cluster / d’un indice
La santé d’un cluster ou d’un index est déterminée par trois couleurs dans Elasticsearch :
- vert, tout va bien, la haute disponibilité fonctionne
- jaune, il n’y a pas de redondance : si un nœud devient injoignable ou par exemple son disque casse, il y a un risque de perdre des données ou de perdre un accès à des données
- rouge, des données sont introuvables/perdues
Elasticsearch est élastique/distribué
- Une application distribuée a plusieurs instances (identiques ou non) qui communiquent entre elles.
- Par exemple des noeuds Elastc contiennent chacun une partie des données :
- On peut ajouter des noeuds et un index va automatiquement répartir les données entre les nœuds : dans Elasticsearch, on appelle ça le sharding (partition en français), les données sont copiées en plusieurs replicas.
Le scripting dans Elasticsearch
Elastic Common Schema (ECS)
- Quand on veut optimiser le fait de donner des infos à Elasticsearch avec notre application, on exporte nos logs en JSON. ECS est simplement une façon de standardiser certains champs JSON utiles à fournir à Elasticsearch.