集群配置
集群中的每台机器都要按照以下说明进行配置启动
首先到 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 上文已经解释过
集群中每台机器都可以使用以上命令启动
集群创建库
./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 文件在 < solrcloud> 节点内添加一下内容, 单位是毫秒
<str name="leaderVoteWait">${leaderVoteWait:10000}</str>
来源: http://www.bubuko.com/infodetail-2744106.html