学习淘淘商城第三十五课(Solr的安装)

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。

       Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。

       对于淘淘商城来讲,由于网上商城的搜索频率特别高,我们很有必要把搜索单独做成一个服务,这样做的好处是可以针对该服务做扩展,做成服务集群等。其它模块都可以调用solr服务。

      下面我们来搭建一下单机版的Solr服务器。

第一步:新建一台虚拟机

       大家可以参考Vmware12最小化安装CentOS6.8这篇博客进行学习

第二步:配置静态IP以及要能上网

       大家可以参考CentOS6设置静态IP而且还可以上网这篇博客进行学习

第三步:安装vim命令

       使用命令yum install vim-enhanced进行安装

第四步:安装JDK

       由于Solr是由Java开发的,因此安装Solr需要安装JDK,大家可以参考Hadoop第二课(安装JDK)这篇博客进行安装。

第五步:安装Solr

       首先到solr-4.10.3-src.tar这个地址下载solr-4.10.3.tgz.tgz。

       下面,我们在虚拟机的/usr/local/目录下新建software目录,如下所示。

[root@itcast07 software]# mkdir /usr/local/software


        我们把solr-4.10.3.tgz.tgz上传到/usr/local/software目录下,如下所示。

[root@itcast07 software]# ll
total 63140
-rw-r--r-- 1 root root  8234674 Jul  2 23:57 apache-tomcat-7.0.47.tar.gz
-rw-r--r-- 1 root root    17510 Jul  2 23:57 fastdfs-nginx-module_v1.16.tar.gz
-rw-r--r-- 1 root root   345400 Jul  2 23:57 FastDFS_v5.05.tar.gz
-rw-r--r-- 1 root root   102378 Jul  2 23:57 libfastcommon-master.zip
-rw-r--r-- 1 root root   804164 Jul  2 23:57 nginx-1.6.2.tar.gz
-rw-r--r-- 1 root root   804164 Sep 16  2014 nginx-1.6.2.tar.gz.1
-rw-r--r-- 1 root root    12248 Jul  2 23:57 ngx_cache_purge-2.3.tar.gz
-rw-r--r-- 1 root root  1738465 Jul 31 02:10 redis-4.0.10.tar.gz
-rw-r--r-- 1 root root    91648 Sep 28  2017 redis-4.0.1.gem
-rw-r--r-- 1 root root 16678101 Aug  1 01:21 ruby-2.2.7.tar.gz
drwxr-xr-x 5 root root     4096 Aug  3 00:44 solr-4.10.3
-rw-r--r-- 1 root root 35801041 Aug  3 00:42 solr-4.10.3-src.tgz
[root@itcast07 software]# 

        下面解压solr安装包

[root@solr-server software]# tar -zxvf solr-4.10.3.tgz.tgz -C /usr/local/


         解压后到/usr/local目录下,可以看到解压后的solr-4.10.3目录。

[root@itcast07 local]# pwd
/usr/local
[root@itcast07 local]# ll
total 24072
drwxr-xr-x   9 root   root       4096 Aug  2 19:21 apache-tomcat-7.0.47
-rw-r--r--   1 root   root    8234674 Jun 26 22:20 apache-tomcat-7.0.47.tar.gz
drwxr-xr-x.  2 root   root       4096 Apr  9 06:09 bin
drwxr-xr-x.  2 root   root       4096 Sep 23  2011 etc
drwxr-xr-x   5 root   root       4096 Jul  3 00:37 fast
drwxr-xr-x.  2 root   root       4096 Sep 23  2011 games
drwxr-xr-x   4 root   root       4096 Apr  5 06:16 hadoop
drwxr-xr-x.  2 root   root       4096 Sep 23  2011 include
drwxr-xr-x   9 root   root       4096 Sep 11  2017 jdk1.8.0_144
drwxr-xr-x.  2 root   root       4096 Jul  2 23:59 lib
drwxr-xr-x.  2 root   root       4096 Sep 23  2011 lib64
drwxr-xr-x.  2 root   root       4096 Sep 23  2011 libexec
drwxr-xr-x  11 root   root       4096 Jul  3 01:00 nginx
drwxr-xr-x   9   1001   1001     4096 Jul  3 00:31 nginx-1.6.2
drwxr-xr-x   3 portal portal     4096 Apr  3 03:59 pg_install
drwxr-xr-x   4 root   root       4096 May  3 22:31 pythonjb
drwxr-xr-x   3 root   root       4096 Jul 31 02:33 redis
drwxrwxr-x   6 root   root       4096 Jun 13 04:02 redis-4.0.10
drwxr-xr-x   4 root   root       4096 Jul 31 22:08 rvm
drwxr-xr-x.  2 root   root       4096 Sep 23  2011 sbin
drwxr-xr-x.  5 root   root       4096 Mar 23 09:44 share
drwxr-xr-x   2 root   root       4096 Aug  6 02:17 software
drwxr-xr-x   5 root   root       4096 Aug  6 02:17 solr-4.10.3
drwxr-xr-x.  2 root   root       4096 Sep 23  2011 src
drwxrwxrwx  11 root   root       4096 Jun 26 19:23 zookeeper-3.4.5
-rw-r--r--   1 root   root   16310396 Jun 26 19:22 zookeeper-3.4.5.tar.gz
[root@itcast07 local]# 


        我们进入到solr-4.10.3目录下,可以看到solr的所有文件目录,如下所示。其中bin目录使用jetty容器可以启动solr服务,但是我们一般不用这个。contrib目录下存放的是扩展包,我们一般也不用。

