Solr单机和集群的搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36457148/article/details/81516315

Solr 

Solr是一个开源搜索平台,用于构建搜索应用程序。 它建立在Lucene(全文搜索引擎)之上。 Solr是企业级的,快速的和高度可扩展的。 使用Solr构建的应用程序非常复杂,可提供高性能。

Solr的一些最突出的特点 -

  • Restful APIs − 要与Solr通信,并非一定需要有Java编程技能。相反,您可以使用restful服务与它通信。可使用文件格式(如xml,json和.CSV)在Solr中作为输入文档,并以相同的文件格式获取结果。
  • 全文搜索 - Solr提供了全文搜索所需的所有功能,例如令牌,短语,拼写检查,通配符和自动完成。
  • 企业准备 - 根据企业/组织的需要,Solr可以部署在任何类型的系统(大或小),如独立,分布式,云等。
  • 灵活和可扩展 - 通过扩展Java类并相应配置,可以轻松地定制Solr的组件。
  • NoSQL数据库 - Solr也可以用作大数据量级的NOSQL数据库,可以沿着集群分布搜索任务。
  • 管理界面 - Solr提供了一个易于使用,用户友好,功能强大的用户界面,使用它可以执行所有可能的任务,如管理日志,添加,删除,更新和搜索文档。
  • 高度可扩展 - 在使用Solr与Hadoop时,我们可以通过添加副本来扩展其容量。
  • 以文本为中心并按相关性排序 - Solr主要用于搜索文本文档,结果根据与用户查询的相关性按顺序传送

Solr单机版的搭建:

解压solr和tomcat

tar zxf solr-4.10.3.tgz.tgz
tar -zxf apache-tomcat-7.0.47.tar.gz

 把solr的war包放到tomcat的webapp目录下

cp solr-4.10.3/dist/solr-4.10.3.war /home/quan/taotao/apache-tomcat-7.0.47/webapps/solr.war

启动tomcat:

bin/startup.sh
tail -f logs/catalina.out

启动成功了 

把tomcat进行关闭 

bin/shutdown.sh

然后拷贝一些jar包

cp solr-4.10.3/example/lib/ext/* /home/quan/taotao/apache-tomcat-7.0.47/webapps/solr/WEB-INF/lib/

 需要配置一下solrhome

cp -r solr-4.10.3/example/solr /home/quan/taotao/solrhome

修改solr工程的web.xml

vim /home/quan/taotao/apache-tomcat-7.0.47/webapps/solr/WEB-INF/web.xml

 

再重新启动一次Tomcat

 

再浏览器上访问一下

IP地址:8080/solr

就可以有

这样子solr服务就启动完成了

Solr集群的搭建

搭建Solr集群

首先配置zookeeper集群

先搭建四个tomcat

cp -r apache-tomcat-7.0.47 /home/quan/app/solr-cloud/tomcat01
cp -r apache-tomcat-7.0.47 /home/quan/app/solr-cloud/tomcat02
cp -r apache-tomcat-7.0.47 /home/quan/app/solr-cloud/tomcat03
cp -r apache-tomcat-7.0.47 /home/quan/app/solr-cloud/tomcat04
vim tomcat01/conf/server.xml
vim tomcat02/conf/server.xml
vim tomcat03/conf/server.xml
vim tomcat04/conf/server.xml

 给不同的tomcat修改一下端口,tomcat1则改为81开始,tomcat2则82开始,以此类推

 把单机版的solr放到tomcat下

cp -r solr /home/app/solr-cloud/tomcat01/webapps/
cp -r solr /home/app/solr-cloud/tomcat02/webapps/
cp -r solr /home/app/solr-cloud/tomcat03/webapps/
cp -r solr /home/app/solr-cloud/tomcat04/webapps/

再复制四个solrhome到solr-cloud目录下 

 再修改每个solrhome下的solr.xml

注意写自己的端口号和IP地址

修改每个tomcat的solr的web.xml

修改catalina文件 

vim tomcat01/bin/catalina.sh
vim tomcat02/bin/catalina.sh
vim tomcat03/bin/catalina.sh
vim tomcat04/bin/catalina.sh

tomcat的catalinda.sh 命令

JAVA_OPTS="-DzkHost=192.168.25.130:2181,192.168.25.130:2182,192.168.25.130:2183"

 

在solr文件下的example目录下的script目下的cloud-scripts目录下有个zkcli.sh

上传配置文件至zookeeper的命令

./zkcli.sh -zkhost 192.168.25.130:2181,192.168.25.130:2182,192.168.25.130:2183 -cmd upconfig -confdir /home/quan/app/solr-cloud/solrhome01/collection1/conf/ -confname myconf

进入solr-cloud的zookeeper01中的bin目录下进行连接zookeeper

./zkCli.sh -server 192.168.25.130:2182

检查一下

myconf就是我们上传的

内容里面有我们上传的solr文件

整个搭建就完成了

开启四个Tomcat

/home/quan/app/solr-cloud/tomcat01/bin/startup.sh
/home/quan/app/solr-cloud/tomcat02/bin/startup.sh
/home/quan/app/solr-cloud/tomcat03/bin/startup.sh
/home/quan/app/solr-cloud/tomcat04/bin/startup.sh

SolrCloud创建Collection的命令

http://192.168.25.130:8180/solr/admin/collections?action=CREATE&name=collection2&numShards=2&relicationFactor=2

SolrCloud删除Collection的命令

http://192.168.25.130:8180/solr/admin/collections?action=DELETE&name=collection1

 

分片完成 

猜你喜欢

转载自blog.csdn.net/qq_36457148/article/details/81516315