在zookeeper集群的基础上,搭建伪solrCloud集群
伪集群的搭建:将solrCloud搭建到同一台机器上。
准备工作
1 将在window中部署的单机版solr上传到服务器(虚拟机)中
这一次放到 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-1 vi /usr/local/solr-cloud/tomcat-2/webapps/solr/WEB-INF/web.xml
修改为:/usr/local/solrhomes/solrhome-2 vi /usr/local/solr-cloud/tomcat-3/webapps/solr/WEB-INF/web.xml
修改为:/usr/local/solrhomes/solrhome-3 vi /usr/local/solr-cloud/tomcat-4/webapps/solr/WEB-INF/web.xml
修改为:/usr/local/solrhomes/solrhome-4
4 修改4个tomcat的端口(端口不能冲突)
原本文件内的端口 8085 8080 8009 vi /usr/local/solr-cloud/tomcat-1/conf/server.xml
修改三个端口:8185 8180 8109 vi /usr/local/solr-cloud/tomcat-2/conf/server.xml
修改三个端口:8285 8280 8209 vi /usr/local/solr-cloud/tomcat-3/conf/server.xml
修改三个端口:8385 8380 8309 vi /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.sh chmod 755 -R /usr/local/solr-cloud/tomcat-2/
cd /usr/local/solr-cloud/tomcat-2/bin/
./startup.sh chmod 755 -R /usr/local/solr-cloud/tomcat-3/
cd /usr/local/solr-cloud/tomcat-3/bin/
./startup.sh chmod 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中 启动的时候即可查看日志

在zookeeper集群的基础上,搭建伪solrCloud集群的更多相关文章
- 沉淀,再出发——在Hadoop集群的基础上搭建Spark
在Hadoop集群的基础上搭建Spark 一.环境准备 在搭建Spark环境之前必须搭建Hadoop平台,尽管以前的一些博客上说在单机的环境下使用本地FS不用搭建Hadoop集群,可是在新版spark ...
- 在zookeeper集群的基础上,搭建solrCloud
1 将在window中部署的单机版solr上传到node-01中 cd /export/software/ rz 选择资料中的solr.zip进行上传(此zip就是 solr的简单部署:在tomca ...
- 在 Ubuntu 上搭建 Hadoop 分布式集群 Eclipse 开发环境
一直在忙Android FrameWork,终于闲了一点,利用空余时间研究了一下Hadoop,并且在自己和同事的电脑上搭建了分布式集群,现在更新一下blog,分享自己的成果. 一 .环境 1.操作系统 ...
- hadoop搭建伪分布式集群(centos7+hadoop-3.1.0/2.7.7)
目录: Hadoop三种安装模式 搭建伪分布式集群准备条件 第一部分 安装前部署 1.查看虚拟机版本2.查看IP地址3.修改主机名为hadoop4.修改 /etc/hosts5.关闭防火墙6.关闭SE ...
- hadoop(二)搭建伪分布式集群
前言 前面只是大概介绍了一下Hadoop,现在就开始搭建集群了.我们下尝试一下搭建一个最简单的集群.之后为什么要这样搭建会慢慢的分享,先要看一下效果吧! 一.Hadoop的三种运行模式(启动模式) 1 ...
- 超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群
超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群 ps:本文的步骤已自实现过一遍,在正文部分避开了旧版教程在新版使用导致出错的内容,因此版本一致的情况下照搬执行基本不会有大错误. ...
- odoo10.0在odoo12.0环境的基础上搭建环境
在前边的文章中,讲述了如何搭建12.0的环境,现由业务的需要需要在此基础上搭建基于python2.7的10.0版本. 第一步,安装python2.7 sudo apt- 第二步,安装python-de ...
- centos7搭建伪分布式集群
centos7搭建伪分布式集群 需要 centos7虚拟机一台: jdk-linux安装包一个 hadoop-2.x安装包1个(推荐2.7.x) 一.设置虚拟机网络为静态IP(最好设成静态,为之后编程 ...
- MongoDB在单机上搭建分片副本集群(windows),版本二
配置可以参考前面一篇 https://www.cnblogs.com/a-horse-mosaic/p/9284010.html 副本集是一组服务器,其中有一个主服务器(primary),用于处理客户 ...
随机推荐
- [MEF]第02篇 MEF的导入导出契约
一.演示概述此演示介绍了如何为Export指定导出的协议名和类型,以及如何为Import指定导入的协议名和类型,只有确保导出和导入的协议名和类型相匹配了,才能注入成功,否则注入就会失败.相关下载(屏幕 ...
- bzoj 3996 [TJOI2015]线性代数——最小割
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3996 b[ i ][ j ] 要计入贡献,当且仅当 a[ i ] = 1 , a[ j ] ...
- Hibernate学习9—检索策略
本章,采用Class和Student —— 1 对 多的关系: Student.java: package com.cy.model; public class Student { priv ...
- zufeoj NO.1(结构体简单题)
NO.1 时间限制: 1 Sec 内存限制: 128 MB提交: 457 解决: 172[提交][状态][讨论版] 题目描述 所谓NO.1,就是所有成绩都排在第一的同学,我们假设每个人只有理科,文 ...
- Cassandra 的启动和初始化
Cassandra常用命令 Cassandra启动过程详解[原创] Cassandra 的入口 CassandraDaemon 作为Cassandra的入口,做了以下几件事: load configu ...
- ESXI5.5开启snmp+zabbix 监控esxi 需要开启的服务
esxcli system snmp set --communities public esxcli system snmp set --enable trueesxcli network firew ...
- 【学步者日记】C#反射中NonPublic和Instance需要一起使用
完整链接请看: http://note.youdao.com/noteshare?id=f378d9a414e46893b0e300b017ed3655 ——————————————————————— ...
- 前段基础之HTML
HTML 初识 web服务本质 import socket def main(): sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s ...
- Docker - 使用Swarm和compose部署服务(containers)
前言 在之前使用Docker的过程中,一直是用 Docker run 命令单独启动container后再加入Overlay网络的方式实现部署工作的. 这种方式看似直接,但是随着服务所包含的contai ...
- python学习(二十四) 字符串格式化
1: Test 1 a = 'city' b = 'country' print(" aaa %s bbb %s " % (a, b)) result: aaa city bbb ...