提问要多花一点心思哦

ES集群多实例分片不能恢复;

Elasticsearch | 作者 OnePunchMan | 发布于2018年12月11日 | 阅读数:2916

上个礼拜将现有的ES集群进行了扩容,将ES集群节点数量由3个提升到了9个,3个master,6个data node,在扩容完成后恢复分片过程中恢复了2000多个分片,还有1000多个无法分配,通过使用 Cluster Allocation Explain API去查看不能分片原因如下:
同时也去查看了不能分片所在的数据存储目录,是有数据的。
微信图片_20181211114531.jpg
已邀请:

kennywu76 - Wood

赞同来自:

如果只是扩结点,应该只是shard做下rebalance就好了,不应该做所有shard的recovery。 你是否扩容的时候做了集群的full restart? 根据allocation api的提示,这些unassigned的分片在所有结点都找不到了。 检查一下集群的结点数量,确认所有结点都在一个集群中,没有脑裂问题。  各个结点配置的数据目录也要确认都正确。

zqc0512 - andy zhou

赞同来自:

应该 是有节点没有加入集群,检测下。看是那个索引红,看样子应该只有个别索引。
一般都是discovery.zen.ping.unicast.hosts: 这玩意的问题。

OnePunchMan - 人间有味是清欢。

赞同来自:

_cluster/health

zqc0512 - andy zhou

赞同来自:

我看下,这玩意才2个master? 好像不行吧, 按照你的描述应该是6个数据节点,3个master? 现在有7个数据节点,2个master 你检测下配置。有个数据节点搞错了,master不够。

zqc0512 - andy zhou

赞同来自:

_cluster/allocation/explain 看下这玩意描述的索引是什么原因。
 

zqc0512 - andy zhou

赞同来自:

你扩展的时候配置文件是不是复制的?date目录下面有数据,新节点提示有数据,但是找不到。
 

要回复问题请先登录注册