Centos7搭建solr集群
1、复制4个Tomcat到solr-cloud目录下
[root@localhost software]# cp -r apache-tomcat-9.0.24 /usr/local/solr-cloud/tomcat01
[root@localhost software]# cp -r apache-tomcat-9.0.24 /usr/local/solr-cloud/tomcat02
[root@localhost software]# cp -r apache-tomcat-9.0.24 /usr/local/solr-cloud/tomcat03
[root@localhost software]# cp -r apache-tomcat-9.0.24 /usr/local/solr-cloud/tomcat04

2、向4个Tomcat容器中部署4个solr实例
之前的单机版已经配置好了,直接复制使用即可。
cp -r /usr/local/solr-tomcat/apache-tomcat-9.0.21/webapps/solr/ /usr/local/solr-cloud/tomcat01/webapps
cp -r /usr/local/solr-tomcat/apache-tomcat-9.0.21/webapps/solr/ /usr/local/solr-cloud/tomcat02/webapps
cp -r /usr/local/solr-tomcat/apache-tomcat-9.0.21/webapps/solr/ /usr/local/solr-cloud/tomcat03/webapps
cp -r /usr/local/solr-tomcat/apache-tomcat-9.0.21/webapps/solr/ /usr/local/solr-cloud/tomcat04/webapps
3、编辑Tomcat的server.xml文件
进入tomcat容器的conf目录,打开server.xml文件进行编辑
tomcat01:



tomcat02:



tomcat03:



tomcat04:



4、将单机版的solrhome复制到solr-cloud目录中
cp -r /usr/local/solr-7.7.2/solr_home /usr/local/solr-cloud/solrhome01
cp -r /usr/local/solr-7.7.2/solr_home /usr/local/solr-cloud/solrhome02
cp -r /usr/local/solr-7.7.2/solr_home /usr/local/solr-cloud/solrhome03
cp -r /usr/local/solr-7.7.2/solr_home /usr/local/solr-cloud/solrhome04

5、修改solrhome路径
修改各个tomcat的solr下面的web.xml




6、修改solrhome的solr.xml中的ip和端口号
host:IP地址
hosrPort:tomcat端口号
solrhome01:

solrhome02:

solrhome03:

solrhome04:

7、修改各个tomcat的catalina.sh文件,建立solr和zookeeper之间的关系
进入该文件,找到JAVA_OPTS,加入以下内容(若没有注释,将之前的注释掉):分别复制到tomcat01、tomcat02、tomcat03、tomcat04、
JAVA_OPTS="-DzkHost=192.168.83.102:2182,192.168.83.102:2183,192.168.83.102:2184"

8、使用zookeeper统一管理配置文件。需要把solrhome/collection1/conf目录上传到zookeeper。上传任意solrhome中的配置文件即可。
使用工具上传配置文件:/usr/local/solr-7.7.2/server/scripts/cloud-scripts/zkcli.sh(路径可能由于版本问题导致不同)

将/usr/local/solr-cloud/solrhome01/collection1/conf目录上传至zookeeper,命名为myconf
执行如下命令:
./zkcli.sh -zkhost 192.168.83.102:2182,192.168.83.102:2183,192.168.83.102:2184 -cmd upconfig -confdir /usr/local/solr-cloud/solrhome01/collection1/conf -confname myconf

注意:
上传完成后,删除solrhome01,solrhome03,solrhome03,solrhome04目录下的collection1,否则在所有配置完成结束后,启动solr时,会报错

查看tomcat日志,会显示找不到collection1,这是因为zookeeper统一管理了配置文件,这个配置文件是来自我们之前复制的collection1里面。删除即可。
9、验证是否上传成功
查看zookeeper上的配置文件:
使用zookeeper目录下的bin/zkCli.sh命令查看zookeeper上的配置文件:
进入/usr/local/solr-cloud/zookeeper01/bin
[root@localhost bin]# ./zkCli.sh
退出:
[zk: localhost:2181(CONNECTED) 1] quit
指定端口号连接
[root@localhost bin]# ./zkCli.sh -server 192.168.83.102:2182

[zk: 192.168.83.102:2182(CONNECTED) 0] ls /

[zk: 192.168.83.102:2182(CONNECTED) 1] ls /configs

[zk: 192.168.83.102:2182(CONNECTED) 2] ls /configs/myconf

退出
[zk: 192.168.83.102:2182(CONNECTED) 3] quit

10、启动4个tomcat
在solr-home目录下创建启动tomcat的脚本start-tomcat-all.sh
/usr/local/solr-cloud/tomcat01/bin/startup.sh
/usr/local/solr-cloud/tomcat01/bin/startup.sh
/usr/local/solr-cloud/tomcat02/bin/startup.sh
/usr/local/solr-cloud/tomcat03/bin/startup.sh
/usr/local/solr-cloud/tomcat04/bin/startup.sh
修改脚本执行权限
[root@localhost solr-cloud]# chmod u+x start-tomcat-all.sh
[root@localhost solr-cloud]# ./start-tomcat-all.sh

