У меня есть кластер Solrcloud с 2 узлами, настроенный с одним осколком и одной репликой. Теперь я добавил узел на новый сервер, зарегистрированный у тех же трех смотрителей зоопарка. Узел отображается внутри дерева графического интерфейса администратора Solrcloud в разделе «живые узлы». Однако он не находится в графическом представлении и показывает 0 доступных ядер, в то время как другой интерфейс администратора показывает доступное ядро.
Что мне нужно сделать, чтобы добавить узел, несмотря на его регистрацию? Я использую эту команду запуска:
bin/solr start -cloud -s server/solr2 -p 8983 -z zk1:2181,zk1:2182,zk1:2183 -noprompt
В журналах zookeeper я обнаружил, что встроенный zookeeper будет работать только в «автономном режиме», что означает, что он не будет создавать кластер или ансамбль. Ваш кластер с двумя узлами на самом деле представляет собой кластер с одним узлом (zookeeper), где Solr второго узла использует для запуска zookeeper первого узла. Это немного вводит в заблуждение, потому что веб-интерфейс Solr сообщает, что два узла (Solr) активны. Не путайте это с активностью двух узлов (Zookeeper).
В документации Solr прямо говорится, что «использование встроенного zookeeper в продакшене не поддерживается», поэтому они ограничивают его. Я думаю, что это немного бесполезно, если вы можете упростить установку с помощью встроенного zookeeper, тогда ура! Но увы нет. Я даже пытался настроить zoo.cfg для работы в облачном режиме, но Solr, похоже, каким-то образом обходит этот параметр.
Лучше всего просто запустить свой собственный zookeeper (очень легко настроить ... просто не пробуйте ничего продвинутого, пока вы не будете следовать руководству слово в слово, чтобы получить победу).
Надеюсь, это поможет. Меня это самого свело с ума.