SolrCloud環境配置


  Solr是一個企業級搜索服務器,對外提供Web-Service接口,用戶可以通過http請求,向搜索引擎提交xml或者json格式的數據,生成索引;然后可以通過http get請求查找,獲取返回的xml或者json等多種格式的數據。

  首先去官網下載solr安裝包,網址是:https://lucene.apache.org/solr/  進入后單擊導航欄的DOWNLOAD按鈕,稍等幾秒頁面會自動跳轉至鏡像選擇頁面,選擇相應的服務器即可,比如此時我的最終網址為:http://mirror.bit.edu.cn/apache/lucene/solr/5.4.1/當然我們要下載其他版本直接將后面的5.1.4目錄去掉,訪問上一級即可,這時候就可以選擇相應的版本了,我這里選擇solr 5.2.1的版本配置,這里我下載solr-5.2.1.tgz安裝包

  

  下載完之后上傳到服務器指定目錄,安裝solr的前提是必須配置zookeeper,當然包括一系列的主機名網絡配置等等,在配置好zookeeper的前提下,另外要關閉防火牆,一定要3台機器都先啟動zookeeper服務,這里三台主機分別為:hadoopha,hadoop1,hadoop2

  做好准備工作后就可以開始安裝了,進入solr安裝包所在的目錄,執行命令提取安裝腳本:

tar xzf solr-5.2.1.tgz solr-5.2.1/bin/install_solr_service.sh --strip-components=2

  釋放完腳本之后開始執行安裝

./install_solr_service.sh solr-5.2.1.tgz -i /opt -d /var/solr -u solr -s solr -p 8983

  其中參數的意義-i代表安裝的目錄,默認為/opt;-d指定solr寫文件的目錄,包括索引、日志、初始配置等,默認為/var/solr;-u指定solr文件和進程所屬用戶,默認為solr,在安裝過程中腳本會自動創建solr賬號;-s指定創建到系統服務的名稱,默認是solr,也就是/etc/init.d/solr可以用service來啟動;-p指定服務的監聽端口默認為8983。可以看出上面指定的參數都是默認所以安裝命令可以等效為:

./install_solr_service.sh solr-5.2.1.tgz

  稍微等待安裝成功服務就自動啟動了,接下來修改配置文件

vim /var/solr/solr.in.sh

  將SOLR_JAVA_MEM前的#去掉,默認為:SOLR_JAVA_MEM="-Xms512m -Xmx512m",這個根據自己計算機的硬件配置進行設置,我這里虛擬機內存為1G,所以這里直接默認512m沒有修改。

  

  然后同樣的方式配置ZK_HOST="hadoopha:2181,hadoop1:2181,hadoop2:2181"這里指定的是zookeeper所有節點的列表,用英文逗號分隔,如果是為了統一放在zookeeper下的指定節點中,比如/solr下,那么應該寫成:ZK_HOST="hadoopha:2181,hadoop1:2181,hadoop2:2181/solr",到運行的時候這個節點需要自己進行create

  

  然后配置SOLR_HOST="hadoopha"

  

  根據上面的注釋解釋可以知道,當單機測試時默認使用localhost;生產環境中應該使用所在集群中的名稱,因此這里應配置本機的主機名,待會其他兩個節點應該分別填寫hadoop1、hadoop2

  到這里就配置完了,保存退出,然后使用命令:/etc/init.d/solr restart啟動solr

  然后其他兩個節點進行相同的配置,最終都啟動起來

  接下來測試新建一個collection,進入其中任何一台主機,分別執行下面命令:

$ cd /opt/solr/server/scripts/cloud-scripts
$ ./zkcli.sh -zkhost localhost:2181 -cmd upconfig -confdir /opt/solr/server/solr/configsets/sample_techproducts_configs/conf -confname test

  同樣說明,如果上面指定了zookeeper的地址是/solr,那么-zkhost參數應該寫localhost:2181/solr

  好了,執行到這就完成了上傳配置操作,然后新建collection:

curl "http://192.168.1.42:8983/solr/admin/collections?action=CREATE&name=test&numShards=3&replicationFactor=3&maxShardsPerNode=3&collection.configName=test"

  或者直接用瀏覽器訪問上面的url就建立好了一個test的collection,幾台節點之間都可以創建副本從而進行同步檢索,可以通過瀏覽器訪問http://192.168.1.42:8983/solr點擊Cloud->Graph可以看到節點的分布情況

  

  到這里Solr集群就配置完畢了,可以用多種方式靈活的添加索引進行檢索等等更多的API可以參考官方wiki:http://wiki.apache.org/solr/

 


免責聲明!

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



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