Elasticsearch 设置节点分片上限
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" : { }
}