Создавать новые ядра в SOLR через HTTP?
Возможно ли создать новые ядра в SOLR через HTTP? Я не могу найти окончательного ответа на то, что кажется очень простым вопросом...
Каждое ядро, которое я хочу создать, будет иметь ту же схему/конфигурацию (многопользовательская SaaS-архитектура).
Я нашел эту страницу:
Что заставляет меня думать, что это возможно, но на самом деле не совсем понятно, что каждый параметр, который я должен передать, на самом деле:
-
instanceDir - это путь к тому, где я хочу, чтобы новое ядро находилось, или где находится существующее ядро шаблона? это полный путь к файлу или относительный? относительно чего?
-
config - это полный путь к существующему файлу конфигурации? или относительный? относительно чего?
-
схема - то же, что указано выше
-
dataDir - это каталог данных существующего ядра или новый? полный путь к файлу? относительный? относительно чего? он уже должен существовать, или SOLR создаст его для меня?
Ответы
Ответ 1
Да, вы можете создавать ядра Solr через HTTP. Вы нашли правильный URL (https://wiki.apache.org/solr/CoreAdmin), чтобы посмотреть. Все указанные выше параметры являются необязательными.
instanceDir
- Это путь, в котором будет создано ваше новое ядро. Он создаст структуру папок, предоставленную вами, в разделе "/example/solr/". Если вы не предоставите этот параметр, он автоматически создаст новое ядро (с коллекцией no), например collection1.
config
- Если вы хотите иметь другой solrconfig.xml для нового ядра, укажите это. В противном случае по умолчанию будет использоваться существующая конфигурация core (collection1).
schema
- Если вы хотите иметь другой schema.xml для нового ядра, укажите это. В противном случае по умолчанию будет использоваться существующая схема ядра (collection1).
dataDir
- Это путь, в котором будут сохранены ваши новые основные данные. Он создаст структуру папок, предоставленную вами в новой папке ядра.
Если вам действительно не нужна другая конфигурация для вашего нового ядра, следуйте образцу HTTP-URL
http://localhost:8983/solr/admin/cores?action=CREATE&name=core_name&numShards=2&replicationFactor=2
Надеюсь, это поможет.
Ответ 2
У меня была такая же проблема, и я не смог заставить ее работать из описания https://wiki.apache.org/solr/CoreAdmin#CREATE
Что для меня решило, было обновление Solr 5 и использование configSet (введенное в 4.8), которое определяет общую конфигурацию solrconfig/schema. Следующий URL-адрес может использоваться для создания нескольких ядер с одинаковой конфигурацией:
http://localhost:8983/solr/admin/cores?action=CREATE&name=new_core&configSet=basic_configs
"basic_configs" - это имя configSet, которое поставляется с загрузкой Solr 5 (solr-5.0.0/server/solr/configsets/basic_config
). URL-адрес запускался после запуска сервера Solr.
https://cwiki.apache.org/confluence/display/solr/Config+Sets
Ответ 3
Скопируйте папку configsets
в var/solr/data
затем выполните
HTTP://локальный: 8983/Solr/администратор/сердечники действие = CREATE & имя = core_name & configSet = basic_configs