tomcat下搭建SolrCloud

solr版本:4.5.1java

當前我使用三臺服務器搭建集羣分別是192.168.0.1八、192.168.0.1九、192.168.0.20,其中18爲主服務器,1九、20爲從服務器,而且在20服務器安裝zookeepernode

1、在tomcat7中部署solr4apache

一、首先從官網下載solr4.5.1版本到三臺服務器bootstrap

二、tar -zxvf solr-4.5.1.tgz (解壓solr)vim

三、cd solr-4.3.1(進入solr文件夾)tomcat

四、mkdir /home/solr (在home目錄下面建立solr文件夾,個人tomcat也是安裝在home目錄下)服務器

五、複製solr-4.5.1/example/solr 目錄下的collection1目錄和solr.xmlzoo.cfg到/home/solr目錄下socket

六、到這裏,須要用到solr的war包。在solr-4.5.1/dist/ 下有 solr-4.5.1.war包將其更更名稱爲solr.war,接下來兩種方法能夠任選其一,由於solr4中將日誌的jar包單獨分離出來放到了solr-4.5.1/example/lib/ext目錄下。因此在部署的時候須要將這些jar包加進去,加進去的方法有兩種:ide

        (a)將solr.war更改後綴名爲solr.zip,解壓後名稱爲solr將solr-4.5.1/example/lib/ext下的五個日誌包放到solr/WEB-INF/lib目錄下,從新打包成war文件。oop

        (b)不用更改solr.war,直接將五個日誌包放到tomcat的lib目錄下

我比較傾向於第一種

七、將solr.war複製到 /home/solr目錄

八、建立tomcat/conf/Catalina/localhost/solr.xml 文件,文件內容(若是目錄沒有也能夠建立):

   <Context docBase="/home/solr/solr.war" debug="0" crossContext="true" >
          <Environment name="solr/home" type="java.lang.String" value="/home/solr" override="true" />
   </Context>

九、啓動tomcat

十、輸入http://127.0.0.1:8080/solr 若是能夠正常看到solr 的目錄。則表示正確部署。在firfox下打開此目錄solr4的js對IE的支持很差。


2、安裝zookeeper

十一、官網下載zookeeper http://www.apache.org/dyn/closer.cgi/zookeeper/  本人使用 zookeeper-3.4.5 將其安裝在20服務器上

十二、tar -zxvf zookeeper-3.4.5.tar   解壓zookeeper

1三、mkdir /home/zookeeper/data  建立zookeeper數據存放目錄

1四、cd /home/zookeeper-3.4.5/conf   進入解壓後的zookeeper目錄

1五、 vim zoo.cfg  修改zookeeper配置文件 內容以下

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/zookeeper/data (此目錄用於指定zookeeper數據存放目錄。就是剛剛建立的那個目錄)
clientPort=2181

1六、修改完成後啓動zookeeper 進入bin目錄

      sudo zkServer.sh start

3、配置solr集羣

1七、先配置主服務器192.168.1.18

vim /home/tomcat/bin/catalina.sh   在圖片所示位置加入如下代碼

Solr4.3+zookeeper+tomcat 集羣部署 - 星期八 - Aprils

 

JAVA_OPTS="$JAVA_OPTS -Dbootstrap_confdir=/home/www/sfbest/solr/collection1/conf -Dcollection.configName=myconf -DzkHost=192.168.1.20:2181 -DnumShards=3"

注:其中DzkHost是用來指定zookeeper服務器的ip和端口。Dnumshareds用來指定當前集羣中分片數  confdir目錄指定全部的索引庫都從collection1索引庫中同步字段

1八、配置從服務器 19 和20

vim /home/tomcat/bin/catalina.sh 在和上圖一樣的位置加入

JAVA_OPTS="-DzkHost=10.103.14.20:2181"

1九、保存後,依次啓動tomcat服務器 在firfox中輸入網址

http://192.168.1.18:8080/solr 看到如下界面即說明集羣搭建成功,此圖片中我添加了多個索引庫。因此顯示多個。正常狀況下顯示一個collection1即表示正常

Solr4.3+zookeeper+tomcat 集羣部署 - 星期八 - Aprils

 


20、寫入後使用界面進行數據查詢獲得如下數聽說明數據正常

Solr4.3+zookeeper+tomcat 集羣部署高可用 - 星期八 - Aprils

補充點:

修改solr.xml

<solr>

  <solrcloud>

    <str name="host">${host:}</str>

    <int name="hostPort">7080</int>

    <str name="hostContext">${hostContext:solr}</str>

    <int name="zkClientTimeout">${zkClientTimeout:15000}</int>

    <bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>

<str name="zkHost">hadoop.datanode3.com:4181</str>

  </solrcloud>

  <shardHandlerFactory name="shardHandlerFactory"

    class="HttpShardHandlerFactory">

    <int name="socketTimeout">${socketTimeout:0}</int>

    <int name="connTimeout">${connTimeout:0}</int>

  </shardHandlerFactory>

</solr>


官網參考:

http://wiki.apache.org/solr/SolrCloudTomcat(在tomcat下搭建solr集羣)

http://wiki.apache.org/solr/SolrTomcat(在tomcat下搭建solr)

相關文章
相關標籤/搜索