今天發現logstash沒有任何數據寫入elasticsearch,檢查logs,發現報錯high disk watermark [10%] exceeded on [asfasdf112xzvdx][flag=smasher] free:2.8gb[9.2%], shards will be relocated away from this node.node
緣由多是機器剩餘磁盤空間不足,低於elasticsearch的shard設置,沒辦法了刪除部分沒用的數據。shell
更新2015-12-16curl
能夠在shell用命令關閉這個檢查elasticsearch
curl -XPUT localhost:9200/_cluster/settings -d '{this
"transient" : {url
"cluster.routing.allocation.disk.threshold_enabled" : falseio
}ast
}'配置
Elasticsearch使用兩個配置參數決定分片是否能存放到某個節點上。cluster.routing.allocation.disk.watermark.low:控制磁盤使用的低水位。默認爲85%,意味着若是節點磁盤使用超過85%,則ES不容許在分配新的分片。當配置具體的大小如100MB時,表示若是磁盤空間小於100MB不容許分配分片。cluster.routing.allocation.disk.watermark.high:控制磁盤使用的高水位。默認爲90%,意味着若是磁盤空間使用高於90%時,ES將嘗試分配分片到其餘節點。上述兩個配置可使用API動態更新,ES每隔30s獲取一次磁盤的使用信息,該值能夠經過cluster.info.update.interval來設置。date