这一次放到 mkdir /usr/local/solr-cloud 文件夹内并解压
2 复制4份tomcat实例 复制4份solrhome
cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat-1
cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat-2
cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat-3
cp -r apache-tomcat-7.0.47 /usr/local/solr-cloud/tomcat-4
cp -r solrhome /usr/local/solrhomes/solrhome-1
cp -r solrhome /usr/local/solrhomes/solrhome-2
cp -r solrhome /usr/local/solrhomes/solrhome-3
cp -r solrhome /usr/local/solrhomes/solrhome-4
3 修改每个solr的web.xml,关联它自己的solrhome
vi /usr/local/solr-cloud/tomcat-1/webapps/solr/WEB-INF/web.xml
修改为:/usr/local/solrhomes/solrhome-1vi /usr/local/solr-cloud/tomcat-2/webapps/solr/WEB-INF/web.xml
修改为:/usr/local/solrhomes/solrhome-2vi /usr/local/solr-cloud/tomcat-3/webapps/solr/WEB-INF/web.xml
修改为:/usr/local/solrhomes/solrhome-3vi /usr/local/solr-cloud/tomcat-4/webapps/solr/WEB-INF/web.xml
修改为:/usr/local/solrhomes/solrhome-4
4 修改4个tomcat的端口(端口不能冲突)
原本文件内的端口 8085 8080 8009vi /usr/local/solr-cloud/tomcat-1/conf/server.xml
修改三个端口:8185 8180 8109vi /usr/local/solr-cloud/tomcat-2/conf/server.xml
修改三个端口:8285 8280 8209vi /usr/local/solr-cloud/tomcat-3/conf/server.xml
修改三个端口:8385 8380 8309vi /usr/local/solr-cloud/tomcat-4/conf/server.xml
修改三个端口:8485 8480 8409
配置集群
1 修改每个tomcat的catalina.sh文件,让tomcat启动时找到zookeeper集群
192.168.127.135:2181,192.168.127.135:2182,192.168.127.135:2183 是 zookeeper伪集群的搭建 zookeeper集群的地址
vi /usr/local/solr-cloud/tomcat-1/bin/catalina.sh
在约236行添加如下内容:
JAVA_OPTS="-DzkHost=192.168.127.135:2181,192.168.127.135:2182,192.168.127.135:2183"vi /usr/local/solr-cloud/tomcat-2/bin/catalina.sh
添加如下内容:
JAVA_OPTS="-DzkHost=192.168.127.135:2181,192.168.127.135:2182,192.168.127.135:2183"vi /usr/local/solr-cloud/tomcat-3/bin/catalina.sh
添加如下内容:
JAVA_OPTS="-DzkHost=192.168.127.135:2181,192.168.127.135:2182,192.168.127.135:2183"vi /usr/local/solr-cloud/tomcat-4/bin/catalina.sh
添加如下内容:
JAVA_OPTS="-DzkHost=192.168.127.135:2181,192.168.127.135:2182,192.168.127.135:2183"
2 SolrCloud的配置,让solrhome知道自己对应的ip和端口号
修改solrhome-1 vi /usr/local/solrhomes/solrhome-1/solr.xml <str name="host">192.168.127.135</str> <int name="hostPort">8180</int>修改solrhome-2 vi /usr/local/solrhomes/solrhome-2/solr.xml <str name="host">192.168.127.135</str> <int name="hostPort">8280</int>修改solrhome-3 vi /usr/local/solrhomes/solrhome-3/solr.xml <str name="host">192.168.127.135</str> <int name="hostPort">8380</int>修改solrhome-4 vi /usr/local/solrhomes/solrhome-4/solr.xml <str name="host">192.168.127.135</str> <int name="hostPort">8480</int>修改的ip是当前机器的ip
3 上传solrhome下的配置文件,让zookeeper集群统一管理配置文件
上传solr的安装包 因为要使用安装包里的zkcli.sh脚本文件来上传slorhome的配置文件
cd /usr/local/solr-cloud/
rz 上传solr的tar.gz的安装包
tar -zxvf solr-4.10.3.tgz.tgz 解压solr的安装包
cd /usr/local/solr-cloud/solr-4.10.3/example/scripts/cloud-scripts/ 使用脚本执行上传solr的配置文件执行如下的上传脚本:
./zkcli.sh -zkhost 192.168.127.135:2181,192.168.127.135:2182,192.168.127.135:2183 -cmd upconfig -confdir /usr/local/solrhomes/solrhome-1/collection1/conf -confname myconf参数解释: -zkhost指定zookeeper地址列表, -cmd指定命令, upconfig上传配置的命令, -confdir配置文件所在目录, -confname配置名称
启动集群
首先需要赋予执行的权限:
chmod 755 -R /usr/local/solr-cloud/tomcat-1/
cd /usr/local/solr-cloud/tomcat-1/bin/
./startup.shchmod 755 -R /usr/local/solr-cloud/tomcat-2/
cd /usr/local/solr-cloud/tomcat-2/bin/
./startup.shchmod 755 -R /usr/local/solr-cloud/tomcat-3/
cd /usr/local/solr-cloud/tomcat-3/bin/
./startup.shchmod 755 -R /usr/local/solr-cloud/tomcat-4/
cd /usr/local/solr-cloud/tomcat-4/bin/
./startup.sh
PS:
tomcat日志:进入tomcat logs文件夹执行 tail -f catalina.out 即可查看日志(克隆一个会话)
solr日志: 把安装包的log4j放到classes中 启动的时候即可查看日志