RousselTMLEARNING

Observabilité

Cross-cluster search et cross-cluster replication : architectures multi-clusters Elasticsearch

Concevoir des architectures multi-clusters Elasticsearch : clusters distants, cross-cluster search, cross-cluster replication pour la reprise après sinistre et la localité des données, sécurité et limites.

1. Pourquoi plusieurs clusters #

Isoler, rapprocher, protéger.

Architecture #

CCS et CCR entre plusieurs clusters
  • Isoler des données par région (souveraineté) ou par équipe.
  • Limiter la taille de chaque cluster (opérations plus simples, pannes circonscrites).
  • Disposer d'un cluster de secours alimenté en continu.

2. Cross-cluster search #

Une requête, plusieurs clusters.

Configuration #

PUT _cluster/settings
{ "persistent": { "cluster": { "remote": {
    "eu": { "seeds": [ "es-eu-01:9300" ] },
    "us": { "seeds": [ "es-us-01:9300" ] } } } } }

GET eu:logs-*,us:logs-*/_search
{ "query": { "match": { "message": "timeout" } } }
À savoir : Les clusters distants doivent avoir des versions compatibles ; la sécurité se configure par certificats ou par clés d'API de cluster distant selon les versions.

3. Cross-cluster replication #

Copier en continu.

Réplication #

PUT orders-follower/_ccr/follow
{ "remote_cluster": "eu", "leader_index": "orders" }

# suivre automatiquement les nouveaux index
PUT _ccr/auto_follow/logs
{ "remote_cluster": "eu", "leader_index_patterns": [ "logs-*" ], "follow_index_pattern": "{{leader_index}}-copy" }
  • Le follower est en lecture seule ; en cas de sinistre, on le transforme en index normal (_ccr/pause_follow, close, unfollow).
  • CCR complète les snapshots mais ne les remplace pas : une suppression ou une corruption logique est répliquée.
À savoir : Certaines fonctionnalités dépendent de la version et du niveau de licence (Basic, Platinum, Enterprise) : vérifiez-les dans la documentation et la page des abonnements Elastic avant de les utiliser en production.

Articles liés

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, cluster sta…

Mappings et analyse de texte Elasticsearch : types de champs, analyseurs et mapping dynamique

Maîtriser les mappings Elasticsearch : types de champs (text, keyword, numériques, date, ip, nested), multi-f…

Ingestion Elasticsearch : Bulk API, ingest pipelines, enrich et reindex

Ingérer et transformer des données dans Elasticsearch : Bulk API, ingest pipelines et processeurs (grok, diss…

Pour aller plus loin