solrcloud叢集部署 三
六、SolrCloud叢集部署
1、基本環境
(1)、我們需要三臺伺服器,也就是三臺虛擬機器。分別是:
192.168.206.101
192.168.206.102
192.168.206.103
(2)、每臺及其上都需要部署以下環境:
JDK:基本Java執行環境 jdk1.8 Tomcat:裝載Solr服務 tomcat8.5 Solr-4.10.2:Solr服務 solr4.10 Zookeeper:對Solr雲進行管理 zookeeper3.4.5
(3)、使用工具:Xshell5 Xftp4 Vmware14
我們用的是虛擬機器,我們可以先安裝一臺,然後把虛擬機器進行復制!下面就開如單機部署:
2、軟體包上傳 、上傳到當前目錄(使用Xshell5連線centos_01)
(1)、建立安裝目錄myapp
#mkdir /usr/local/myapp
(2)、上傳tar.gz包
(3)、上傳完成
3、jdk安裝
(1)、解壓
#tar –xzvf jdk1.8.0_181.tar.gz
(2)、配置環境變數 (jdk安裝目錄/usr/local/myapp/jdk1.8.0_181)
#vim /etc/profile
最後加這二句
export JAVA_HOME=/usr/local/myapp/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH:$HOME/bin
重啟profile、不報錯就說明配置正確
#Source /etc/profile
(3)、檢視是否安裝正確:
看到上面版本不對、java執行的是系統自代的openjdk
解決:
原因是:由於在配置環境path的時候, PATH放在了PATH放在了JAVA_HOME前面, 導致先找到對應的open jdk版本
或直接刪除系統安裝的OpenJdk
編輯Hello.java 、裡面寫上一段System.out.pring("hello java");
到此jdk安裝成功
4、Tomcat安裝
(1)、解壓:
[[email protected] myapp]# tar -xzvf apache-tomcat-8.5.23.tar.gz
(2)、配置環境變數 :/usr/local/myapp/apache-tomcat-8.5.23
#Vim /etc/profile 最後加
export CATALINA_HOME=/usr/local/myapp/apache-tomcat-8.5.23
#Source /etc/profile
(3)、啟動Tomcat
[[email protected] bin]# cd /usr/local/myapp/apache-tomcat-8.5.23/bin
[[email protected] bin]# sh startup.sh && tail -f ../logs/catalina.out
(4)、關閉防iptables
訪問:http://192.168.206.101:8080
Tomcat安裝成功
5、Solr安裝
(1)、解壓:
#tar –xzvf solr-4.10.2.tgz
(2)、修改tomcat的bin目錄下的catalina.sh檔案,新增啟動的引數,指向solr的索引資料夾
#cd /usr/local/myapp/solr-4.10.2/example/solr
[[email protected] solr]# vim /usr/local/myapp/apache-tomcat-8.5.23/bin/catalina.sh
(3)、將solr-4.10.2/example/solr/webapps/solr.war複製到tomcat的webapps目錄下
[[email protected] webapps]# cd /usr/local/myapp/
[[email protected] myapp]# cp solr-4.10.2/example/webapps/solr.war apache-tomcat-8.5.23/webapps/
解壓:
#unzip -oq solr.war -d solr (請先關閉tomcat)
#rm -rf solr.war //刪除後war包
(5)、上傳啟動日誌包的jar包
(6)、上傳classes資料夾到WEB-INF裡、裡面是log4j.properties
(7)、啟動Tomcat
訪問http://192.168.206.101:8080/solr/
6、Zookeeper安裝
(1)、解壓 :
#tar –xzvf zookeeper-3.4.5.tar.gz
(2)、重新命名
(3)、修改配置檔案、複製模板檔案
[[email protected] conf]# cd zookeeper/conf
[[email protected] conf]# cp zoo_sample.cfg zoo.cfg
(4)、修改配置檔案、新增以下內容
#vim zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
#dataDir=/tmp/zookeeper
# the port at which the clients will connect
clientPort=2181
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
dataDir=/usr/local/myapp/zookeeper/data
dataLogDir=/usr/local/myapp/zookeeper/log
server.1=192.168.206.101:2888:3888
server.2=192.168.206.102:2888:3888
server.3=192.168.206.103:2888:3888
說明:
dataDir:資料目錄
dataLogDir:日誌目錄
server.1=x.x.x.x:port1:port2 指定所有zookeeper的節點資訊
server後的數字是節點ID,port1是心跳埠,port2是資料埠
(5)、建立資料目錄和日誌目錄
A:先進入zookeeper目錄
B:建立目錄
mkdir -m 755 data
mkdir -m 755 log
這樣兩個命令可以在建立目錄的同時指定資料夾的許可權
(6)、新增節點ID資訊
進入data目錄,建立檔案myid,並且寫上ID資訊:1
vi myid
插入內容:1
注意,其它節點的ID必須與配置檔案中的ID一直,分別是2和3
(7)、配置zookeeper的環境變數,可以在任何位置使用zookeeper命令
A:vi /etc/profile(修改檔案)
B:新增內容:
export ZOOKEEPER_HOME=/usr/local/myapp/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
C:重新編譯檔案:
# source /etc/profile
(8)、zookeeper啟動命令:
啟動zookeeper: zkServer.sh start
停止zookeeper: zkServer.sh stop
檢視狀態: zkServer.sh status