Elasticsearch 設置節點分片上限
最近突然發現后台的日志索引不是最新的了,經排查日志服務的Elasticsearch 索引達數量上限
Elasticsearch 寫入不了更多的索引的原因
Elasticsearch 寫入不了更多的索引,經搜索發現是分片數量不足造成的,Elasticsearch 默認的分片上限1000網上一般給出的解決方法是增加這個上限,比如增加到10000:
更新節點分片上限
- 確認下是否設置過節點數量
GET /_cluster/settings
PUT /_cluster/settings
{
"transient": {
"cluster": {
"max_shards_per_node":10000
}
}
}
- 但是重啟Elasticsearch 后,配置會消失。 transient 的參數是臨時生效的,重啟后丟失
所以要使用 persistent,改進配置如下
PUT /_cluster/settings
{
"persistent": {
"cluster": {
"max_shards_per_node":10000
}
}
}
- 再查詢一次
GET /_cluster/settings
結果
{
"persistent" : {
"cluster" : {
"max_shards_per_node" : "10000"
},
"xpack" : {
"monitoring" : {
"collection" : {
"enabled" : "true"
}
}
}
},
"transient" : { }
}