|
一、 說明 本次分布式部署solr是在兩臺服務(wù)器(10.21.16.31和10.21.16.34)上部署5個結(jié)點,10.21.16.31服務(wù)器部署3個結(jié)點,10.21.16.34服務(wù)器部署2個結(jié)點 二、 下載需要的工具包 zookeeper-3.4.5.tar.gz,tomcat-7.0.50.tar.gz,solr-4.10.1.tgz(jdk必須是7,可以使用系統(tǒng)自帶的openJDK) 三、 添加用戶 分別在兩臺服務(wù)器上添加solr用戶 useradd solr passwd solr 四、 安裝Zookeeper 1.切換到solr用戶 su solr 2進(jìn)入zookeeper的tar包目錄:cd /home 2.解壓tar包到指定目錄:tar -zxvf zookeeper-3.4.5.tar.gz 3.進(jìn)入zookeeper的conf目錄:cd /home/zookeeper-3.4.5/conf 4.修改配置文件zoo_sample.cfg為zoo.cfg:mv zoo_sample.cfg zoo1.cfg 5.修改配置文件zoo_sample.cfg為zoo.cfg:mv zoo_sample.cfg zoo2.cfg 6.修改配置文件zoo_sample.cfg為zoo.cfg:mv zoo_sample.cfg zoo3.cfg 5.修改zoo1.cfg配置文件內(nèi)容:dataDir=/home/zookeeper-3.4.5/zk1ClientPort=2181,同時在zookeeper-3.4.5目錄下新建zk1目錄 6. 修改zoo2.cfg配置文件內(nèi)容:dataDir=/home/zookeeper-3.4.5/zk2,ClientPort=2182,同時在zookeeper-3.4.5目錄下新建zk2目錄 7. 修改zoo3.cfg配置文件內(nèi)容:dataDir=/home/zookeeper-3.4.5/zk3,ClientPort=2183,同時在zookeeper-3.4.5目錄下新建zk3目錄
6.在zoo1.cfg、zoo2.cfg、zoo3.cfg最后添加如下內(nèi)容: 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是一個數(shù)字, 表示這是第幾號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服務(wù)器主機(jī)上 9.切換到10.21.6.34服務(wù)器的solr用戶下 10..進(jìn)入zookeeper的conf目錄:cd /home/ zookeeper-3.4.5/conf 11.修改配置文件zoo1.cfg為zoo4.cfg:mv zoo1.cfg zoo4.cfg 12.修改配置文件zoo2.cfg為zoo5.cfg:mv zoo2.cfg zoo5.cfg 13.刪除zoo3.cfg: rm zoo3.cfg 14. 修改zoo4.cfg配置文件內(nèi)容:dataDir=/home/zookeeper-3.4.5/zk4ClientPort=2184,同時在zookeeper-3.4.5目錄下新建zk4目錄 15. 修改zoo2.cfg配置文件內(nèi)容: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上先后執(zhí)行./zkServer.sh start zoo1.cfg ./zkServer.sh start zoo2cfg ./zkServer.sh start zoo3.cfg 19. 在34上先后執(zhí)行./zkServer.sh start zoo4.cfg ./zkServer.sh start zoo5.cfg 由于啟動時,每個節(jié)點都會試圖去連接其它節(jié)點,因此先啟動的剛開始會連接不上其它的,導(dǎo)致日志中會包含錯誤信息,在未全啟動之前,這個屬正?,F(xiàn)象??梢杂?/span>./zkServer.sh status zoo1.cfg查看狀態(tài)。至此zookeeper安裝結(jié)束! 五、 安裝Solr 1. 進(jìn)入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. 復(fù)制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復(fù)制到/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. 修改內(nèi)容如下:(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. 修改內(nèi)容如下:<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>標(biāo)簽啟用,同時修改為 <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.xml:vi /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.sh:vi /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. 復(fù)制apache-tomcat-7.0.50_1得到apache-tomcat-7.0.50_2、apache-tomcat-7.0.50_3 22. 分別修改apache-tomcat-7.0.50_2、apache-tomcat-7.0.50_3中webapps/solr/WEB-INF/web.xml、conf/server.xml、bin/catalina.sh相對應(yīng)的值,注意:其中bin/catalina.sh應(yīng)為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. 復(fù)制data1得到data2、data3 24. 分別修改data2、data3中solr/collection1/conf/solr/solrconfig.xml、solr/solr.xml 25. 將apache-tomcat-7.0.50_2、apache-tomcat-7.0.50_3、data2、data3復(fù)制到34服務(wù)器上,分別修改為apache-tomcat-7.0.50_4、apache-tomcat-7.0.50_5、data4、data5,并做相應(yīng)對應(yīng)的更改,至此所有的配置都結(jié)束,啟動5個結(jié)點的tomcat,訪問任一結(jié)點下的solr,選擇主界面上的cloud即可看見solr分布式部署情況!
|
|
|