solr安装(solr与tomcat整合)

来源:互联网 发布:亚马逊prime 知乎 编辑:程序博客网 时间:2024/05/16 02:05
solr安装(solr与tomcat整合)
1.前提
1.1安装JDK7,并配置环境变量JAVA_HOME
java  -version
javac  -version



1.2安装tomcat7
1.2.1下载
http://tomcat.apache.org/

1.2.2安装
mkdir  -p   /usr/local/search/tomcat
cp   /opt/apache-tomcat-7.0.55.tar.gz      /usr/local/search/tomcat/
cd   /usr/local/search/tomcat
tar  -zxvf   apache-tomcat-7.0.55.tar.gz

1.2.3配置用户
vi   /usr/local/search/tomcat/apache-tomcat-7.0.55/conf/tomcat-users.xml

<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="manager,admin"/>


2.下载solr
http://lucene.apache.org/solr/


3.解压
mkdir   -p   /usr/local/search/solr
cp   /opt/solr-4.9.0.tgz     /usr/local/search/solr/
cd  /usr/local/search/solr
tar  -zxvf   solr-4.9.0.tgz


4.将解压后的solr中的example中的solr目录拷贝到要作为solr服务器存储数据的位置
注:solr服务器存储数据的位置主要就是solr存储core即其索引信息的位置
mkdir   -p   /usr/local/search/solr/solrhome/data
cp    -r    /usr/local/search/solr/solr-4.9.0/example/solr      /usr/local/search/solr/solrhome/data/

删除拷贝过来的core.properties   (否则collection1将作为一个solr core)
rm  -fr    /usr/local/search/solr/solrhome/data/solr/collection1/core.properties  

5.将相应的solr中的dist中的solr-4.9.0.war程序也拷贝出来
mkdir   -p   /usr/local/search/solr/solrhome/webapp
cp    /usr/local/search/solr/solr-4.9.0/dist/solr-4.9.0.war      /usr/local/search/solr/solrhome/webapp/
mv   /usr/local/search/solr/solrhome/webapp/solr-4.9.0.war    /usr/local/search/solr/solrhome/webapp/solr.war 

6.修改%SOLR_HOME%/conf文件夹中的solrconfig.xml,设置data的路径(<dataDir></dataDir>)
注意:这里%SOLR_HOME%=/usr/local/search/solr/solrhome/data/solr/collection1/
vi    /usr/local/search/solr/solrhome/data/solr/collection1/conf/solrconfig.xml 

  
  <dataDir>${solr.data.dir:/usr/local/search/solr/solrhome/data/solr/collection1/data}</dataDir>




注意:
%SOLR_HOME%目录下应包含三个目录:
  • /conf:该目录必须存在,必须包含配置文件 solrconfig.xml 和 schema.xml。其他的配置文件也要放在该目录下。  
  • /data:用于存放索引的目录,可以被处理快照( snapshots)的复制脚本( replication scripts )所使用。可以在 conf/solrconfig.xml中配置参数<dataDir></dataDir>来指定新的目录。如果该目录不存在,solr会自动创建。
  • /lib:该目录是可选的。如果该目录存在,solr会加载该目录下的所有jar包,可以使用这些jar去解析 solrconfig.xml 或 schema.xml 中指定的插件(plugins),如 Analyzers, Request Handlers等 。也可以在 conf/solrconfig.xml 中配置参数<lib></lib>来指定plugins的jar包的目录。

