Solr

Solrcloud:重新啟動後出現錯誤 500

  • October 8, 2018

我有 3 個 vm 視窗,它們都安裝了 solr 5.4.0 和 3.4.6 zookeeper;這兩個服務在 vm 啟動時自動啟動。重新啟動 vms 後,solr 沒有正確響應,它給了我 error500:

HTTP 錯誤 500 訪問 /solr/ 時出現問題。原因:伺服器錯誤… SolrException:處理請求時出錯。CoreContainer 要麼未初始化,要麼正在關閉。

檢查日誌我也看到了這個錯誤:

oascSolrCore null:org.apache.solr.common.SolrException:從zookeeper載入solr.xml時出錯

嘗試停止所有 vm 上的 zookeeper 和 solr 服務並重新啟動(在所有 vm 上啟動 zookeeper 之前和 solr 之後),有時需要 solr 才能正常工作;其他時候,通過 UI 的 solrcloud 部分,我們注意到節點處於關閉狀態(寫成棕色)

我列出了我為創建集群 solr 而執行的過程:

  • 創建文件夾“zookeeper/data”並通過以這種方式添加zookeeper節點來更改zoo.cfg文件

初始化限制 = 5

同步限制=2

dataDir = C:/zookeeper/數據

客戶端埠=2181

server.1=zknode1:2888:3888

server.2=zknode2:2888:3888

server.3=zknode2:2888:3888

  • 在 zookeeper\data 的節點(1、2、3)上創建了具有相應編號的 myid 文件
  • 通過 NSSM,我創建了啟動腳本 zookeeper\bin\zkServer.cmd 的 zk 服務,以及使用以下參數啟動 solr\bin\solr.cmd 的 solr 服務

-c -z “zknode1:2181,zknode2:2181,zknode3:2181” -f

我基於 solr 而不是 cloud 上的現有配置創建了一個集合

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) 上發生變化。查詢所有工作,甚至數據導入,但如果我重新啟動節點,發現上面寫的問題。我在創建集合時出錯了,或者這是一個已知的錯誤?

我通過在這些模式下設置服務啟動解決了這個問題

  • 動物園管理員:自動
  • solr:自動(延遲啟動)

建議在 solr 嘗試初始化之前可能沒有啟動 zookeeper。使用nssm依賴可以讓solr服務依賴zookeeper服務。 https://nssm.cc/usage

引用自:https://serverfault.com/questions/757903