solr (1) solr的安装

教程

https://www.w3cschool.cn/solr_doc/solr_doc-ltzn2fm4.html

官方文档 https://lucene.apache.org/solr/guide/7_5/solr-tutorial.html

单机版安装

1.环境

版本solr   7.5   下载地址  http://mirror.bit.edu.cn/apache/lucene/solr/7.5.0/

tomcat   8.5    必须是8.0以上版本

jdk  9    必须是jdk1.8以上版本

centos   7.0

2. 与tomcat整合

解压

unzip solr-7.5.0.zip  -C  /usr/local

将解压后的solr-7.5.0.zip中的webapp 复制到tomcat的webapps下,并修改名称

cp -r  /usr/local/solr-7.5.0/server/solr-webapp/webapp  /usr/local/tomcat-9.0.12/webapps/solr

将solr的一些配置文件复制到家目录并改名

cp  -r  /usr/local/solr-7.5.0/server/solr    /data/solrhome

删除configsets

rm  -rf   configsets

复制配置文件并重命名collection1

cp  -r  /usr/local/solr-7.5.0/example/example-DIH/solr/solr      /data/solrhome/collection1

打开collection1下的core.properties

vi  core.properties  (名字colletion1随便取)

创建classes文件夹

mkdir  /usr/local/tomcat-9.0.12/webapps/solr/WEB-INF/classes

复制日志配置文件

cp /usr/local/solr-7.5.0/server/resources/*   /usr/local/tomcat-9.0.12/webapps/solr/WEB-INF/classes  (有用的只有log4j2.xml)

 cp  /usr/local/solr-7.5.0/server/lib/*.jar   /usr/local/tomcat-9.0.12/webapps/solr/WEB-INF/lib

 cp  /usr/local/solr-7.5.0/server/lib/ext/*.jar   /usr/local/tomcat-9.0.12/webapps/solr/WEB-INF/lib

备注:其中的jetty包没啥用也可以删除

将如下两个包也复制到lib下

 cp  /usr/local/solr-7.5.0/dist/solr-dataimporthandler*.jar  /usr/local/tomcat-9.0.12/webapps/solr/WEB-INF/lib

注释权限并添加家目录

没注释会显现如下错误403没有权限

<env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>/data/solrhome</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>

 关闭防火墙

systemctl stop firewalld

打开界面

3. 安装ik分词器

下载 http://search.maven.org/#search%7Cga%7C1%7Ccom.github.magese   solr7.5

在/data/solrhome/collection1/conf目录下的managed-schema文件中添加如下配置

 <fieldType name="text_ik" class="solr.TextField">
                <analyzer type="index">
                        <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
                        <filter class="solr.LowerCaseFilterFactory"/>
                </analyzer>
                <analyzer type="query">
                        <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
                        <filter class="solr.LowerCaseFilterFactory"/>
                </analyzer>
 </fieldType>

原配置基本语义的解释

type :类型   indexed 索引  stored  存储   required 是否必须    multivalued 是否可分割  name 名称

 

4. solcloud集群搭建

安装3个zookeeper,组成zookeeper集群,见zookeeper

端口分别是2181,2182,2183

集群与选举端口

server.1=192.168.1.128:2881:3881
server.2=192.168.1.128:2882:3882
server.3=192.168.1.128:2883:3883

 上传solrcloud配置文件

在solr-7.5.0/server/scripts/cloud-scripts  下有./zkcli.sh这个命令,必须保证zookeeper集群是开着的
./zkcli.sh -zkhost 192.168.1.128:2181, 192.168.1.128:2182, 192.168.1.128:2183 -cmd upconfig -confdir /usr/local/solrcloud/solrhome1/collection1/conf -confname myconf

 进入zookeeper中使用zkCli.sh

然后查看是否上传成功

4个tomcat,单机版的安装见上述

端口分别是8081,80828078,8087

需要修改的地方

修改配置solrhome的solr.xml,换成相应的端口名与地址

 

换成相应的地址(位置单机版中有)

添加配置tomcat的bin的catalina.sh

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

 

 修改/solrhome1/collection1中的core.properties

#节点名称,每个core不一样
coreNodename=c1
#分片名称,每个保持不一样
shard=s1

zookeeper使用自定义脚本启动,然后tomcat全部启动,登录界面

原文地址:https://www.cnblogs.com/gg128/p/9916002.html