solr集群Server refused connection at: http://127.0.0.1:6060/solr/ego 注冊zookeepr自動使用內網ip


引導:適用於各種注冊服務,zookeeper和被注冊的服務器不在同一ip上,產生的注冊了127.0.0.1本地ip地址

 

在使用solr集群操作的時候,報了如下的錯誤

org.apache.solr.client.solrj.SolrServerException: 
No live SolrServers available to handle this request:[http://127.0.0.1:9090/solr/ego, http://127.0.0.1:6060/solr/ego, http://127.0.0.1:8080/solr/ego, http://127.0.0.1:7070/solr/ego] Caused by: org.apache.solr.client.solrj.SolrServerException: Server refused connection at: http://127.0.0.1:6060/solr/ego

 

這個究竟就是什么呢?

跟我們要配置的訪問solr集群的地址很像,但是solr的ip例如我的是169.254.18.14而且和zookeeper不在同一台服務器上

這也就是說,它們兩個的ip地址不一致,而且它訪問的還是127.0.0.1是肯定訪問不到solr的!


 

我們可以在注冊中心zookeeper里面進行查看 live_nodes 這個就是我們solr集群活着的節點注冊的地址,

 

 那么是從哪里注冊的地址?肯定是在我們的solr服務器上注冊的,那么應該傳遞過來的是solr的ip地址啊,

由此我們大家都可以想到些什么了,那就是我們的hosts文件里沒有指定我們本機的外網地址。

 

具體解決操作如下:

1.首先查看你的主機名

  vi /etc/sysconfig/network

  

 

   如果里面有HOSTNAME=xxx 那么你就記住這個xxx主機名即可,如果沒有的話,自行按照這個格式 添加一個 :HOSTNAME=xxx

 

2.修改HOSTS文件

  vi /etc/hosts

  大多數沒修改過的人看到的應該是這個樣子

 

 

 我們在下面新添加一行,

本機的ip地址 主機名
例如我的:
169.254.18.14 arebirth

修改后的樣子

 

 

讓后我們重啟所有solr集群,也就是重啟tomcate,

然后重新查看zookeeper里面的live_nodes

 

 

問題解決!

 

參考:

https://blog.csdn.net/wwwjjj_3/article/details/79756066

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM