SolrCloud是什么
参考 solrCloud官网介绍
Apache Solr 可以设置solr集群,并且有容错性和高可用性能力,这被称为SolrCloud,它的成果是供给漫衍式索引和搜索,撑持以下成果:
集中式的*配置
自动负载平衡和故障切换
ZooKeeper集成,用于集群协调和配置。
SolrCloud是灵活的漫衍式搜索和索引,没有主节点分配节点,,分片和副本。相反,Solr使用ZooKeeper来打点这些位置,具体取决于配置文件和模式。盘问和更新可以发送到任何处事器。Solr将使用ZooKeeper数据库中的信息来确定哪些处事器需要措置惩罚惩罚请求。
SolrCloud布局图
因为集中配置、协调,所以需要zookeeper。
zookeeper的集群安置安置3个zk处事器做集群 localhost:2181,localhost:2182,localhost:2183。
安置zk,参考
安置好后启动3个zk
solrCloud安置下载solr
下载后解压,定名为solr-1,进入 \solr-1\bin 目录
需要做3个操纵
1.配置zookeeper处事改削solr.in.cmd
REM set ZK_HOST= 替换为(这里是zookeeper处事地点:端口,中间用逗号离隔)
set ZK_HOST=localhost:2181,localhost:2182,localhost:2183
REM set ZK_CLIENT_TIMEOUT=15000替换为
set ZK_CLIENT_TIMEOUT=15000
2.配置solr端口改削solr.cmd,编纂文件,搜索 SOLR_PORT=8983
将端口改为8981
编纂好以后,将solr-1文件夹复制3分,分袂定名为 solr-2,solr-3,solr-4
然后分袂改削对应的solr.cmd文件,设置端口为 8982,8983,,8984
3.上传solr的core配置到zookeeper
因为需要让zk统一治理solr,所以需要让zk打点solr的配置信息。
进入\solr-1\server\scripts\cloud-scripts 目录,看到有zk的客户端指令文件
此刻需要将\solr-1\server\solr\configsets\basic_configs\conf 里的所有配置都上传到zk处事上,执行命令:
zkcli.bat -zkhost zk1:port,zk2:port... -cmd upconfig -confdir solr的conf目录 -confname solrconf
例如:
zkcli.bat -zkhost localhost:2181,localhost:2182,localhost:2183 -cmd upconfig -confdir D:\develop-env\solr-cluster\solr-1\server\solr\configsets\basic_configs\conf -confname solrconf
上传以后,检察是否告成,用zk客户端连接到任意一个zk处事器,检察 根路径
zkCli.cmd -server localhost:2181
ls /
ls /configs
如果有我们前面定名的 solrconf,说明上传告成
启动solr设置好以后,用cmd先进入solr-1的bin目录,执行命令 ,然后分袂进入 solr-2/bin solr-3/bin solr-4/bin,同样执行下面命令:
solr start
然后访谒地点 :8981/ (或8982 8983 8984)
创建solr core新建一个core,在config set选项中,能看到上传的solr配置
选择solrconf配置,numShards 和replicationFact 都填4,添加添加按钮,会提示错误:
最后一句说需要 4*4=16个分片,超过了允许的值。法则是 numShards数量 * replicationFact数量 <= solrCloud中solr处事的数量
numShards 和replicationFact 分袂填 1 1 创建 core1
numShards 和replicationFact 分袂填 4 1 创建 core1
numShards 和replicationFact 分袂填 1 4 创建 core1
numShards 和replicationFact 分袂填 2 2 创建 core1
然后检察 Cloud
黑色选中的是zk选举出来的leader
访谒其他solr,效果一样