我正在進行彈性搜索,並且工作正常。今天我剛剛重啓了我的遠程服務器(Ubuntu)。現在我在索引中搜索,它給了我這個錯誤。所有碎片失敗
{"error":"SearchPhaseExecutionException[Failed to execute phase [query_fetch], all shards failed]","status":503}
我也檢查了健康。狀態是紅色的。任何人都可以告訴我什麼是問題。
我正在進行彈性搜索,並且工作正常。今天我剛剛重啓了我的遠程服務器(Ubuntu)。現在我在索引中搜索,它給了我這個錯誤。所有碎片失敗
{"error":"SearchPhaseExecutionException[Failed to execute phase [query_fetch], all shards failed]","status":503}
我也檢查了健康。狀態是紅色的。任何人都可以告訴我什麼是問題。
可能在您重新啓動時,某些碎片未被恢復,從而導致羣集保持紅色。
如果您點擊:
http://<yourhost>:9200/_cluster/health/?level=shards
您可以查找紅色碎片。
我在重啓時遇到了碎片最終處於不可恢復狀態的問題。我的解決方案是完全刪除該索引。這不是每個人的理想解決方案。
這也是不錯的可視化這樣的問題,與像一個插件:
Elasticsearch Head
如果遇到在運行系統中這種明顯的索引損壞,你可以解決它通過刪除名爲segments.gen所有文件。這只是建議,而Lucene可以在沒有它的情況下正確恢復。
這個工作對我來說。
elasticsearch/config/elasticsearch.yml需要添加此行。 script.inline: on
script.indexed: on
嗨@mconlin,你如何確定在這種情況下要刪除的索引? –
使用頭部,你會看到在最後一行灰色未收回的碎片。 – mconlin