Я имею, тратят все утро попытку настроить несколько ядер на установке SOLR, которая работает под сервером Tomcat Apache без успеха. Мой 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?
Убедитесь, что ваши значения instanceDir относятся к -Dsolr.solr.home. Если -Dsolr.solr.home - «многоядерный», тогда ваш 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}.
ОБНОВЛЕНИЕ
Чтобы установить переменную solr.solr.home с помощью Tomcat, используйте переменную среды JAVA_OPTS перед запуском Tomcat:
JAVA_OPTS="-Dsolr.solr.home=multicore"
export JAVA_OPTS
tomcat/bin/catalina.sh start
Убедитесь, что "multicore" правильно установлен относительно рабочего каталога. Например, если solr.solr.home = 'multicore', вам необходимо запустить Tomcat из каталога, в котором находится «multicore».