zookeeper3.4.5+tomcat7+solr-4.10.1分佈式集羣搭建

一、   說明

本次分佈式部署solr是在兩臺服務器(10.21.16.3110.21.16.34)上部署5個結點,10.21.16.31服務器部署3個結點,10.21.16.34服務器部署2個結點

二、   下載需要的工具包

zookeeper-3.4.5.tar.gz,tomcat-7.0.50.tar.gz,solr-4.10.1.tgz(jdk必須是7,可以使用系統自帶的openJDK)

三、   添加用戶

分別在兩臺服務器上添加solr用戶

useradd  solr

passwd solr

四、   安裝Zookeeper

1.切換到solr用戶     su solr

2進入zookeepertar包目錄:cd  /home

2.解壓tar包到指定目錄:tar -zxvf  zookeeper-3.4.5.tar.gz 

3.進入zookeeperconf目錄:cd /home/zookeeper-3.4.5/conf

4.修改配置文件zoo_sample.cfgzoo.cfgmv  zoo_sample.cfg  zoo1.cfg

5.修改配置文件zoo_sample.cfgzoo.cfgmv  zoo_sample.cfg  zoo2.cfg

6.修改配置文件zoo_sample.cfgzoo.cfgmv  zoo_sample.cfg  zoo3.cfg

5.修改zoo1.cfg配置文件內容:dataDir=/home/zookeeper-3.4.5/zk1ClientPort=2181,同時在zookeeper-3.4.5目錄下新建zk1目錄

6. 修改zoo2.cfg配置文件內容:dataDir=/home/zookeeper-3.4.5/zk2ClientPort=2182,同時在zookeeper-3.4.5目錄下新建zk2目錄

7. 修改zoo3.cfg配置文件內容:dataDir=/home/zookeeper-3.4.5/zk3ClientPort=2183,同時在zookeeper-3.4.5目錄下新建zk3目錄

 

6.zoo1.cfgzoo2.cfgzoo3.cfg最後添加如下內容:

server.1=10.21.16.31:2888:3888

server.2=10.21.16.31:2889:3889

server.3=10.21.16.31:2890:3890

server.4=10.21.16.34:2888:3888

server.5=10.21.16.34:2889:3889

說明:server.X=A:B:C

其中X是一個數字表示這是第幾號server.

A是該server所在的IP地址.

B配置該server和集羣中的leader交換消息所使用的端口.

C配置選舉leader時所使用的端口.

7.分別在zk1,zk2,zk3新建文件myid,zk1/myid文件值爲1,zk2/myid文件值爲2,zk3/myid文件值爲3

8.將配置到的zookeeper-3.4.5拷貝到10.21.16.34服務器主機上

9.切換到10.21.6.34服務器的solr用戶下

10..進入zookeeperconf目錄:cd  /home/ zookeeper-3.4.5/conf

11.修改配置文件zoo1.cfgzoo4.cfgmv  zoo1.cfg zoo4.cfg

12.修改配置文件zoo2.cfgzoo5.cfgmv  zoo2.cfg zoo5.cfg

13.刪除zoo3.cfg: rm  zoo3.cfg

14. 修改zoo4.cfg配置文件內容:dataDir=/home/zookeeper-3.4.5/zk4ClientPort=2184,同時在zookeeper-3.4.5目錄下新建zk4目錄

15. 修改zoo2.cfg配置文件內容:dataDir=/home/zookeeper-3.4.5/zk5ClientPort=2185,同時在zookeeper-3.4.5目錄下新建zk5目錄

16.修改zk4/myid文件值爲4,zk5/myid文件值爲5

 

 

17.分別在31和34上啓動zookeeper,切換到bin目錄下: cd /home/zookeeper-3.4.5/bin

18.1上先後執行./zkServer.sh  start zoo1.cfg     ./zkServer.sh  start zoo2cfg   ./zkServer.sh  start zoo3.cfg

19. 34上先後執行./zkServer.sh  start zoo4.cfg     ./zkServer.sh  start zoo5.cfg

由於啓動時,每個節點都會試圖去連接其它節點,因此先啓動的剛開始會連接不上其它的,導致日誌中會包含錯誤信息,在未全啓動之前,這個屬正常現象。可以用./zkServer.sh status zoo1.cfg查看狀態。至此zookeeper安裝結束!

五、   安裝Solr

1.  進入tomcat、solr的tar包目錄:cd /home/solr

2.   解壓tomcattar包: tar -zxvf tomcat-7.0.50.tar.gz

3.   重命名tomcat解壓後文件名mvtomcat-7.0.50 apache-tomcat-7.0.50_1

4.   解壓solr  tar包:tar –zxvf  solr-4.10.1.tgz

