DBAtlas · Atlas für Datenbankbetrieb

cluster_block_exception: ClusterBlockException[blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete block]] (vor 7.x: FORBIDDEN/12/index read-only / allow delete (api)) (Index wegen Flood Stage Watermark blockiert)

Elasticsearch

Was bedeutet das?

Weil die Plattenbelegung das Flood Stage Watermark überschritten hat (Standard 95 %; bei großen Platten durch max_headroom bestimmt), hat Elasticsearch auf Indizes mit einem Shard auf dem betroffenen Knoten einen read_only_allow_delete-Block gesetzt, damit die Platte nicht vollständig vollläuft. Wegen dieses Blocks sind Schreibzugriffe auf den Index (Dokument indexieren/aktualisieren/löschen) nicht möglich; nur das Löschen des Index selbst ist erlaubt. ES 8.x gibt diesen Fehler mit HTTP 429 zurück.

Ursache

Die Plattenbelegung auf mindestens einem Knoten hat den Schwellenwert cluster.routing.allocation.disk.watermark.flood_stage überschritten. Selbst wenn der Block manuell entfernt wird, setzt Elasticsearch ihn erneut, solange die Platte noch voll ist. Große Indizes ohne Log-Rotation, nicht bereinigte Snapshots oder zu geringe Plattenkapazität sind typische Ursachen.

Lösung

Schaffe zuerst Plattenplatz: Lösche alte/nicht benötigte Indizes (DELETE /old-index), erstelle einen Snapshot und entferne Indizes oder vergrößere die Platte. Ab 7.4 wird der Block automatisch entfernt, wenn die Plattenbelegung unter das High Watermark fällt; um ihn sofort ohne Warten aufzuheben, entferne ihn manuell: PUT /_all/_settings {"index.blocks.read_only_allow_delete": null}. Lösche/archiviere als dauerhafte Lösung alte Daten automatisch mit ILM (Index Lifecycle Management) und überprüfe die Watermark-Einstellungen (disk.watermark.low/high/flood_stage).

In DBAtlas öffnen →

Weitere Einträge zu dieser Datenbank