[root@itcast07 local]# cd solr-4.10.3/
[root@itcast07 solr-4.10.3]# ll
total 996
drwxr-xr-x  2 root root   4096 Aug  6 02:50 bin
-rw-r--r--  1 root root 406208 Dec  9  2014 CHANGES.txt
drwxr-xr-x 13 root root   4096 Dec  9  2014 contrib
drwxr-xr-x  4 root root   4096 Aug  6 02:50 dist
drwxr-xr-x 17 root root   4096 Aug  6 02:50 docs
drwxr-xr-x 15 root root   4096 Aug  6 02:50 example
drwxr-xr-x  2 root root  28672 Aug  6 02:50 licenses
-rw-r--r--  1 root root  12646 Dec  1  2014 LICENSE.txt
-rw-r--r--  1 root root 501873 Dec  8  2014 LUCENE_CHANGES.txt
-rw-r--r--  1 root root  24655 Dec  1  2014 NOTICE.txt
-rw-r--r--  1 root root   5344 Dec  1  2014 README.txt
-rw-r--r--  1 root root    850 Dec  1  2014 SYSTEM_REQUIREMENTS.txt
[root@itcast07 solr-4.10.3]# 

         我们看看dist目录下的内容,如下所示,可以看到solr-4.10.3.war,这个war包结合tomcat进行使用。solr-solrj-4.10.3.jar是我们的solr客户端。

[root@itcast07 solr-4.10.3]# cd dist/
You have new mail in /var/spool/mail/root
[root@itcast07 dist]# ll
total 33856
-rw-r--r-- 1 root root 29741796 Dec  9  2014 solr-4.10.3.war
-rw-r--r-- 1 root root    17631 Dec  9  2014 solr-analysis-extras-4.10.3.jar
-rw-r--r-- 1 root root    30179 Dec  9  2014 solr-cell-4.10.3.jar
-rw-r--r-- 1 root root    51646 Dec  9  2014 solr-clustering-4.10.3.jar
-rw-r--r-- 1 root root  2852283 Dec  9  2014 solr-core-4.10.3.jar
-rw-r--r-- 1 root root   219326 Dec  9  2014 solr-dataimporthandler-4.10.3.jar
-rw-r--r-- 1 root root    37442 Dec  9  2014 solr-dataimporthandler-extras-4.10.3.jar
drwxr-xr-x 2 root root     4096 Aug  6 02:50 solrj-lib
-rw-r--r-- 1 root root   767091 Dec  9  2014 solr-langid-4.10.3.jar
-rw-r--r-- 1 root root   129327 Dec  9  2014 solr-map-reduce-4.10.3.jar
-rw-r--r-- 1 root root    24630 Dec  9  2014 solr-morphlines-cell-4.10.3.jar
-rw-r--r-- 1 root root    42228 Dec  9  2014 solr-morphlines-core-4.10.3.jar
-rw-r--r-- 1 root root   451184 Dec  9  2014 solr-solrj-4.10.3.jar
-rw-r--r-- 1 root root   199743 Dec  9  2014 solr-test-framework-4.10.3.jar
-rw-r--r-- 1 root root    39744 Dec  9  2014 solr-uima-4.10.3.jar
-rw-r--r-- 1 root root    20302 Dec  9  2014 solr-velocity-4.10.3.jar
drwxr-xr-x 4 root root     4096 Aug  6 02:50 test-framework
[root@itcast07 dist]#


         我们再看下example目录,这个目录下有一个很重要的目录,那就是solr目录,这个目录下存放都是Solr很重要的文件。

