solr與zookeeper搭建solrcloud分布式索引服務實例


概述  

  由於機器台數的問題,本次搭建的是一台zookeeper服務器多台solr服務器的形式。其他知識這里不再啰嗦,可以參與:http://wiki.apache.org/solr/SolrCloud

  注:"x"表示實際信息。

預先准備

  1.下載solr4.1.0的壓縮包:http://labs.mop.com/apache-mirror/lucene/solr/4.1.0/solr-4.1.0.tgz
  2.三台機器,假定ip分別為:192.168.0.1,192.168.0.2,192.168.0.3
  3.准備好java jdk1.6及以上版本和tomcat6.x及以上版本

搭建服務

  A.搭建192.168.0.1服務

  1. 解壓tomcat6.x包,將端口設置為:8081.
  2. 解壓solr-4.1.0.tgz包,將x/solr-4.1.0/example/solr復制到x/tomcat6.x/目錄內。將x/solr-4.1.0/example/webapps/solr.war,復制到tomcat的webapps目錄內。並修改solr/WEB-INF/web.xml內容:
    <env-entry>
         <env-entry-name>solr/home</env-entry-name>
         <env-entry-value>x/tomcat6.x/</env-entry-value>
         <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>
  3. 修改tomcat6.x/bin目錄內的catalina.sh,在頭部分添加如下代碼:
    #   JAVA_OPTS       (Optional) Java runtime options used when the "start",
    #                   "stop", or "run" command is executed.
    JAVA_OPTS="-Dbootstrap_confdir=x/tomcat6.x/solr/collection1/conf -Dcollection.configName=clusterconf -Djetty.port=8081 -Dhost=192.168.0.1 -DzkRun -DzkHost=localhost:9081 -DnumShards=1"

    當然這-Djetty.port=8081 -Dhost=192.168.0.1配置也可以在x/tomcat6.x/solr/solr.xml文件設置。

  B.搭建192.168.0.2服務

  1. 復制192.168.0.1的tomcat6.x到本台機器上
  2. 修改solr/WEB-INF/web.xml內容
  3. 修改tomcat6.x/bin目錄內的catalina.sh,在頭部分添加如下代碼:
    #   JAVA_OPTS       (Optional) Java runtime options used when the "start",
    #                   "stop", or "run" command is executed.
    JAVA_OPTS="-Djetty.port=8082 -DzkHost=192.168.0.1:9081"

  C.搭建192.168.0.3服務

  1. 復制192.168.0.1的tomcat6.x到本台機器上
  2. 修改solr/WEB-INF/web.xml內容
  3. 修改tomcat6.x/bin目錄內的catalina.sh,在頭部分添加如下代碼:
    #   JAVA_OPTS       (Optional) Java runtime options used when the "start",
    #                   "stop", or "run" command is executed.
    JAVA_OPTS="-Djetty.port=8083 -DzkHost=192.168.0.1:9081"

啟動服務

  分別啟動三台機器的tomcat服務。

查看結果

  輸入URL:http://192.168.0.1:8081/solr/#/~cloud,查看solr管理后台.

簡單應用

  在leader節點上創建一些索引數據:

cd exampledocs
java -Durl=http://192.168.0.1:8081/solr/collection1/update -jar post.jar ipod_video.xml
java -Durl=http://192.168.0.1:8081/solr/collection1/update -jar post.jar monitor.xml
java -Durl=http://192.168.0.1:8081/solr/collection1/update -jar post.jar mem.xml

  所以Replica節點都同步獲得索引數據,輸入URL:http://192.168.0.2:8082/solr/collection1/select?q=*:*&wt=xml,可進行測試.

    最要命的是表達能力,不知道讀者是否明白其中意思?


免責聲明!

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



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