Linux服務器上搭建Solr8.0及以上服務,非常詳細,步步到位(包含使用Tomcat服務器)

默認的Jetty服務器啓動(很簡單)

Solr服務器是一款企業級的搜索引擎,是可以支持Java連接和JSON格式等多種格式,所以作爲Java開發工程師還是需要知道的。花費了接近一天時間的配置,終於搞懂它在Linux系統上的配置。(Windows系統上配置較爲簡單)

一、檢查運行環境

在它的官網上說明了支持的最低配置:

  • JDK1.8
  • Tomcat 8.0

如果老鐵的環境爲符合要求,那就需要進行更換了。

二、下載資源

我安裝Solr服務器時的最新版是8.4.1,所以我就以8.4.1版本作爲基準版本,Linux上面能夠識別的文件是.tgz這種,不要下載成.zip壓縮文件了。

官網:http://lucene.apache.org/solr/

Solr-8.4.1的下載地址:https://www-eu.apache.org/dist/lucene/solr/8.4.1/solr-8.4.1.tgz

在Linux上用wget命令獲取資源,或者在Windows上使用下載工具下載,在通過VSftpd傳輸到Linux上。

三、解壓運行

獲取到solr-8.4.1.tgz文件後使用命令進行解壓,不同的版本後面的名字不一樣

tar -zxvf solr-8.4.1.tar

解壓後目錄

 我這裏安裝了兩種版本,所以有7.0和8.0兩。

解壓後進入到solr-8.4.1/bin的目錄下,solr-8.4.1是解壓後產生的文件夾,進入到目錄後輸入下面命令

./solr -p 8983

 然後報錯

這時編輯solr.in.sh文件,輸入/SOLR_ULIMIT_CHECKS,回車,可以搜索該內容,按I或者按insert便可以進行編輯,把前邊的#刪除,並且等於false:SOLR_ULIMIT_CHECKS=false

按ESC,輸入:wq 保存並退出

輸入命令開啓Solr

./solr start -p 8983 -force

四、連接測試

在瀏覽器的地址欄輸入:192.168.1.10:8983,便可以看到服務已經正常開啓

移植到Tomcat服務器上(較爲複雜)

我們上面是直接使用Solr自帶的Jetty服務器,這種服務器不太穩定,所以我們需要更換爲更加穩定可靠的Tomcat服務器

一、獲取解壓Tomcat

目前的Solr服務器已經不支持Tomcat 7.0版本,需要升級到8.0及以上版本,注意下載Tomcat的時候需要下載.tar.gz文件,不要下載.zip文件格式

Tomcat官網:http://tomcat.apache.org

Tomcat 9.0.30版本:https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.30.tar.gz

下載好Tomcat後執行命令解壓Tomcat

tar -zxvf apache-tomcat-9.0.30.tar.gz

 然後將剛剛解壓的文件移動到/usr/local/tomcat/apache-tomcat-9.0.30,防止隨意亂動,當然不移動也是可以的。

mv apache-tomcat-9.0.30 /usr/local/tomcat/

二、配置資源

我們需要將在Jetty服務器上運行的文件複製到Tomcat服務器上,這樣Solr就能正常在Tomcat服務器上運行

1、複製頁面

進入到Solr的/server/solr-webapp下面,將webapp複製到Tomcat下面的webapps,並且重命名爲solr

 輸入命令進行復制,記得帶上參數r,不然可能會報錯

cp -r webapp /usr/local/tomcat/apache-tomcat-9.0.30/webapps/solr8

2、複製關鍵架包

2.1  複製solr-8.4.1/dist下面的solr-dataimporthandler-8.4.1.jar、solr-dataimporthandler-extras-8.4.1.jar到Tomcat下的WEB-INF/lib下。注意不同的版本後面帶的名字是不一樣的。

cp solr-dataimporthandler*.jar /usr/local/tomcat/apache-tomcat-9.0.30/webapps/solr8/WEB-INF/lib/

2.2  進入到/server/lib/ext目錄,將裏面(下面)的所有架包複製

cp * /usr/local/tomcat/apache-tomcat-9.0.30/webapps/solr8/WEB-INF/lib/

2.3  進入到/server/lib目錄,把裏面以metrics開頭的架包全部複製

cp metrics*.jar /usr/local/tomcat/apache-tomcat-9.0.30/webapps/solr8/WEB-INF/lib/

3、複製配置文件

架包拷貝完畢後,複製配置文件,配置文件主要是log4j的

進入到/server/resources目錄,將裏面關於log4j的配置都進行復制

cp log4j*.xml /usr/local/tomcat/apache-tomcat-9.0.30/webapps/solr8/WEB-INF/classes

注意:WEB-INF下面的classes是需要手動建立,後面還可以放至IK的配置文件

4、修改web.xml

編輯Tomcat下Solr的web.xml文件,添加以下內容:

 <env-entry>
    <env-entry-name>solr/home</env-entry-name>
   <!--此處爲centos可以識別的路徑-->
    <env-entry-value>/usr/local/solr/solr-8.4.1/solr-home</env-entry-value> 
    <env-entry-type>java.lang.String</env-entry-type>
  </env-entry>

並且爲第一個 security-constraint標籤添加註釋

三、創建Solr/Home

頁面,架包和配置文件都配置完成了,這個時候我們就需要創建Solr/Home了,Solr/Home是存放Solr Core的,如果沒有配好,或者沒有配置到位,那麼都無法訪問Solr。

到solr目錄下,進入/server/solr,這裏是存放solr core的

我們只需要將裏面的全部文件複製到solr/home裏

先創建文件夾,這個文件夾可以自己隨意創建,但建議放到不可以被隨意更改的地方

 mkdir /usr/local/solr/solr-8.4.1/solr-home

 文件夾已經創建完成,那麼我們就將內容全部複製過去

cp -rf * /usr/local/solr/solr-8.4.1/solr-home

複製完成後的solr/home

 

四、啓動測試

進入到Tomcat的bin目錄

輸入以下命令運行Tomcat

./startup.sh

 成功後,打開瀏覽器

輸入:192.168.1.10:8080

注意:這裏的8080是Tomcat默認的端口號,Solr自帶的Jetty是使用8983

 

如果出現這樣的404就是solr/home的路徑沒有配到位,或者是裏面的文件缺斤少兩

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章