因為最近有一回沒一回的測試 elasticsearch,然後一直忘記去處理 elasticsearch 的 index,常常爆硬碟空間 … 每次爆就會出現 403 index read-only 的訊息,然後就要查一次有年紀了,這次乾脆筆記起來放在自己的 blog 算了
由於 elasticsearch 有對硬碟的保護機制,詳細設定可以參考官方的 Disk-based Shard Allocation 設定,預設 cluster.routing.allocation.disk.watermark.flood_stage 是超過硬碟的 95% 後就會開啟 read-only 模式,不讓新的資料寫入。
如果不知道目前 elasticsearch 的設定可以用 Dev Tools 來查,或是用 cURL 更快啦 …
GET _cluster/settings
除了先釋放掉硬碟空間以外還要把 read-only 模式解掉,指定 index 的方式:
PUT /logstash-2018-05-21/_settings { "index.blocks.read_only_allow_delete": "false" }
直接把所有 index 的 read-only 解除:
PUT _settings { "index.blocks.read_only_allow_delete": "false" }
下次還是要記得砍/備份 index 啦 …