solor快速_快速简单高效的搭建 SolrCloud 集群
網上一堆復制文件、修改文件的搭建教程,看完一頓懵,總覺得瞎復制文件不安全,容易出亂子。今天看了官方文檔做下筆記,使用內嵌的 jetty 和 自己的 zookeeper 啟動集群,希望能給網友一些幫助.
環境:最好有兩臺 ubuntu 16 的虛擬機. 只有一臺的話應該可以起兩個端口不一樣的 solr 實例, 自己折騰試試
安裝 jdk
apt update
apt install openjdk-8-jdk
安裝 zookeeper
這里只安裝單機版, zookeeper集群高可用按下不表, 主要研究 solr
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
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
安裝 solr
wget https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/6.4.2/solr-6.4.2.tgz
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_HOST 如果不是生產環境不推薦設置成主機名,我復制虛擬機實驗的時候由于主機名相同經歷了一些很深的坑.
集群啟動
./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 文件
在 節點內添加一下內容,單位是毫秒
${leaderVoteWait:10000}
總結
以上是生活随笔為你收集整理的solor快速_快速简单高效的搭建 SolrCloud 集群的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 8s yaml 配置生成_cfg4py:
- 下一篇: 文件 numpy_通过 Kaggle 入