[root@itcast07 solr-4.10.3]# cd example/
[root@itcast07 example]# ll
total 104
drwxr-xr-x 2 root root  4096 Aug  6 02:50 contexts
drwxr-xr-x 2 root root  4096 Aug  6 02:50 etc
drwxr-xr-x 4 root root  4096 Aug  6 02:50 example-DIH
drwxr-xr-x 2 root root  4096 Aug  6 02:50 exampledocs
drwxr-xr-x 3 root root  4096 Dec  9  2014 example-schemaless
drwxr-xr-x 3 root root  4096 Aug  6 02:50 lib
drwxr-xr-x 2 root root  4096 Dec  1  2014 logs
drwxr-xr-x 5 root root  4096 Aug  6 02:50 multicore
-rw-r--r-- 1 root root  2992 Dec  1  2014 README.txt
drwxr-xr-x 2 root root  4096 Aug  6 02:50 resources
drwxr-xr-x 4 root root  4096 Dec  9  2014 scripts
drwxr-xr-x 4 root root  4096 Aug  6 02:50 solr
drwxr-xr-x 2 root root  4096 Dec  9  2014 solr-webapp
-rw-r--r-- 1 root root 46294 Mar 12  2013 start.jar
drwxr-xr-x 2 root root  4096 Aug  6 02:50 webapps
[root@itcast07 example]# 


第七步:安装tomcat

       大家可以到apache-tomcat7这个地址下载apache-tomcat-7.0.47.tar.gz。

       下载完后,上传到虚拟机的/usr/local/software目录下,如下所示。

[root@itcast07 software]# ll
total 174668
-rw-r--r-- 1 root root   8234674 Jul  2 23:57 apache-tomcat-7.0.47.tar.gz
-rw-r--r-- 1 root root     17510 Jul  2 23:57 fastdfs-nginx-module_v1.16.tar.gz
-rw-r--r-- 1 root root    345400 Jul  2 23:57 FastDFS_v5.05.tar.gz
-rw-r--r-- 1 root root    102378 Jul  2 23:57 libfastcommon-master.zip
-rw-r--r-- 1 root root    804164 Jul  2 23:57 nginx-1.6.2.tar.gz
-rw-r--r-- 1 root root     12248 Jul  2 23:57 ngx_cache_purge-2.3.tar.gz
-rw-r--r-- 1 root root   1738465 Jul 31 02:10 redis-4.0.10.tar.gz
-rw-r--r-- 1 root root     91648 Sep 28  2017 redis-4.0.1.gem
-rw-r--r-- 1 root root  16678101 Aug  1 01:21 ruby-2.2.7.tar.gz
-rw-r--r-- 1 root root 150010621 Aug  6 02:47 solr-4.10.3.tgz
[root@itcast07 software]# 

        先解压apache到当前目录,解压的命令:tar -zxvf apache-tomcat-7.0.47.tar.gz,  我们在/usr/local目录下新建一个solr目录

 

[root@itcast07 software]# tar -zxvf apache-tomcat-7.0.47.tar.gz
[root@itcast07 software]#  mkdir /usr/local/solr


        然后我们将解压好的的apache-tomcat-7.0.47复制一份到/usr/local/solr/目录下并重命名为tomccat,如下所示。

[root@itcast07 software]# mkdir /usr/local/solr
[root@itcast07 software]# cp -r apache-tomcat-7.0.47 /usr/local/solr/tomcat
[root@itcast07 software]# cd /usr/local/solr/
[root@itcast07 solr]# ll
total 4
drwxr-xr-x 9 root root 4096 Aug  6 18:44 tomcat
[root@itcast07 solr]# cd tomcat/
[root@itcast07 tomcat]# ll
total 116
drwxr-xr-x 2 root root  4096 Aug  6 18:44 bin
drwxr-xr-x 2 root root  4096 Aug  6 18:44 conf
drwxr-xr-x 2 root root  4096 Aug  6 18:44 lib
-rw-r--r-- 1 root root 56812 Aug  6 18:44 LICENSE
drwxr-xr-x 2 root root  4096 Aug  6 18:44 logs
-rw-r--r-- 1 root root  1192 Aug  6 18:44 NOTICE
-rw-r--r-- 1 root root  8826 Aug  6 18:44 RELEASE-NOTES
-rw-r--r-- 1 root root 16262 Aug  6 18:44 RUNNING.txt
drwxr-xr-x 2 root root  4096 Aug  6 18:44 temp
drwxr-xr-x 7 root root  4096 Aug  6 18:44 webapps
drwxr-xr-x 2 root root  4096 Aug  6 18:44 work
[root@itcast07 tomcat]#


