是否可以通过HTTP在SOLR中创建新内核?我似乎无法找到一个看似简单问题的明确答案......
我想要创建的每个核心都具有相同的架构/配置(多租户SaaS架构)。
我找到了这个页面:
这让我觉得这是可能的,但具体说明我应该传递的每个参数的具体内容并不是很清楚:
instanceDir - 这是我想要新核心驻留的路径,还是现有“模板”核心所在的路径?它是一个完整的文件路径,还是一个相对的路径?相对于什么?
config - 这是现有配置文件的完整文件路径吗?还是一个亲戚?相对于什么?
架构 - 与上述相同
dataDir - 这是现有核心的数据目录,还是新核心的数据目录?完整文件路径?有关系吗?相对于什么?它是否已经存在,或者SOLR会为我创建吗?
答案 0 :(得分:9)
是的,您可以通过HTTP创建Solr核心。您已找到要查看的正确网址(https://wiki.apache.org/solr/CoreAdmin)。以上所有参数都是可选的。
instanceDir
- 这是创建新核心的路径。它将在“ / example / solr / ”下创建由您提供的文件夹结构。如果您不提供此参数,它将自动创建一个新核心(收集号为no),如 collection1 。
config
- 如果您想为新核心提供不同的 solrconfig.xml ,请提供此信息。否则,默认情况下它将共享现有的核心(collection1)配置。
schema
- 如果您想为新核心提供不同的 schema.xml ,请提供此信息。否则,默认情况下它将共享现有的核心(collection1)模式。
dataDir
- 这是存储新核心数据的路径。它将在新的核心文件夹下创建您提供的文件夹结构。
如果您真的不想为新核心配置一些不同的配置,请按照示例HTTP URL
进行操作http://localhost:8983/solr/admin/cores?action=CREATE&name=core_name&numShards=2&replicationFactor=2
希望这会有所帮助。
答案 1 :(得分:6)
我遇到了完全相同的问题而我无法通过https://wiki.apache.org/solr/CoreAdmin#CREATE上的描述使其发挥作用
为我解决的是更新到Solr 5并使用定义共享solrconfig / schema的configSet(在4.8中引入)。以下URL可用于创建具有相同配置的多个核心:
http://localhost:8983/solr/admin/cores?action=CREATE&name=new_core&configSet=basic_configs
' basic_configs'是Solr 5下载(solr-5.0.0/server/solr/configsets/basic_config
)附带的configSet的名称。启动Solr服务器后,URL即可开箱即用。
https://cwiki.apache.org/confluence/display/solr/Config+Sets
答案 2 :(得分:0)
将configsets
文件夹复制到var/solr/data
,然后执行
http://localhost:8983/solr/admin/cores?action=CREATE&name=core_name&configSet=basic_configs