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 ...
随机推荐
- java api 批量数据库操作
Statement.class:executeBatch() implement interface: PreparedStatement implement class: JdbcOdbcPrepa ...
- angularJS+KindEditor无法获取或清空textarea的值
在html页面中初始化KindEditor: <script type="text/javascript"> var editor; KindEditor.ready( ...
- 关于webApi 跨域请求
先说一下我的项目,后台单纯的webApi,前端采用Vue+axios, 说一下我遇见的问题,axios请求webAPI但是浏览器会报错,大致上就是不允许跨域请求. 于是查找解决办法发现以下代码(web ...
- 企业BGP网络规划案例(一)
网络拓扑: 如上图为一家企业的办公网,分为总部AS6500,分公司AS65001和分公司AS65002,其中每个站点都有生产.办公和服务器区域的网络互访,分公司和总公司之间通过两条联通/电信的MSTP ...
- usb设备驱动的分析
怎样来分析驱动程序呢? 1.将一个usb设备插入到电脑上,在串口软件上能够显示一些打印信息,用source insight软件打开linux内核2.6.22版本,然后从第一行查找通用的关键字,找到这一 ...
- BootStrap布局组件
BootStrap字体图标(Glyphicons) BootStrap下拉菜单:下拉菜单是可以切换的,是以列表格式显示链接的上下文菜单. 类 描述 .dropdown 指定下拉菜单 .dropdown ...
- SpringBoot集成MyBatis的分页插件 PageHelper
首先说说MyBatis框架的PageHelper插件吧,它是一个非常好用的分页插件,通常我们的项目中如果集成了MyBatis的话,几乎都会用到它,因为分页的业务逻辑说复杂也不复杂,但是有插件我们何乐而 ...
- formValidator 插件 使用总结
1. 大小写的问题, formvalidator 的属性 大小写问题一定要注意, 在踩过的坑里就包括这个, 把所有属性的第二个字母的开头全部写成大写 ,导致提示信息不能用,这个问题纠结了好久 2.er ...
- 登录界面,body上有背景图,点击输入框时,弹出的手机键盘会把背景图顶变形,而且会把footer顶上去
js: //防止背景图被手机键盘压缩变形 $(document).ready(function () { $('body').css({'height':$(window).height()}) }) ...
- celery 应用
开启服务 #日志 级别 celery -A write_file worker -l info file name :write_file.pyfrom celery import Celery ce ...