淘淘商城系列——Solr的安装

来源:互联网 发布:sql正则 编辑:程序博客网 时间:2024/05/16 05:51

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。
对于淘淘商城来讲,由于网上商城的搜索频率特别高,我们很有必要把搜索单独做成一个服务,这样做的好处是可以针对该服务做扩展,做成服务集群等,其它模块都可以调用Solr服务。
下面我将告诉大家如何在Linux系统上搭建单机版的Solr服务器。

新建一台虚拟机

关于如何新建一台虚拟机,我之前已写过一篇文章,如果大家还有不会的,可以翻阅使用VMware安装CentOS6.7这篇文章。

安装JDK

由于Solr是由Java开发的,因此安装Solr之前需要安装JDK,关于如何在Linux系统上安装JDK,我的Linux系统上安装JDK这篇文章已经说的很清楚了,我不想再多费口舌。

安装Solr

下载Solr

首先我们肯定是要下载Solr的压缩包的,我下载的是solr-4.10.3.tgz.tgz,如下图所示。
这里写图片描述

把Solr的压缩包上传到Linux系统

怎样将文件上传到Linux系统上,我想我已经说的要吐了,所以这儿不再浪费口舌。与以往一样,我把solr-4.10.3.tgz.tgz上传到了用户主目录(即root)下,如下图所示。
这里写图片描述

解压缩Solr安装包

使用tar zxf solr-4.10.3.tgz.tgz命令将Solr的压缩包解压缩到用户主目录(即root)下。
这里写图片描述
解压完之后,可以看到解压后的solr-4.10.3目录。我们进入到solr-4.10.3目录下,可以看到Solr的所有文件目录,如下图所示。其中bin目录使用jetty容器可以启动Solr服务,但是我们一般不用这个,contrib目录下存放的是扩展包,我们一般也不用。
这里写图片描述
我们看看dist目录下的内容,如下图所示,可以看到solr-4.10.3.war,这个war包结合tomcat进行使用,solr-solrj-4.10.3.jar是我们的Solr客户端。
这里写图片描述
我们再看下example目录,这个目录下有一个很重要的目录,那就是solr目录,这个目录下存放的都是Solr很重要的文件。
这里写图片描述

安装tomcat

首先我们肯定是要下载tomcat的压缩包的,我下载的是apache-tomcat-7.0.47.tar.gz,如下图所示。
这里写图片描述
下载完之后,将其上传到Linux系统上,仍与以往一样,我把apache-tomcat-7.0.47.tar.gz上传到了用户主目录(即root)下,如下图所示。
这里写图片描述
接着使用tar zxf apache-tomcat-7.0.47.tar.gz命令将tomcat的压缩包解压缩到用户主目录(即root)下,解压完之后,即可看到解压后的apache-tomcat-7.0.47目录。
这里写图片描述
紧接着我们在/usr/local目录下新建一个solr目录,如下图所示。
这里写图片描述
然后我们将解压好的的apache-tomcat-7.0.47目录复制一份到/usr/local/solr/目录下并重命名为tomcat,如下图所示,进入/usr/local/solr/tomcat目录之后即可看到我们非常熟悉的东西了。
这里写图片描述

Solr与tomcat结合

我们将Solr的war包放到tomcat的webapps目录下并命名为solr.war,如下图所示,进入/usr/local/solr/tomcat/webapps目录之后即可看到solr.war包。
这里写图片描述
下面对solr.war进行解压,解压的方式是启动tomcat,并且可以是使用tail -f logs/catalina.out命令查看启动日志,如下图所示。
这里写图片描述
提示:tail:从文件尾部读取文件内容信息;-f:循环读取。
启动tomcat之后,我们到webapps目录下查看,可以看到多了一个solr的目录,说明solr.war已经解压好了,如下图所示。
这里写图片描述
下面我们删掉webapps目录下的solr.war,但是前提是先关闭掉tomcat,然后再删除(如果不关闭tomcat就删除solr.war的话,solr文件夹也会被删除),如下图所示。
这里写图片描述
下面我们将solr-4.10.3/example/lib/ext/目录下的所有jar包拷贝到/usr/local/solr/tomcat/webapps/solr/WEB-INF/lib目录中,如下图所示。
这里写图片描述
紧接着将solr-4.10.3/example目录下的solr文件夹复制到/usr/local/solr/目录下并且重命名为solrhome,如此一来,/usr/local/solr/目录下面就会有solrhome和tomcat这两个目录了,如下图所示。
这里写图片描述
下面我们需要修改/usr/local/solr/tomcat/webapps/solr/WEB-INF目录下的web.xml文件,我们要把web.xml文件当中用红框标注的这段配置的注释去掉,并修改<env-entry-value>的值为我们solrhome的目录,如下图所示。
这里写图片描述

检测Solr是否安装成功

经过上面的配置,单机版的Solr我们便配置完了,下面我们启动tomcat并使用tail -f logs/catalina.out命令查看启动日志,如下图所示。
这里写图片描述
我们要想通过在浏览器地址栏中输入http://虚拟机ip地址:8080这样的url地址来访问tomcat,需要设置Linux的防火墙,之前我已讲过,因为Linux的防火墙默认只对外开放了一个22的端口,其他的端口都没打开。所以你需要把它的防火墙设置一下,让它对tomcat的8080端口号放行。 具体做法是:使用cd ~命令切换到当前用户主目录(即root)下,然后使用如下命令来设置Linux的防火墙,使其对tomcat的8080端口号放行。

/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT/etc/rc.d/init.d/iptables save

其中,/etc/rc.d/init.d/iptables save命令是将这个设置永久地保存到Linux的防火墙中。
接下来,我们到浏览器地址栏中输入http://虚拟机ip地址:8080/solr/即可访问到Solr的管理页面了,如下图所示。
这里写图片描述

原创粉丝点击