11、查看启动日志,判断tomcat是否启动成功
[root@localhost ~]# tail -f /usr/local/solr-cloud/tomcat01/logs/catalina.out
[root@localhost ~]# tail -f /usr/local/solr-cloud/tomcat02/logs/catalina.out
[root@localhost ~]# tail -f /usr/local/solr-cloud/tomcat03/logs/catalina.out
[root@localhost ~]# tail -f /usr/local/solr-cloud/tomcat04/logs/catalina.out
12、创建新的Collection进行分片处理
一主一副:


参考:https://blog.csdn.net/gdsgdh308227363/article/details/81004706
https://blog.csdn.net/qq_15204179/article/details/81939492
https://blog.csdn.net/qq_37936542/article/details/83113083
https://blog.csdn.net/yougoule/article/details/78445759
https://blog.csdn.net/qq_39572257/article/details/90399553?utm_source=app
https://blog.csdn.net/oumuv/article/details/84585203?utm_source=app
Centos7搭建solr集群的更多相关文章
- 搭建Solr集群的推荐方案
之前介绍过2篇SolrCloud的部署流程,第一个是使用安装脚本的方式进行抽取安装,启动比较方便,但是会创建多个目录,感觉比较乱:第二个是官方教程上提供的方法,使用比较简单,直接释放压缩包即可,并且启 ...
- centos7搭建kafka集群-第二篇
好了,本篇开始部署kafka集群 Zookeeper集群搭建 注:Kafka集群是把状态保存在Zookeeper中的,首先要搭建Zookeeper集群(也可以用kafka自带的ZK,但不推荐) 1.软 ...
- centos7搭建kafka集群
一.安装jdk 1.下载jdk压缩包并移动到/usr/local目录 mv jdk-8u162-linux-x64.tar.gz /usr/local 2.解压 tar -zxvf jdk-8u162 ...
- 【转】centos7 搭建etcd集群
转自http://www.cnblogs.com/zhenyuyaodidiao/p/6237019.html 一.简介 “A highly-available key value store for ...
- 初学Hadoop:利用VMWare+CentOS7搭建Hadoop集群
一.前言 开始学习数据处理相关的知识了,第一步是搭建一个Hadoop集群.搭建一个分布式集群需要多台电脑,在此我选择采用VMWare+CentOS7搭建一个三台虚拟机组成的Hadoop集群. 注:1 ...
- Centos7搭建zookeeper集群
centos7与之前的版本都不一样,修改主机名在/ect/hostname 和/ect/hosts 这两个文件控制 首先修改/ect/hostname vi /ect/hostname 打开之后的内容 ...
- CentOS7 搭建RabbitMQ集群 后台管理 历史消费记录查看
简介 通过 Erlang 的分布式特性(通过 magic cookie 认证节点)进行 RabbitMQ 集群,各 RabbitMQ 服务为对等节点,即每个节点都提供服务给客户端连接,进行消息发送与接 ...
- CentOS7 搭建 Consul 集群
环境准备: ssh shell工具: 远程连接 三个CentOS示例: 部署集群 配置好各个实例之间的网络访问,以及ssh免密登录. 下载&上传: 1.下载 Consul: Download ...
- centos7搭建dolphinscheduler集群
一.简述 Apache DolphinScheduler是一个分布式去中心化,易扩展的可视化DAG工作流任务调度系统.致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用.有 ...
随机推荐
- [Python]统计1个元素在列表中的出现次数
使用列表自带的count方法: list.count(element) 示例: 列表a,有4个元素,其中值1出现3次 In []: a=[,,,] In []: a Out[]: [, , , ] ...
- Linux vi/vim命令
转自:http://www.runoob.com/linux/linux-vim.html Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一 ...
- JVM学习笔记之JDK、JRE、JVM的关系(二)
JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE.Java工具和Java基础类库.Java Runtime Enviro ...
- python中学习K-Means和图片压缩
python中学习K-Means和图片压缩 大家在学习python中,经常会使用到K-Means和图片压缩的,我们在此给大家分享一下K-Means和图片压缩的方法和原理,喜欢的朋友收藏一下吧. 通俗的 ...
- Masonry创建Label,不设置高度Label不显示问题
[self.contentLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(weanSelf).off ...
- lumen返回网站base url
可以使用全局帮助函数url() echo url(); //输出http://test.domain.com
- python3速查参考- python基础 5 -> 常用的文件操作
文件的打开方式 打开方式 详细释义 r 以只读方式打开文件.文件的指针会放在文件的开头.这是默认模式. rb 以二进制只读方式打开一个文件.文件指针会放在文件的开头. r+ 以读写方式打开一个文 ...
- Pulse Secure 任意文件读取(CVE-2019-11510)漏洞
漏洞分析 我们可以通过CVE-2019-11510这个未授权的任意文件读取漏洞把以下文件下载回来. /etc/passwd /etc/hosts /data/runtime/mtmp/system / ...
- 【Abode Air程序开发】移动设备、桌面和浏览器应用程序开发的差异
移动设备.桌面和浏览器应用程序开发的差异 在移动设备应用程序中使用 Spark 和 MX 组件的限制 移动设备应用程序在性能方面的注意事项 浏览器 将应用程序部署为 SWF 文件,以用于在浏览器中运 ...
- 【转帖】K8s-yaml的使用及命令
K8s-yaml的使用及命令 https://www.cnblogs.com/fuyuteng/p/9460534.html YAML配置文件管理对象 对象管理: # 创建deployment资源 k ...