SolrCloud ZooKeeper配置更新

10

我该如何更新ZooKeeper中SolrCloud的现有配置文件?

我正在使用带有ZooKeeper 3.3.6的Solr4 Beta版本。我已经更新了一个配置文件并重启了Solr实例,该实例上传了配置文件到ZooKeeper。但是,当我从SolrCloud管理控制台检查配置文件时,我没有看到更新内容。我无法确定这是SolrCloud管理控制台的问题还是我未能成功上传配置文件到ZooKeeper。

熟悉ZooKeeper的人能否告诉我如何更新ZooKeeper中现有的配置文件,并如何验证ZooKeeper中的更改?


1
你是否使用“-Dbootstrap_conf=true”选项重启了Solr? - Saurabh Saxena
是的,这个选项是正确的。我在实例中定义了多个核心,你需要通过更改-Dcollection.configName参数上传每个配置,并且每次都要重新启动服务器。 - Ravi
3个回答

6

Solr 4提供了一些有用的脚本

cloud-scripts/zkcli.sh -cmd upconfig -zkhost 127.0.0.1:2181 -d solr/your_default_collection_with_the_config/conf/ -n config_name_userd_by_all_collections

接下来,您需要重新加载核心。


1
SolrCloud为将配置文件上传至ZK提供了两个选项。如果您在启动时有多个核心,请使用-Dbootstrap_conf=true选项。这将为所有核心上传索引配置文件。如果您只想上传一个核心的配置文件,则需要提供两个启动参数:-Dbootstrap_confdir 和 -Dcollection.configName。

-2

在该实例中,我定义了多个核心。您需要通过更改-Dcollection.configName参数上传每个配置,并且每次都要重启Solr实例。


你能否更详细地解释一下吗?每次都要将Dcollection.configname更改为新的名称吗?重启服务器是指Zookeeper还是Solr实例? - CodeTower
不,你不需要每次更改Dcollection.configname为新的名称。在我的情况下,我已经为不同的环境(如开发、测试、uat)设置了配置文件。因此,如果对开发配置进行更改,则必须将Dcollection.configname指向开发环境。重新启动服务器,我是指重新启动Solr实例而不是ZooKeeper。 - Ravi
您可以在无需重启的情况下重新加载核心。 - kamaci

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接