SolrCloud的搭建与稳定性测试
转载请注明出处:http://www.cnblogs.com/wubdut/p/7573738.html
一、集群搭建
1. zookeeper搭建(版本:3.4)
1.1 zoo.cfg配置文件:
dataDir=/usr/share/zookeeper/data/
clientPort=2181
server.1=10.0.67.31:2881:3881
server.2=10.0.67.32:2881:3881
server.3=10.0.67.33:2881:3881
1.2 dataDir=/usr/share/zookeeper/data/目录下新建myid文件,写入x(注:server.x中,x值与dataDir中的myid中的值对应)。
1.3 启动
./zkServer.sh start #启动,要从server.1开始启动
./zkServer.sh status #查看状态:Leader或者是Follower
./zkServer.sh stop #停止
2. SolrCloud搭建(版本:6.6(JDK8)):
2.1 生成cloud文件(每个服务节点都执行相同操作)
运行 $ bin/solr -e cloud -noprompt # 在example中生成cloud文件夹
运行 $ bin/solr stop -all # 停止所有solr节点
2.2 启动SolrCloud(每个服务节点都执行相同操作)
$ bin/solr start -force -cloud -s example/cloud/node1/solr -p 8983 -z 10.0.67.31:2181,10.0.67.32:2181,10.0.67.33:2181
$ bin/solr start -force -cloud -s example/cloud/node2/solr -p 7574 -z 10.0.67.31:2181,10.0.67.32:2181,10.0.67.33:2181
2.3 创建collection
$ bin/solr create -force -c mycollection -d data_driven_schema_configs -s 4 -rf 2 # 4个shard,2个副本
2.4 删除collection
http://192.168.2.68:8983/solr/admin/collections?action=DELETE&name=collectionname # 删除collection
二、稳定性测试(测试过程中,一直在推送数据):
1. SolrCloud的分片leader转移、恢复测试:
通过关闭分片leader,测试是否副本会继承为leader。重启关闭结点,是否成功恢复。
成功完成此项测试。
2. 关闭SolrCloud重启测试:
关闭所有solr节点。重启后,shard2,3,4立即恢复,shard1的两个节点都down了,等待一段时间后,恢复正常。
成功完成此项测试。
3. 关闭zookeeper(3个节点),重启测试:
关闭leader,leader成功转移,服务正常。再关闭一个zookeeper,服务停止。
启动关闭的两个节点后,正常推送数据。
成功完成此项测试。
三、节点监控策略:
定时向各solr节点端口发送查询请求,判断节点是否正常(即,是否Gone)。如果Gone,远程调用执行:
$ bin/solr restart -force -cloud -s example/cloud/node1/solr -p 8983 -z 10.0.67.31:2181,10.0.67.32:2181,10.0.67.33:2181
附录:搭建中的问题
1. 启动后存在无用的collection:
通过zkcli删除zookeeper服务其中的collections下的对应目录。
2. 无法创建新collection,报不能加载配置或者配置不存在:
删除clusterstate.json中的对应项。可通过接口删除。
SolrCloud的搭建与稳定性测试的更多相关文章
- Android-monkey稳定性测试(多台设备同时进行)
1.目的(原创文章,转载请注明出处-) 主要为指引开展android平台应用的稳定性测试,尽可能地在应用发布前发现crash及an ...
- monkey稳定性测试的步骤及策略
1.adb的作用是什么?adb的全称:android debug bridge 安卓调试桥梁,包含在 Android SDK 平台工具软件包中.通过该命令与设备进行通信,以便进行调试adb可以同时管理 ...
- 共享业务稳定性测试&技术创新组
本文其实是一篇招聘贴,不管你以前是做开发还是测试,都欢迎加入我们的小组. 2014年阿里巴巴的共享业务事业部有很大变化,共享的测试团队也做了一些调整,我不再担任共享业务的测试经理,但是仍然会留在共享测 ...
- Android客户端稳定性测试——Monkey
修改时间 修改内容 修改人 2016.6.20 创建 刘永志 2016.6.29 完成 刘永志 Monkey简介: Android SDK自带的命令行测试工具,向设备发送伪随机事件流,对应用程序进行进 ...
- kafka环境搭建及librdkafka测试
kafka环境搭建及librdkafka测试 (2016-04-05 10:18:25) 一.kafka环境搭建(转自http://kafka.apache.org/documentation.h ...
- 记录使用gogs,drone搭建自动部署测试环境
使用gogs,drone,docker搭建自动部署测试环境 Gogs是一个使用go语言开发的自助git服务,支持所有平台 Docker是使用go开发的开源容器引擎 Drone是一个基于容器技术的持续集 ...
- DBCP,C3P0,Tomcat_JDBC 性能及稳定性测试
1.测试环境: 硬件环境: 数据库服务器:2U*8核 8G内存 测试服务器: 2U*8核 6G内存 软件环境: jdk: 1.6.29 mysql: 5.0.77 mysql_driver: my ...
- app测试--稳定性测试
稳定性测试的概念有2种, 一, 稳定性测试,对应于异常性测试,即发生异常情况时,系统如何反应的测试.包含: 1 交互性测试,被打扰的情况,如来电,短信,低电量等.这些其实在上章的功能测试中有提到. 2 ...
- 【Monkey】Monkey稳定性测试常用命令
Monkey稳定性测试常用命令: 1.adb shell monkey n 2.adb shell monkey -p com.android.calculator2 1000 3.adb shel ...
随机推荐
- ECMAScript 6
参考网上其他帖子,整理如下 ES6 就是ECMAScript 6是新版本JavaScript语言的标准. 增加了如下 Promises Promises是处理异步操作的对象,使用了 Promi ...
- git命令行获取某分支代码
参考https://www.cnblogs.com/nylcy/p/6569284.html git clone -b branch1 http://xxx.xx.xxx... git clone - ...
- redis-dump安装与导出redis数据
一.安装redis-dump redis-dump安装的时候一般都会遇到下面的错误: ERROR: Error installing redis-dump:redis requires Ruby ve ...
- 大数据实操3 - hadoop集群添加新节点
hadoop集群支持动态扩展,不需要停止原有集群节点就可以实现新节点的加入. 我是使用docker搭建的进群环境,制作了镜像文件,这里以我的工作基础为例子介绍集群中添加集群的方法 一.制作一个新节点 ...
- 牛客小白月赛13 小A的回文串(Manacher)
链接:https://ac.nowcoder.com/acm/contest/549/B来源:牛客网 题目描述 小A非常喜欢回文串,当然我们都知道回文串这种情况是非常特殊的.所以小A只想知道给定的一个 ...
- Vue --1
1.2 vue.js库的基本使用 在github下载:https://github.com/vuejs/vue/releases 在官网下载地址: https://cn.vuejs.org/v2/gu ...
- mysql7.5.x删除重新安装
删除: cmd管理员运行,进入D:\devs\MySQL\mysql-5.7.25-winx64\bin目录下: 输入命令:sc delete mysql 删除data目录下的所有文件 安装: 创建m ...
- Bootstrap+PHP表单验证实例
简单实用的Bootstrap+PHP表单验证实例,非常适合初学者及js不熟悉者,还有ajax远程验证 js验证表单 1 $(document).ready(function() { 2 $('#def ...
- log4j2.xml日志文件设置文件路径
笔者最近的项目里使用了spring,spring通过web.xml配置监听器,在web启动时web.root系统变量,以供其他变量使用,例如 在属性文件里使用${web.root}以取得完整路径,项目 ...
- Linux使用yum安装JDK
安装jdk8 检查系统是否自带open-jdk输入命令: #rpm -qa|grep java #rpm -qa|grep jdk 如果没有输入信息表示没有安装,如果安装可以输入命令:#rpm -qa ...