第八步:solr与tomcat结合

       我们将solr的war包放到tomcat的webapps目录下并命名为solr.war,如下所示。

[root@itcast07 webapps]# pwd 
/usr/local/solr/tomcat/webapps
You have new mail in /var/spool/mail/root
[root@itcast07 webapps]# ll
total 29068
drwxr-xr-x 13 root root     4096 Aug  6 18:44 docs
drwxr-xr-x  7 root root     4096 Aug  6 18:44 examples
drwxr-xr-x  5 root root     4096 Aug  6 18:44 host-manager
drwxr-xr-x  5 root root     4096 Aug  6 18:44 manager
drwxr-xr-x  3 root root     4096 Aug  6 18:44 ROOT
-rw-r--r--  1 root root 29741796 Aug  6 18:46 solr.war
[root@itcast07 webapps]# 


        下面对solr.war进行解压,解压的方式是启动tomcat,如下所示。可以是使用tailf logs/catalina.out命令查看启动日志。

 
          启动tomcat之后,我们到webapps目录下查看,可以看到多了一个solr的目录,说明solr.war已经解压好了。

[root@itcast07 webapps]# ll
total 29072
drwxr-xr-x 13 root root     4096 Aug  6 18:44 docs
drwxr-xr-x  7 root root     4096 Aug  6 18:44 examples
drwxr-xr-x  5 root root     4096 Aug  6 18:44 host-manager
drwxr-xr-x  5 root root     4096 Aug  6 18:44 manager
drwxr-xr-x  3 root root     4096 Aug  6 18:44 ROOT
drwxr-xr-x  8 root root     4096 Aug  6 18:48 solr
-rw-r--r--  1 root root 29741796 Aug  6 18:46 solr.war
[root@itcast07 webapps]# 


       下面我们删掉solr.war,但是前提是先关闭掉tomcat,然后再删除(如果不关闭tomcat就删除solr.war的话,solr文件夹也会被删除),下面我们将example/lib/ext目录下的所有jar包拷贝到/usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/目录下。如下所示

cp /usr/local/solr-4.10.3/example/lib/ext/* /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/

        将example目录下的solr文件夹复制到/usr/local/solr/目录下并且重命名为solrhome,如下所示。

[root@itcast07 solr-4.10.3]# cp -r example/solr /usr/local/solr/solrhome
[root@itcast07 solr-4.10.3]# 

        下面我们需要修改/usr/local/solr/tomcat/webapps/solr/WEB-INF/目录下的web.xml文件

[root@itcast07 solr-4.10.3]# cd /usr/local/solr/tomcat/webapps/solr/WEB-INF/
[root@itcast07 WEB-INF]# ll
total 16
drwxr-xr-x 2 root root 4096 Aug  6 18:58 lib
-rw-r--r-- 1 root root 1210 Dec  1  2014 weblogic.xml
-rw-r--r-- 1 root root 7052 Dec  1  2014 web.xml
[root@itcast07 WEB-INF]# 


         我们把web.xml文件当中的下面这段配置的注释去掉,并修改<env-entry-value>的值为我们solrhome的目录,如下所示。

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


第九步:检测

       经过上面的配置,单机版的solr我们便配置完了,下面我们启动tomcat并使用tailf logs/catalina.out查看启动日志,如下所示。

[root@itcast07 bin]# ./startup.sh 
Using CATALINA_BASE:   /usr/local/solr/tomcat
Using CATALINA_HOME:   /usr/local/solr/tomcat
Using CATALINA_TMPDIR: /usr/local/solr/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.7.0_80
Using CLASSPATH:       /usr/local/solr/tomcat/bin/bootstrap.jar:/usr/local/solr/tomcat/bin/tomcat-juli.jar
[root@itcast07 bin]# tailf ../logs/catalina.out
Aug 06, 2018 7:08:12 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /usr/local/solr/tomcat/webapps/ROOT
Aug 06, 2018 7:08:12 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /usr/local/solr/tomcat/webapps/docs
Aug 06, 2018 7:08:12 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
Aug 06, 2018 7:08:12 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
Aug 06, 2018 7:08:12 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 16851 ms


        下面我们到地址栏输入http://192.168.117.106:8080/solr/#/即可访问到solr的管理页面了,如下图所示。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值