Zookeeper群集是否应仅分配给一个SolrCloud群集

时间:2014-04-27 01:08:41

标签: apache-zookeeper solrcloud

我想知道关于Zookeeper和SolrCloud集群的最佳策略。每个SolrCloud集群应该专用一个Zookeeper集群,还是多个SolrCloud集群可以共享一个Zookeeper集群?我想前者必须是一个非常安全的方法,但我想知道第二种选择是否也很好。

2 个答案:

答案 0 :(得分:1)

据我所知,SolrCloud使用Zookeeper共享群集状态(向上,向下节点)并在启动时加载核心共享配置(solrconfig.xml,schema.xml等)。如果您的客户端基于SolrJ的CloudSolrServer实现,那么他们将主要执行群集状态的读取。

在这方面,我认为分享同一个ZK合奏应该没问题。许多读取和少量写入,这正是ZK的设计目标。

答案 1 :(得分:1)

SolrCloud对ZooKeeper集群的负载非常小,所以如果纯粹是性能考虑,那就没问题了。如果它们都在本地网络上,那么每个SolrCloud拥有一个ZK集群可能会浪费资源。只需确保ZooKeeper配置位于单独的ZooKeeper路径中。例如,对于一个SolrCloud使用-zkHost:/,并将“path1”替换为第二个的“path2”,将solr文件放在ZooKeeper中的不同路径中,以确保它们不冲突。

请注意,ZK群集应该配置良好且健壮,因为如果它下降,那么SolrClouds都不能响应节点可用性或状态的变化。 (如果SolrCloud领导丢失,无法连接,或节点进入恢复状态等)