我有一个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]
我认为我对配置集如何工作有一些缺失的知识。
答案 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