elasticsearch分片问题导致数据迁移
背景:logstash日志存入es中,动态创建日志索引,规则为log-年-月-日
目前集群部署了6台机器,简称node1至node6,node1-node4的配置为8C-16G-500G,node5-6配置为4C-8G-500G
在统计数据的时候分片大都在node1-node4中,node5和node6索引没有shard,所以node1-node4磁盘使用率动不动就到85%甚至90%了,我看es.yml里并没有多余配置。
求各位解惑
可能是关闭了Node5和Node6的node.data,你查一下是否开启了这个功能 ? 只有数据节点才是存数据的。有用望采纳,没解决继续留言,我再看看 ~
最终自己解决了,通过curl -XPUT "127.0.0.1:9200/biz-log-2022-09-28/_settings" -H 'Content-Type: application/json' -d'{ "index" : { "routing.allocation.total_shards_per_node" : 1 }}'
把所有的分片分配至1,写个脚本把历史的索引分片也分为1,因为没有副本,同时集群的版本不一致导致有的强制分片是失败的,再然后把模板也强制每个节点分片为1