DBAtlas · Atlas de operações de banco de dados

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

Elasticsearch

O que significa?

Como o uso de disco excedeu o flood stage watermark (padrão 95%; em discos grandes determinado por max_headroom), o Elasticsearch aplicou um bloqueio read_only_allow_delete nos índices que têm um shard no nó afetado, para evitar que o disco se encha por completo. Por causa desse bloqueio, gravações no índice (index/update/delete de documentos) não são possíveis; apenas a exclusão do próprio índice é permitida. O ES 8.x retorna este erro com HTTP 429.

Por que acontece?

O uso de disco em pelo menos um nó excedeu o limite cluster.routing.allocation.disk.watermark.flood_stage. Mesmo que o bloqueio seja removido manualmente, o Elasticsearch o reaplica enquanto o disco continuar cheio. Índices grandes sem rotação de logs, snapshots não limpos ou capacidade de disco insuficiente são causas típicas.

Como resolver

Primeiro libere espaço em disco: exclua índices antigos/desnecessários (DELETE /old-index), faça um snapshot e remova índices, ou aumente o disco. No 7.4+, o bloqueio é removido automaticamente quando o uso de disco cai abaixo do high watermark; para removê-lo imediatamente sem esperar, remova-o manualmente: PUT /_all/_settings {"index.blocks.read_only_allow_delete": null}. Para uma correção permanente, exclua/arquive dados antigos automaticamente com ILM (Index Lifecycle Management) e revise as configurações de watermark (disk.watermark.low/high/flood_stage).

Abrir no DBAtlas →

Mais entradas deste banco