centos 6.8+tomcat-8.5.45 单机部署solr-7.7.2
文章目录
准备好部署环境: centos6.8 安装jdk1.8+tomcat-8.5.45
准备软件:solr-7.7.2.tgz 上传到服务器指定目录(任意),并解压
解压命令:tar -zxvf solr-7.7.2.tgz
1. 复制solr的webapp文件
将solr-7.7.2/server/solr-webapp/webapp 复制到
apache-tomcat-solr/webapp/下,重命名为solr。
注意:该条命令在tomcat下的webapps下执行的。
[root@localhost webapps]# cp -r /root/soft/solr-7.7.2/server/solr-webapp/webapp solr
复制完毕如下图所示:
2. 复制ext下jar包
复制solr-7.7.2/server/lib/ext下的所有jar,到apache-tomcat-solr/webapps/solr/WEB-INF/lib/下
[root@localhost WEB-INF]# cp -rf /root/soft/solr-7.7.2/server/lib/ext/* /usr/local/apache-tomcat-solr/webapps/solr/WEB-INF/lib/
cp: overwrite
`/usr/local/apache-tomcat-solr/webapps/solr/WEB-INF/lib/disruptor-3.4.0.jar'? yes
[root@localhost WEB-INF]#
3. 复制metrics相关jar包
复制solr-7.7.2/server/lib/下metrics相关的jar到 apache-tomcat-solr/webapps/solr/WEB-INF/lib/下。
[root@localhost apache-tomcat-solr]# cp -rf
/root/soft/solr-7.7.2/server/lib/metrics-* /usr/local/apache-tomcat-solr/webapps/solr/WEB-INF/lib/
4. 复制(修改)log4j2.xml,log4j2.console.xml
复制solr-7.7.2/server/resources下的log4j2.xml,log4j2.console.xml文件,到apache-tomcat-8.5.43/webapps/solr/WEB-INF/下的classes文件夹中。(classes文件夹如果没有需要自己创建,这是日志文件)
[root@localhost WEB-INF]# mkdir classes
[root@localhost classes]# cp -rf /root/soft/solr-7.7.2/server/resources/log4j2* /usr/local/apache-tomcat-solr/webapps/solr/WEB-INF/classes/
修改log4j2.xml中的${sys:solr.log.dir}日志路径为:…/logs/solr ,这样日志就会放到tomcat下的logs里面。
5. 创建并配置solr_home
创建solr_home:复制solr-7.7.2/server/下的solr文件夹,到任意目录处(可以重新命名,这里重命名为solr_home),例如我放在/usr/local下面
[root@localhost local]# cp -rf /root/soft/solr-7.7.2/server/solr /usr/local/solr_home
配置solr_home路径:修改apache-tomcat-solr/webapps/solr/WEB-INF/下的web.xml文件
添加配置,注意修改value里面的路径,其余的不用修改
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/usr/local/solr_home</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
取消权限控制,注释web.xml中的最后几行代码。否则项目会报403. 把下面这些代码注释掉
<!--
<security-constraint>
<web-resource-collection>
<web-resource-name>Disable TRACE</web-resource-name>
<url-pattern>/</url-pattern>
<http-method>TRACE</http-method>
</web-resource-collection>
<auth-constraint/>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>Enable everything but TRACE</web-resource-name>
<url-pattern>/</url-pattern>
<http-method-omission>TRACE</http-method-omission>
</web-resource-collection>
</security-constraint>
-->
最终结果如下:
6. 新建一个core
core就是一个索引库,像数据库中的一个表一样。
(1)在solr_home文件下建一个testcore01(名字随意取),
(2)复制solr_home/configsets/_default/下的conf文件夹,到新建的testcore01下;
(3)在testcore01下创建文件夹data(空文件加即可)
(4)在testcore01下创建core.properties文件(内容只配name=testcore01即可)
[root@localhost testcore01]# cp -rf ../configsets/_default/conf/ .
[root@localhost testcore01]# ll
total 4
drwxr-xr-x. 3 root root 4096 Oct 31 10:28 conf
[root@localhost testcore01]# mkdir data
[root@localhost testcore01]# cd data/
[root@localhost testcore01]# touch core.properties
7. 启动tomcat访问
访问http://ip:端口/solr/index.html
8. 配置中文分词
将准备好的分词器jar包放到apache-tomat/solr/WEB-INF/lib下
修改D:\tools\solr_home\core-test01\conf\managed-schema配置文件,
添加分词器配置(放在fieldType标签附近)
<fieldType name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
重启服务后,如图中验证下即可表示成功