一尘不染

Tomcat SOLR多核设置

tomcat

我整个上午都在尝试在Apache Tomcat服务器下运行的SOLR安装上设置多个内核,但没有成功。我的solr.xml看起来像这样:

<solr persistent="false" sharedLib="lib">
  <cores adminPath="/admin/cores">
    <core name="core0" instanceDir="/multicore/core0">   
        <property name="dataDir" value="/multicore/core0/data" />
    </core>
    <core name="core1" instanceDir="/multicore/core1">
        <property name="dataDir" value="/multicore/core1/data" />
    </core>
  </cores>
</solr>

什么是正确的目录结构?我是否需要在solrconfig.xml中进行更改?


阅读 224

收藏
2020-06-16

共1个答案

一尘不染

检查您的instanceDir值是否相对于-Dsolr.solr.home。如果-
Dsolr.solr.home为’multicore’,则您的instanceDir应该仅为“ core0”。

如果将数据文件夹放在instanceDir中,则不必指定其路径:

<?xml version='1.0' encoding='UTF-8'?>
<solr persistent="true">
<cores adminPath="/admin/cores">
    <core name="core0" instanceDir="core0" />
    <core name="core1" instanceDir="core1" />
</cores>
</solr>

您不必在solrconfig.xml中设置任何内容。但是,如果您需要独立于核心位置配置处理程序,则可以使用变量$
{solr.core.instanceDir}。

更新

要为Tomcat设置solr.solr.home变量,请在启动Tomcat之前使用JAVA_OPTS环境变量:

JAVA_OPTS="-Dsolr.solr.home=multicore"
export JAVA_OPTS
tomcat/bin/catalina.sh start

确保相对于工作目录正确设置了“ multicore”。例如,如果solr.solr.home =’multicore’,则必须从“
multicore”所在的目录中启动Tomcat。

2020-06-16