Site icon Mr. 沙先生

elasticsearch index 出現 403 read-only 的處理方式

因為最近有一回沒一回的測試 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 啦 …

Exit mobile version