У меня 3 окна vm, на всех установлен solr 5.4.0 и zookeeper 3.4.6; две службы запускаются автоматически при запуске виртуальной машины. После перезагрузки vms solr не отвечает правильно, выдает error500:
HTTP ERROR 500 Проблема с доступом к / solr /. Причина: Ошибка сервера ... SolrException: Ошибка обработки запроса. CoreContainer либо не инициализирован, либо завершает работу.
Проверяя журналы, я также видел эту ошибку:
o.a.s.c.SolrCore null: org.apache.solr.common.SolrException: Ошибка при загрузке solr.xml из zookeeper
При попытке остановить службы zookeeper и solr на всех виртуальных машинах и запустить заново (перед запуском zookeeper на всех виртуальных машинах и после solr) иногда требуется, чтобы solr начал работать правильно; в других случаях в разделе пользовательского интерфейса solrcloud мы замечаем, что узлы находятся в неактивном состоянии (написано коричневым)
Я перечисляю процедуры, которые я запускаю для создания кластера solr:
initLimit = 5
syncLimit = 2
dataDir = C: / zookeeper / data
clientPort = 2181
server.1 = zknode1: 2888: 3888
server.2 = zknode2: 2888: 3888
server.3 = zknode2: 2888: 3888
-c -z "zknode1: 2181, zknode2: 2181, zknode3: 2181" -f
Я создаю коллекцию на основе существующей конфигурации на solr, а не в облаке
solr.cmd create_collection -c mycoll -d C: \ conf \ mycoll \ conf -n mycoll -shards 1 -replicationFactor 3
на каждом узле solr видно, что создается папка mycoll_shard1_replicaX, где X изменяется на каждом узле (1,2,3). Все запросы работают, даже импорт данных, но если я перезапускаю узлы, обнаруживаю проблему, описанную выше. Я ошибаюсь в создании коллекции, или это известная ошибка?
Предполагается, что, возможно, zookeeper не запускается до попытки инициализации solr. Используя зависимости nssm, вы можете сделать службу solr зависимой от службы zookeeper. https://nssm.cc/usage
Я решил проблему, установив запуск служб в этом режиме