5.   solr-4.10.1/example/webapps/solr.war   到 apache-tomcat-8.0.12/webapps/目錄中  直接解壓 solr.war 或者啓動tomcat 解壓 solr.war

6.   新建data1目錄:mkdir  data1

7.   solr-4.10.1/example/solr文件夾移到data1中: mv  /home/solr/solr-4.10.1/example/solr  /home/solr/data1

8.   複製solr-4.10.1/example/lib/ext下的jar包到/home/solr/apache-tomcat-7.0.50_1/webapps/solr/WEB-INF/lib:cp  -av  /home/solr/solr-4.10.1/example/lib/ext/*.jar  /home/solr/apache-tomcat-7.0.50_1/webapps/solr/WEB-INF/lib

9.   在/home/solr/apache-tomcat-7.0.50_1/webapps/solr/WEB-INF下新建classes文件夾:mkdir  classes

10. 將solr-4.10.1/example/resources/log4j.properties複製到/home/solr/apache-tomcat-7.0.50_1/webapps/solr/WEB-INF/classes:mv  /home/solr/solr-4.10.1/example/resources/log4j.properties  /home/solr/apache-tomcat-7.0.50_1/webapps/solr/WEB-INF/classes

11. 修改/home/solr/data1/solr/collection1/conf/solr/solrconfig.xml:vi /home/solr/data1/solr/collection1/conf/solr/solrconfig.xml

12. 修改內容如下:(1)<dataDir>${solr.data.dir:/home/solr/data1/solr/collection1/data}</dataDir>

(2)<lockType>simple</lockType>

(3)<unlockonStartup>啓用,並修改爲<unlockonStartup>true</unlockonStartup>

13. 修改/home/solr/data1/solr/solr.xml:vi  /home/solr/data1/solr/solr.xml

14. 修改內容如下:<intname="hostPort">${jetty.port:8081}</int>

15. 修改/home/solr/apache-tomcat-7.0.50_1/webapps/solr/WEB-INF/web.xml:vi  /home/solr/apache-tomcat-7.0.50_1/webapps/solr/WEB-INF/web.xml

16. <env-entry>標籤啓用,同時修改爲

<env-entry>

<env-entry-name>solr/home</env-entry-name>

<env-entry-value>/home/solr/data1/solr</env-entry-value>

<env-entry-type>java.lang.String</env-entry-type>

</env-entry>

17. 修改/home/solr/apache-tomcat-7.0.50_1/conf/server.xmlvi /home/solr/apache-tomcat-7.0.50_1/conf/server.xml

18. 8080端口改爲8081

19. 修改/home/solr/apache-tomcat-7.0.50_1/bin/catalina.shvi /home/solr/apache-tomcat-7.0.50_1/bin/catalina.sh

20. JAVA_OPTS屬性啓用,同時修改爲JAVA_OPTS="$JAVA_OPTS-Dbootstrap_confdir=/home/solr/data1/solr/collection1/conf-Dcollection.configName=myconf -Dbootstrap_config=true -DzkHost=10.21.16.31:2181,10.21.16.31:2182,10.21.16.31:2183,10.21.16.34:2184-DnumShards=2"

21. 複製apache-tomcat-7.0.50_1得到apache-tomcat-7.0.50_2apache-tomcat-7.0.50_3

22. 分別修改apache-tomcat-7.0.50_2apache-tomcat-7.0.50_3webapps/solr/WEB-INF/web.xml、conf/server.xmlbin/catalina.sh相對應的值,注意:其中bin/catalina.sh應爲JAVA_OPTS="$JAVA_OPTS-Dbootstrap_confdir=/home/solr/data2/solr/collection1/conf-DzkHost=10.21.16.31:2181,10.21.16.31:2182,10.21.16.31:2183,10.21.16.34:2184,如果是apache-tomcat-7.0.50_3中,則爲JAVA_OPTS="$JAVA_OPTS -Dbootstrap_confdir=/home/solr/data3/solr/collection1/conf-DzkHost=10.21.16.31:2181,10.21.16.31:2182,10.21.16.31:2183,10.21.16.34:2184

23. 複製data1得到data2data3

24. 分別修改data2data3solr/collection1/conf/solr/solrconfig.xml、solr/solr.xml

25. apache-tomcat-7.0.50_2apache-tomcat-7.0.50_3data2data3複製到34服務器上,分別修改爲apache-tomcat-7.0.50_4apache-tomcat-7.0.50_5data4data5,並做相應對應的更改,至此所有的配置都結束,啓動5個結點的tomcat,訪問任一結點下的solr,選擇主界面上的cloud即可看見solr分佈式部署情況!

 

發佈了27 篇原創文章 · 獲贊 12 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章