假設已經配置好了一個單core的solr服務器.
solr.xml配置文件
單核和多核主要在solr.xml配置不同.在solr/example中已經有一個名稱為multicore的文件夾里面給我們配置好了一個兩個核心的配置,分別是core1
和core2
.但是我只是想在我已經配置好的solr服務器上添加一個核心.所以需要拷貝solr.xml配置到tomcat/solr文件夾
/solr-4.10.1/example/multicore$ sudo cp solr.xml /usr/local/tomcat/solr/
在solr.xml里面和單核心不同在於節點cores下面,
<core name="core0" instanceDir="core0" />
<core name="core1" instanceDir="core1" />
.....
<core name="coren" instanceDir="coren"/>
name為core名稱,instanceDir為core的目錄.將名稱和目錄修改成對應的名稱和目錄即可.名字和目錄名稱可以使隨意的.
創建core1的目錄
比如我第一個core的名字和目錄都為collection1
,第二個打算為core1.那么solr.xml中的配置就是
<core name="collection1" instanceDir="collection1" />
<core name="core1" instanceDir="core1" />
這里我們需要一個core1的目錄,每個core目錄里面都必須包含一個data目錄,用來存儲索引文件.包括一個conf目錄,用來存儲配置文件.
conf目錄里面需要包括schema.xml
和solrconfig.xml
兩個基本的配置文件.conf目錄可以直接拷貝一個基本的配置來自己修改.
進入/tomcat/solr目錄,執行以下命令
sudo mkdir -p core1/data
cd core1
sudo mkdir conf
sudo cp -rf ../collection1/conf/* conf/ #這里我直接拷貝的collection1的配置
在gui界面添加
點擊Core Admin
->Add Core
,在new_core和instanceDir里填寫core1
,其他不變,點擊按鈕Add Core
,加載后,就可以再界面上管理添加的core了.
在回到剛剛創建的core1目錄.這里已經創建了一個core.properties
的文件.內容為:
#Written by CorePropertiesLocator
#Tue Dec 02 06:21:36 UTC 2014
name=core1
config=solrconfig.xml
schema=schema.xml
dataDir=data
重啟tomcat.如果發現一下錯誤.是由於solr.xml文件中沒有添加指定的core節點
There exists no core with name "core1"
關於solr多核的詳情wiki
Quick Review: What are Multiple Cores?