繁体   English   中英

如何在 SolrCloud 上强制领导者?

[英]How to force a leader on SolrCloud?

我有一个带有外部 3 节点 Zookeeper 集成的 5 节点 SolrCloud (Solr 7.0)。 有一个名为“production”的集合被分片为 5 个分片,复制因子为 5。请参见下面的屏幕截图:

在此处输入图片说明

shard5 很长一段时间都在努力选举新的领导者,其他核心抱怨以下错误:

azsolr1 solr:2018-08-28 19:32:43.575 错误(qtp1124317168-9304)[c:production s:shard2 r:core_node9 x:production_shard2_replica_n4]等待 4000 毫秒,集合:生产切片:shard5

一一重启所有节点后(我什至重启了zookeeper节点),我没有运气选择唯一的活动副本(azsolr1)作为领导者。 然后我使用CoreAdmin API UNLOAD命令卸载了 4 个处于“关闭”状态的副本,这导致副本完全消失。

使用该设置,尝试使用Collection API FORCELEADER强制分片的领导者什么也不做。 在卸载内核之前,我也试过这个。

这是目前的状态:

在此处输入图片说明

为什么 Solr 不能只选举分片 5 的唯一活动副本作为领导者? 这不是很明显,尤其是在强制领导者进入分片之后?

假设以某种方式成功选举了领导者,我是否使用Collection API ADDREPLICA重新创建我删除的副本? 在这种情况下,我应该重用已删除副本的相同instanceDirdataDir吗? 或者我只是让它从头开始复制?

重新启动托管azsolr1唯一副本的shard5强制选举领导者。 听起来很疯狂,但就是这样。 这样做之后,我使用ADDREPLICA命令添加了其他 4 个副本。

在此处输入图片说明

我有同样的问题。

一个包含 3 个副本的集合(solr1 --> 之前是领导者,solr2,solr3)。 其中一个碎片没有领导者! 我做了这些步骤:

1 - 停止solr2solr3

2- 调用 FORCE LEADER API ( http://xx.xx.xxx.xx:8983/solr/admin/collections?action=FORCELEADER&collection=your_collection_name&shard=shard1 )

3 - after a few minutes solr1 elected as a leader

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM