簡體   English   中英

Solrj無法從Solr Cloud示例連接到zookeeper

[英]Solrj cannot connect to zookeeper from Solr Cloud Example

我通過運行包含的例子開始Solrcloud bin/solr -e cloud ,以及在這種情況下,我成功地啟動了三個節點Solr的雲和創建gettingstarted集合:

http://localhost:8983/solr/admin/collections?action=CREATE&name=gettingstarted&numShards=3&replicationFactor=2&maxShardsPerNode=2&collection.configName=gettingstarted

我認為它帶有一個在端口9983上運行的嵌入式zookeeper,因為我在啟動雲時看到了這個輸出:

...
Starting up Solr on port 7574 using command:
bin/solr start -cloud -p 7574 -s "example/cloud/node2/solr" -z localhost:9983
Waiting up to 30 seconds to see Solr running on port 7574 [/] 
... 

但是,當我嘗試使用SolrJ連接到SolrCloud時,它失敗並顯示錯誤消息:

Exception in thread "main" org.apache.solr.common.SolrException: Cannot connect to cluster at localhost:9983/solr: cluster not found/not ready

在此輸入圖像描述

任何人都可以幫我理解這里發生了什么?

代碼失敗是因為您嘗試將CloudSolrServer指向不存在的znode。 您的zkhost未配置/solr chroot。 配置似乎存儲在根節點。

所以換行

String zkHostString = "localhost:9983/solr";

String zkHostString = "localhost:9983";

你的代碼應該有效。

這取決於你的zkHost。 如果你的zkHost包含/ solr,那么它應該是localhost:2181 / solr或localhost:9983 / solr; 否則,localhost:yourport

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM