Solr 安装
1.单机版
1.1准备工作
1)linux上安装jdk:jdk-8u11-linux-x64.tar.gz
配置环境变量:
export JAVA_HOME=/usr/local/jdk
export
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
1)安装tomcat:apache-tomcat-7.0.47.tar.gz
1.2安装Solr
安装Solr:solr-4.10.3.tgz.tgz
Solr 是由两个部分构成:
1) Solr 的 web 服务
1.1.将 solr 的 war 包,拷贝到 tomcat 的 webapps 目录下
1.2.启动tomcat,以解压war包 ,查看启动日志检查是否解压war包
1.3.添加服务中依赖的jar包
<!--注意:在tomcat关闭状态下删除war-->
jar包位置:/root/temp/solr-4.10.3/example/lib/ext 复制 到/usr/local/tomcat/webapps/solr/WEB-INF/lib/
2) Solr 的索引库
2.1将/root/temp/solr-4.10.3/example/solr(即solr基本的索引库示例)拷贝到/usr/local/solrhome , 需要手动创建solrhome目录
<!--此为索引库的绝对路径-->
2.2配置索引库位置
solr所在服务(tomcat)中的: /usr/local/tomcat/webapps/solr/WEB-INF下,配置web.xml:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/usr/local/solrhome/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
完成后,启动tomcat ,访问:http://192.168.190.131:8080/solr可以通过solr管理页面对solr进行操作。
2.集群版
2.1准备工作
1)安装zookeeper集群:详情zookeeper安装文档
2)安装tomcat实例,修改端口8080-8083
3)清空单机版solr数据,作为集群节点使用,将solrhome拷贝4份至solrcloud目录下
2.2安装流程:
1)创建solrcloud作为集群目录
2)将tomcat实例以及zookeeper拷贝到solrcloud目录中
3)修改所有solr服务中指向solr索引库的路径,参照单机版
4)把 任意solrhome 中的配置文件上传到 zookeeper 集群。使用 zookeeper 的客户端上传
在/root/temp/solr-4.10.3/example/scripts/cloud-scripts下执行:
./zkcli.sh -zkhost 192.168.70.147:2181, 192.168.70.147:2182, 192.168.70.147:2183 -cmd
upconfig -confdir /usr/local/solrcloud/solrhome1/solr/collection1/conf -confname myconf
5) 修改所有solrhome 下的 solr.xml 文件,指定当前实的 例运行的 ip地址及端口号。
6)修改所有solr的tomcat的bin目录下catalina.sh文件加入:
JAVA_OPTS="-DzkHost=192.168.70.147:2181,192.168.70.147:2182,192.168.70.14 7:2183"
配置完毕,可以启动tomcat 测试。
2.3逻辑索引库分片
创建一个新的 collection,并分两片,每片是一主一备。 使用以下命令创建: http://192.168.70.147:8080/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2
删除原始库:http://192.168.70.147:8080/solr/admin/collections?action=DELETE&name=collection1
3.solr索引库配置项
3.1 solr home 目录结构 3.1.1 solr.xml 配置 solr 集群 3.1.2 collection1 (索引库:solr core ) 3.1.3 core.properties 设置索引库的名称 3.1.4 data 存放索引 3.1.5 conf 索引库的配置目录 3.1.5.1 schema.xml: 配置字段以及字段类型 3.2 索引库配置
3.2.1schema.xml 是用来定义索引数据中的域的,包括域名称,域类型,域是否索引,是否分词,是否存储等等。
3.2.5 配置中文分词器(IK Analyzer) 3.2.5.1 上传中文分词器 jar 包,以及配置文件 3.2.5.2 将中文分词器的配置文件以及jar 包拷贝到Solr 所对应的目
<!--cp ext_stopword.dic IKAnalyzer.cfg.xml mydict.dic /usr/local/tomcat/webapps/solr/WEB-INF/classes/-->
Jar 包放到 WEB-INF/lib 目录下。
<!--cp IKAnalyzer2012FF_u1.jar /usr/local/tomcat/webapps/solr/WEB-INF/lib-->
注:classes目录需要手动创建
3.2.5.3 在schema.xml 中 配置中文分词器 <fieldType name="text_ik" class="solr.TextField"> <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/> </fieldType>