文章目錄
- 獨立伺服器模式(單機)
-
- 架構
- 建立一個新執行個體
- Solr主目錄結構
- core核心目錄結構
- SolrCloud分布式叢集模式
-
- 架構
- SolrCloud啟動方式
- 内嵌的zookeeper
-
- 搭建SolrCloud叢集
- 建立和删除集合
- 送出資料到集合中
- 獨立zookeeper
獨立伺服器模式(單機)
适用于資料規模不大的場景
架構
獨立伺服器模式就是第二篇講到的單機安裝的模式,如下架構:

說明:
- 每個solr伺服器執行個體(啟動的一個solr伺服器程序)都有一個solr主目錄。啟動伺服器執行個體時須為執行個體指定主目錄(預設為:安裝預設下的server/solr目錄)。
- solr主目錄中存放該伺服器執行個體托管的核心。
- 一個solr伺服器執行個體中可托管多個核心。
- 每個主目錄下必須有solr.xml才能啟動執行個體!!!
啟動和停止solr服務執行個體指令:
- bin/solr start –s xxxdir –p port
- bin/solr stop –p port
建立一個新執行個體
以windows下進行講解。
第一步:在D盤建立Solr主目錄D:\test\solr
第二步:将solr安裝的預設主目錄下的solr.xml(我這裡為D:\Program Files\solr-7.5.0\server\solr)拷貝到D:\test\solr下
第三步:然後在指令視窗輸入如下指令
solr.cmd -s D:\test\solr -p 9999
成功啟動如下:
檢視狀态:solr status
Solr主目錄結構
core核心目錄結構
SolrCloud分布式叢集模式
适用于資料量大、高并發、高可用、實時響應的場景。
架構
SolrCloud模式下的索引将會被分割成多個分片存儲到叢集的不同節點上,而且每個分片又有備份,也會被存儲在不同的節點上。每個節點通過zookeeper注冊中心關聯起來。
- 獨立伺服器模式下,索引被稱為核心
- SolrCloud模式下,索引被稱為集合,而核心存儲的是集合分片的備份
SolrCloud啟動方式
内嵌的zookeeper
如果使用内嵌的zookeeper的話,則需要先啟動内嵌的zookeeper的第一個solrNode節點服務,如下指令:
- 注意:啟動該執行個體後,對應的zookeeper執行個體端口為:solr執行個體端口+1000
然後其他節點的啟動,如下指令:
搭建SolrCloud叢集
我們來在本地進行叢集的演練。
第一步:建立兩個節點主目錄
D:\test\solrCloud\node1
D:\test\solrCloud\node2
第二步:拷貝配置檔案
- 将solr安裝目錄下(D:\Program Files\solr-7.5.0\server\solr)的預設配置檔案solr.xml和zoo.cfg拷貝到node1下
- 将solr安裝目錄下(D:\Program Files\solr-7.5.0\server\solr)的預設配置檔案solr.xml拷貝到node2下
第三步:啟動,先啟動有zoo.cfg的節點,再啟動其他節點
solr.cmd -c -s D:\test\solrCloud\node1 -p 7001
solr.cmd -c -s D:\test\solrCloud\node2 -p 7002 -z localhost:8001
第四步:通路任意一台節點,檢視界面和獨立伺服器的差異
http://localhost:7001
http://localhost:7002
建立和删除集合
#建立集合1
bin/solr create -c collection01 -d _default -shards 2 -replicationFactor 2 -p 7001
#建立集合2
bin/solr create -c collection02 -d sample_techproducts_configs -shards 2 -replicationFactor 2 -p 7001
#删除集合
bin/solr delete -c collection01 -p port
- collection01:集合名稱,随便取
- _default:使用solr安裝後預設的資料
- -shards 2:表示該集合分片數為2
- -replicationFactor 2:表示每個分片數都有2個備份
- -p 7001:表示指定哪一個solr執行個體,SolrCloud任意指定即可,都會同步到其他節點
建立完畢後,登陸控制台檢視:
送出資料到集合中
#Linux/Mac指令
bin/post -c collection01 -p 7001 example/exampledocs/*
#Windows指令,進入solr安裝主目錄
java -jar -Dc=collection01 -Dport=7001 -Dauto example\exampledocs\post.jar example\exampledocs\* -p 7001
登陸web控制台,檢視分片已經有文檔數量了:
獨立zookeeper
若使用獨立的zookeeper,需要先啟動zookeeper。
這裡暫不介紹。