7.新建lib目录,并加入jar
mkdir  -p   /usr/local/search/solr/solrhome/data/solr/collection1/lib
cp  /usr/local/search/solr/solr-4.9.0/contrib/analysis-extras/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/analysis-extras/lucene-libs/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/clustering/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/dataimporthandler/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/extraction/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/langid/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/map-reduce/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/morphlines-cell/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/morphlines-core/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/uima/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/uima/lucene-libs/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/contrib/velocity/lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/dist/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/dist/solrj-lib/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/
cp  /usr/local/search/solr/solr-4.9.0/example/lib/ext/*.jar    /usr/local/search/solr/solrhome/data/solr/collection1/lib/

8.修改%SOLR_HOME%/conf文件夹中的solrconfig.xml,设置lib的路径(<lib></lib>)
vi  /usr/local/search/solr/solrhome/data/solr/collection1/conf/solrconfig.xml

<lib dir="/usr/local/search/solr/solrhome/data/solr/collection1/lib" />




9.设置相应的tomcat的context
确保/usr/local/search/tomcat/apache-tomcat-7.0.55/conf/Catalina/localhost存在,不存在的话可以启动一下tomcat,会自动创建,也可以手动创建。
touch    /usr/local/search/tomcat/apache-tomcat-7.0.55/conf/Catalina/localhost/solr.xml
vi   /usr/local/search/tomcat/apache-tomcat-7.0.55/conf/Catalina/localhost/solr.xml
<?xml version="1.0" encoding="utf-8"?>
<Context docBase="/usr/local/search/solr/solrhome/webapp/solr.war" debug="0" crossContext="true">
</Context>



10.为context设置相应的环境变量,指定solr的主目录地址
vi   /usr/local/search/tomcat/apache-tomcat-7.0.55/conf/Catalina/localhost/solr.xml

<?xml version="1.0" encoding="utf-8"?>
<Context docBase="/usr/local/search/solr/solrhome/webapp/solr.war" debug="0" crossContext="true">
  <Environment name="solr/home" type="java.lang.String" value="/usr/local/search/solr/solrhome/data/solr" override="true"/>
</Context>





11.加入log的jar到tomcat的lib目录下
cp   /usr/local/search/solr/solr-4.9.0/example/lib/ext /*.jar   /usr/local/search/tomcat/apache-tomcat-7.0.55/lib/

cp /usr/local/search/solr/solr-4.9.0/example/lib/ext/*.jar /usr/local/search/tomcat/apache-tomcat-7.0.55/lib/


12.配置web.xml
为了解压solr.war,必须启动tomcat
12.1启动tomcat
/usr/local/search/tomcat/apache-tomcat-7.0.55/bin/startup.sh

12.2停止tomcat
/usr/local/search/tomcat/apache-tomcat-7.0.55/bin/shutdown.sh

12.3配置web.xml
vi   /usr/local/search/tomcat/apache-tomcat-7.0.55/webapps/solr/WEB-INF/web.xml
 
    <env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>/usr/local/search/solr/solrhome/data/solr</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>


   

13.配置log4j
为了解压solr.war,必须启动tomcat
13.1启动tomcat
/usr/local/search/tomcat/apache-tomcat-7.0.55/bin/startup.sh

13.2停止tomcat
/usr/local/search/tomcat/apache-tomcat-7.0.55/bin/shutdown.sh

13.3配置log4j
mkdir   -p    /usr/local/search/tomcat/apache-tomcat-7.0.55/webapps/solr/WEB-INF/classes
cp     /usr/local/search/solr/solr-4.9.0/example/resources/log4j.properties       /usr/local/search/tomcat/apache-tomcat-7.0.55/webapps/solr/WEB-INF/classes/
vi   /usr/local/search/tomcat/apache-tomcat-7.0.55/webapps/solr/WEB-INF/classes/log4j.properties       
solr.log=/var/log



14.测试
14.1启动tomcat
/usr/local/search/tomcat/apache-tomcat-7.0.55/bin/startup.sh



14.2访问solr的Web-UI
http://10.41.2.82:8080/solr/admin






15.加入中文分词
15.1将中文分词的包拷贝到server的lib中

15.2将中文分词添加到FieldType中,需要指定中文词库的位置,注意该位置路径是相对于%SOLR_HOME%路劲而言的




0 0
原创粉丝点击