快速簡單高效的搭建 SolrCloud 集群

2021-09-17 04:36:25 字數 2192 閱讀 2584

網上一堆複製檔案、修改檔案的搭建教程,看完一頓懵,總覺得瞎複製檔案不安全,容易出亂子。今天看了官方文件做下筆記,使用內嵌的 jetty 和 自己的 zookeeper 啟動集群,希望能給網友一些幫助.

環境:最好有兩台 ubuntu 16 的虛擬機器. 只有一台的話應該可以起兩個埠不一樣的 solr 例項, 自己折騰試試

apt udpate

apt install openjdk-8-jdk

這裡只安裝單機版, zookeeper集群高可用按下不表, 主要研究 solr

wget 

tar zxvf zookeeper-3.4.9.tar.gz

cd zookeeper-3.4.9/conf

cp zoo_sample.cfg zoo.cfg

cd ../bin/

./zkserver.sh start

wget 

tar zxvf solr-6.4.2.tgz && cd solr-6.4.2

說明:加-force是因為solr不允許使用 root 進行操作的,其他賬戶可不加

./solr start -force
啟動後可以直接訪問 ip:8983 即可看到 solr web 版的控制台

./solr create -c test_core -force
上面這條命令建立了乙個名為test_core的 solr 庫,專業名詞叫core, 集群版叫collection. 關於 solr 的術語可上網搜尋參考其他文章.

集群中的每台機器都要按照以下說明進行配置啟動

首先到 solr 安裝目錄的 bin 下,編輯 solr.in.sh 檔案

搜尋solr_host, 取消注釋, 設定成自己的 ip

搜尋solr_timezone, 取消注釋, 設定成utc+8

solr_host="10.4.81.19"

solr_timezone="utc+8"

./solr start -cloud -z 10.4.81.19:2181 -p 8983 -force
-cloud 引數告訴 solr 集群方式啟動,可簡寫為 -c

-z 引數的值換成自己 zookeeper 的位址和埠

-p 指定 solr web 啟動的埠(預設 8983)

-force 上文已經解釋過

集群中每台機器都可以使用以上命令啟動

live_nodes 節點可檢視註冊到集群中的 solr 例項

建立庫只在集群的一台機子上操作即可

./solr create_collection -c test_collection -shards 2 -replicationfactor 3 -force
-c 指定庫(collection)名稱

-shards 指定分片數量,可簡寫為 -s ,索引資料會分布在這些分片上

-replicationfactor 每個分片的副本數量

-force 上文已說明

每個分片上的副本資料是一致的,leader掛掉後如果不加shards.tolerant=true會導致庫的讀寫都不可用,待重新選舉出 leader 後會恢復, 預設3分鐘,可以配置.

修改 solr 安裝目錄的server/solr/solr.xml檔案

節點內新增一下內容,單位是毫秒

$

快速簡單刪除SVN資訊的方法

方法一 將下面文字儲存為delete svn folders.reg檔案後,注入登錄檔,可在資料夾右擊選單中找到delete svn folders.reg,單擊可以刪除本目錄下所有.svn資料夾 windows registry editor version 5.00 hkey local mac...

go 1 2 快速簡單入門

1.寫 要求開發乙個hello.go程式,可以輸出hello,world package main import fmt func main 1.go檔案的字尾是.go 2.pachage main表示該hello.go檔案所在的包是main,在go中,每個檔案都必須歸屬於乙個包。3.import ...

oracle如何快速簡單的批量造資料

以下面10條資料為例子 insert into pt help select seq pt help.nextval,1,啦啦啦 lpad rownum,7,0 rpad rownum,7,0 admin 0,1,sysdate,sysdate from dual connect by level ...