1,solr 是 web 项目,需要放入到 tomcat 中.依赖多个 tomcat,让多个tomcat 之间能够通信。
需要借助 zookeeper 实现 tomcat 直接通信。结构图:
tomcat需要一主一从,需要两种,共四台主机,
主机: 192.168.2.101
192.168.2.107
192.168.2.108
192.168.2.110
2,准备zookeeper集群: zookeeper集群搭建详解
3,安装solr:solr入门
4,在192.168.2.107主机上:复制/usr/local/solr到 192.168.2.101,192.168.2.108,192.168.2.110
## 复制到远程——>yes——>密码
scp -r /usr/local/solr root@192.168.2.101:/usr/local/solr
5,修改tomcat端口: 小编默认8080
vim /usr/local/solr/tomcat/conf/server.xml
6,编辑/usr/local/solr/tomcat/bin/catalina.sh 文件:
只需在其中一个tomcat的catalina.sh文件中添加:
## -DzkHost=192.168.2.107:2181,192.168.2.108:2181,192.168.2.110:2181:
## 表示zookeeper地址
## -Dbootstrap_confdir=/usr/local/solrCluster/solrhome/solr/collection1/conf
## 表示对某个solr实例下的配置统一管理
## -Dcollection.configName=collection1
## 表示配置文件别名,一般与实例名称相同
## -DnumShards=2
## 表示分片数量
## -DreplicationFactory=2
## 表示每个分片中服务数量(2表示一主一备)
JAVA_OPTS="$JAVA_OPTS
-DzkHost=192.168.2.107:2181,192.168.2.108:2181,192.168.2.110:2181
-Dbootstrap_confdir=/usr/local/solrCluster/solrhome/solr/collection1/conf
-Dcollection.configName=collection1
-DnumShards=2
-DreplicationFactory=2"
在其它三个tomcat的catalina.sh文件中添加:
JAVA_OPTS="$JAVA_OPTS
-DzkHost=192.168.2.107:2181,192.168.2.108:2181,192.168.2.110:2181
-DnumShards=2
-DreplicationFactory=2"
7,修改/usr/local/solr/solrhome/solr/solr.xml的端口
vim /usr/local/solr/solrhome/solr/solr.xml
8,配置完成,依次启动tomcat
/usr/local/solr/tomcat/bin/startup.sh
访问:如何可以访问到如下页面,表示solr集群搭建成功。。。