Solr:在SolrCloud设置中使用configSet添加核心不起作用

时间:2016-04-19 10:06:55

标签: solr apache-zookeeper solrj solrcloud solrconfig

我有一个SolrCloud(v5.2)设置,其中2个不同的核心[users, docs]正常工作。

现在,我需要能够动态添加与已存在的docs核心配置相同的新核心。我不想复制配置(我试过它工作正常),因为我需要实际共享synonyms.txt和其他一些不断变化的文件。

我认为我需要" configsets"但我不能让他们工作。我上传了"模板"使用此命令conf:

sh zkcli.sh -zkhost zk1:2181 -cmd upconfig -confname template -confdir /home/user1/template/conf

然后我尝试使用template配置集创建一个新核心,如下所示:

http://solr1:8983/solr/admin/cores?action=CREATE&configSet=template&name=test1

但是我收到了这个错误:

Error CREATEing SolrCore 'test1': Unable to create core [test1] Caused by: Could not find configName for collection test1 found:[users, docs, template, .system]

我认为我对配置集如何工作有一些缺失的知识。

2 个答案:

答案 0 :(得分:0)

configset目录的默认路径是$ SOLR_HOME / configsets,即在我的示例中是/opt/solr/solr-5.4.0/server/solr/configsets。可以在solr.xml中配置此路径。

因此,如果您使用configset的默认路径,那么

sh zkcli.sh -zkhost zk1:2181 -cmd upconfig -confname template -confdir /home/user1/template/conf

应替换为

sh zkcli.sh -zkhost zk1:2181 -cmd upconfig -confname template -confdir /home/user1/......../../../configsets

只需将此路径/home/user1/......../../../configsets替换为configsets的正确路径

希望这有帮助

答案 1 :(得分:0)

您可以共享Core的配置,只需创建一个新的Collection。对配置的任何更改都将影响所有集合。

使用此调用创建新集合:

http://solr1:8983/solr/admin/collections?action=CREATE&name=test1&collection.configName=docs&numShards=1