DBAtlas · Atlas d'exploitation des bases de données

cluster_block_exception: ClusterBlockException[blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete block]] (before 7.x: FORBIDDEN/12/index read-only / allow delete (api)) (index bloqué par le flood stage watermark)

Elasticsearch

Que signifie cette erreur ?

Comme l'utilisation du disque a dépassé le flood stage watermark (95 % par défaut ; sur les grands disques, déterminé par max_headroom), Elasticsearch a placé un bloc read_only_allow_delete sur les index ayant un shard sur le nœud concerné, afin d'éviter que le disque ne se remplisse complètement. En raison de ce bloc, les écritures dans l'index (indexation/mise à jour/suppression de documents) sont impossibles ; seule la suppression de l'index lui-même est autorisée. ES 8.x renvoie cette erreur avec HTTP 429.

Cause

L'utilisation du disque sur au moins un nœud a dépassé le seuil cluster.routing.allocation.disk.watermark.flood_stage. Même si le blocage est levé manuellement, Elasticsearch le réapplique tant que le disque est encore plein. Les causes typiques sont de gros index sans rotation des journaux, des snapshots non nettoyés ou une capacité disque insuffisante.

Comment la corriger

Libérez d'abord de l'espace disque : supprimez les index anciens/inutiles (DELETE /old-index), prenez un snapshot et retirez les index, ou agrandissez le disque. En 7.4+, le blocage est levé automatiquement lorsque l'utilisation du disque repasse sous le high watermark ; pour le lever immédiatement sans attendre, retirez-le manuellement : PUT /_all/_settings {"index.blocks.read_only_allow_delete": null}. En correction permanente, supprimez/archivez automatiquement les anciennes données avec ILM (Index Lifecycle Management) et revoyez les paramètres de watermark (disk.watermark.low/high/flood_stage).

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur