您好,登錄后才能下訂單哦!
在linux上搭建Solr集群的方法有哪些?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
什么是SolrCloud
SolrCloud(solr 云)是Solr提供的分布式搜索方案,當(dāng)你需要大規(guī)模,容錯(cuò),分布式索引和檢索能力時(shí)使用 SolrCloud。當(dāng)一個(gè)系統(tǒng)的索引數(shù)據(jù)量少的時(shí)候是不需要使用SolrCloud的,當(dāng)索引量很大,搜索請(qǐng)求并發(fā)很高,這時(shí)需要使用SolrCloud來(lái)滿足這些需求。
SolrCloud是基于Solr和Zookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作為集群的配置信息中心。
Solr集群的系統(tǒng)架構(gòu)
需要實(shí)現(xiàn)的solr集群架構(gòu)
Zookeeper作為集群的管理工具。
1、集群管理:容錯(cuò)、負(fù)載均衡。
2、配置文件的集中管理
3、集群的入口
需要實(shí)現(xiàn)zookeeper 高可用。需要搭建集群。建議是奇數(shù)節(jié)點(diǎn)。需要三個(gè)zookeeper服務(wù)器。 投票選舉 需要超過半數(shù)以上
搭建solr集群需要7臺(tái)服務(wù)器。
搭建偽分布式:
需要三個(gè)zookeeper節(jié)點(diǎn)
需要四個(gè)tomcat節(jié)點(diǎn)。
建議虛擬機(jī)的內(nèi)容1G以上。
一.在linux上安裝zookeeper集群 https://blog.csdn.net/lushizhuo9655/article/details/109135460
二.在linux上搭建solr集群
Solr集群的搭建
根據(jù)單機(jī)版的操作安裝好solr和對(duì)應(yīng)的業(yè)務(wù)域 https://blog.csdn.net/lushizhuo9655/article/details/109033855
第一步:創(chuàng)建四個(gè)tomcat實(shí)例。每個(gè)tomcat運(yùn)行在不同的端口。8180、8280、8380、8480
cd /root cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat01 cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat02 cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat03 cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat04 cd /usr/local/solr-cloud/ ll
第二步:部署solr的war包。把單機(jī)版的solr工程復(fù)制到集群中的tomcat中。(記得每個(gè)tomcat的端口要記得修改 每個(gè)tomcat改三個(gè)端口)
cp -r ../solr/tomcat/webapps/solr/ tomcat01/webapps/ cp -r ../solr/tomcat/webapps/solr/ tomcat02/webapps/ cp -r ../solr/tomcat/webapps/solr/ tomcat03/webapps/ cp -r ../solr/tomcat/webapps/solr/ tomcat04/webapps/ vim tomcat01/conf/server.xml vim tomcat02/conf/server.xml vim tomcat03/conf/server.xml vim tomcat04/conf/server.xml
第三步:為每個(gè)solr實(shí)例創(chuàng)建一個(gè)對(duì)應(yīng)的solrhome。使用單機(jī)版的solrhome復(fù)制四份。
cp -r ../solr/solrhome/ solrhome01 cp -r ../solr/solrhome/ solrhome02 cp -r ../solr/solrhome/ solrhome03 cp -r ../solr/solrhome/ solrhome04
第四步:需要修改solr的web.xml文件。把solrhome關(guān)聯(lián)起來(lái)。
vim tomcat01/webapps/solr/WEB-INF/web.xml vim tomcat02/webapps/solr/WEB-INF/web.xml vim tomcat03/webapps/solr/WEB-INF/web.xml vim tomcat04/webapps/solr/WEB-INF/web.xml
改成對(duì)應(yīng)的02 03 04
第五步:配置solrCloud相關(guān)的配置。每個(gè)solrhome下都有一個(gè)solr.xml,把其中的ip及端口號(hào)配置好。
vim solrhome01/solr.xml vim solrhome02/solr.xml vim solrhome03/solr.xml vim solrhome04/solr.xml
第六步:修改tomcat/bin目錄下的catalina.sh 文件,關(guān)聯(lián)solr和zookeeper。
cd tomcat01/bin/ ll vim catalina.sh
把此配置添加到配置文件中:
JAVA_OPTS="-DzkHost=192.168.0.245:2181,192.168.0.245:2182,192.168.0.245:2183"
cd .. cd .. vim tomcat02/bin/catalina.sh vim tomcat03/bin/catalina.sh vim tomcat04/bin/catalina.sh
配置文件都加上那一句配置的代碼
第七步:讓zookeeper統(tǒng)一管理配置文件。需要把solrhome/collection1/conf目錄上傳到zookeeper。上傳任意solrhome中的配置文件即可。
cd solrhome01 ll cd collection1/conf
使用工具上傳配置文件:/root/solr-4.10.3/example/scripts/cloud-scripts/zkcli.sh
cd /root/solr-4.10.3/example/scripts/cloud-scripts/
配置文件的文件夾上傳到zookeeper
./zkcli.sh -zkhost 192.168.0.245:2181,192.168.0.245:2182,192.168.0.245:2183 -cmd upconfig -confdir /usr/local/solr-cloud/solrhome01/collection1/conf -confname myconf
查看zookeeper上的配置文件:
使用zookeeper目錄下的bin/zkCli.sh命令查看zookeeper上的配置文件:
./zkCli.sh
退出:
quit
使用以下命令連接指定的zookeeper服務(wù):
./zkCli.sh -server 192.168.0.245:2183
此時(shí)表明,配置文件已經(jīng)上傳到zookeeper上了
第八步:?jiǎn)?dòng)每個(gè)tomcat實(shí)例。要包裝zookeeper集群是啟動(dòng)狀態(tài)。
cd .. cd .. ll vim start-tomcat-all.sh
/usr/local/solr-cloud/tomcat01/bin/startup.sh /usr/local/solr-cloud/tomcat02/bin/startup.sh /usr/local/solr-cloud/tomcat03/bin/startup.sh /usr/local/solr-cloud/tomcat04/bin/startup.sh
chmod u+x start-tomcat-all.sh ./start-tomcat-all.sh
看是否起來(lái)了
tail -f /usr/local/solr-cloud/tomcat01/logs/catalina.out tail -f /usr/local/solr-cloud/tomcat02/logs/catalina.out tail -f /usr/local/solr-cloud/tomcat03/logs/catalina.out tail -f /usr/local/solr-cloud/tomcat04/logs/catalina.out
第九步:訪問集群 http://192.168.0.245:8180/solr 發(fā)現(xiàn)比單機(jī)的多了個(gè)cloud
第十步:創(chuàng)建新的Collection進(jìn)行分片處理。 直接在瀏覽器
http://192.168.0.245:8180/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2
第十一步:刪除不用的Collection。
http://192.168.0.245:8180/solr/admin/collections?action=DELETE&name=collection1
看完上述內(nèi)容,你們掌握在linux上搭建Solr集群的方法有哪些的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。