1. 程式人生 > >zookeeper叢集-solrcloud叢集

zookeeper叢集-solrcloud叢集

本文只寫具體的搭建過程,具體原理請看官網文件。國內部落格都是基本上都是通過tomcat搭建的solr,本文是通過內部整合的jetty容器搭建。

一、zookeeper叢集搭建

1、安裝JAVA環境,版本1.8
2、下載zookeeper地址
https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/stable/
3、zookeeper叢集安裝方式自己百度吧,都差不多。
4、zookeeper一個重要的指令碼,zkCli.sh,通過它可以互動式的對zookeeper叢集裡的配置自由操作

  

二、solrcloud叢集搭建

1、solr下載

https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/5.5.5/

2、solr配置檔案

2.1)在/solr-5.5.5/server/solr/configsets下有配置檔案例子,可以複製為配置檔案 

cp -r configsets/data_driven_schema_configs test

2.2)solrconfig.xml、managed-schema、data-config.xml這個三個檔案涉及配置(https://www.cnblogs.com/zhangtianyuan/p/6946456.html)

solrconfig.xml(https://wiki.apache.org/solr/DataImportHandler#Data_Import_Request_Handler)

https://wiki.apache.org/solr/DIHQuickStart

managed-schema,欄位檔案,老版本是schema.xml,這個兩個的區別可以自行參考官方手冊,前者是通過API的方式建立欄位相對安全(此處修改後只會更改zookeeper叢集中的配置檔案,上傳之前的配置檔案是不會被修改的,這個可以在WEB頁面建立後去看未上傳之前的配置檔案是否更改,通過zookeeper來管理配置檔案,所以上述中zkCli.sh這個就很重要),後者可以通過API中新增欄位,新增之後配置檔案中也會出現,也可以在配置檔案中修改,當然前者也可以在檔案中修改(後者配置檔案會被修改是因為不是solrcloud模式。。)。  

data-config.xml這個是在solrconfig.xml中配置的查詢語句等。

2.3)從mysql中匯入資料需要新增jar包

1、從mysql官網中下載一個mysql-connector-java-5.1.25.zip壓縮包,解壓出一個mysql-connector-java-5.1.25-bin.jar包,將它分別copy到solr-5.5.5/server/lib和solr-5.5.5/server/solr-webapp/webapp/WEB-INF/lib當中(只copy到第一個路徑應該就可以)

2、將solr-dataimporthandler-5.5.5.jar和solr-dataimporthandler-extras-5.5.5.jar從solr-5.5.5/dist/資料夾下copy到solr-5.5.1/server/solr-webapp/webapp/WEB-INF/lib當中(只copy第一個檔案應該就可以)

2.4)上傳solrcloud配置檔案。

/opt/soft/solr-5.5.5/server/scripts/cloud-scripts/zkcli.sh -zkhost 192.168.60.175:2181,192.168.60.188:2181,192.168.60.177:2181  -cmd upconfig -confdir /opt/soft/solr-5.5.5/server/solr/test2/conf -confname  test2

2.5)通過cloud模式開啟solr,在/var/solr/node1下要配置solr.xml,這個可以從solr根目錄下複製。需要修改host和port用於將資訊註冊到zookeeper。

 /opt/soft/solr-5.5.5/bin/solr start -p 8983 -c -z 192.168.60.175:2181,192.168.60.188:2181,192.168.60.177:2181 -s /var/solr/node1

2.6)建立collection,這個collection就相當於非solrcloud模式下的core。

 /opt/soft/solr-5.5.5/bin/solr create -c test2 -d /opt/soft/solr-5.5.5/server/solr/test2/conf -n test2 -s 3 -rf 2 -port 8983

此時solrcloud就搞好了。是不是比tomcat簡單。