配置solr cloud,添加replica,split shard,unload core

摘要

本节主要讲解启动solr cloud,以及部分运维处理过程

启动solr cloud
添加replica 
split shard
unload core

其中启动solr cloud以及添加replica 参照 split shard
split shard参照 《solr in action》 P433 Starting Solr in cloud mode
unload core参照 《solr in action》 P408 unloading and deleting cores

创建core

将E:\Program Files (x86)\solr-4.6.0\solr-4.6.0\example 复制两份 重命名为shard1和shard2
就存在了E:\Program Files (x86)\solr-4.6.0\solr-4.6.0\shard1 以及 shard2

启动solr cloud

先用一个已有的solr node来完成启动,等待后续其他node的到来

命令行执行(此时tomcat关掉,因为下面命令用start.jar用的jetty起的)

e:
cd E:\Program Files (x86)\solr-4.6.0\solr-4.6.0\shard1
java -Dcollection.configName=collection1 -DzkRun -DnumShards=2  -jar start.jar -Dbootstrap_confdir=./solr/collection1/conf

启动完之后,输入 http://localhost:8983/solr/#/~cloud
呈现,

启动solr cloud

这里应该要出现在shard1才对(没有指定的话应该是每个shard轮流来),暂时没有深究
这里和文件名shard1没有关系

启动另外一个shard

在上面solr cloud已经启动的基础上,
命令行执行

e:
cd E:\Program Files (x86)\solr-4.6.0\solr-4.6.0\shard2
java -DzkHost=localhost:9983 -Djetty.port=8984 -jar start.jar

启动之后,输入 http://localhost:8984/solr/#/~cloud
呈现,

启动另外一个shard

这里这个core被分配到了shard1

加入replica

把之前的example文件夹在复制一份重命名为8985(上面的文件夹名字shard1,shard2有一点误导性)
然后命令行

e:
cd E:\Program Files (x86)\solr-4.6.0\solr-4.6.0\8985
java -DzkHost=localhost:9983 -Djetty.port=8985 -jar start.jar

此时打开 http://localhost:8983/solr/#/~cloud 发现进入了shard2

增加replica

split shard

参照split shard
直接在admin页面输入
http://localhost:8983/solr/admin/collections?action=SPLITSHARD&collection=collection1&shard=shard2
这里表示将collection1这个collection的shard2再进行split

split成功
shard2 split后的cloud

再分区之后的shard2树形结构

"shard2":{
        "range":"0-7fffffff",
        "state":"inactive",
        "replicas":{
          "core_node1":{
            "state":"active",
            "base_url":"http://10.240.34.149:8983/solr",
            "core":"collection1",
            "node_name":"10.240.34.149:8983_solr",
            "leader":"true"},
          "core_node3":{
            "state":"active",
            "base_url":"http://10.240.34.149:8985/solr",
            "core":"collection1",
            "node_name":"10.240.34.149:8985_solr"}}},
      "shard2_0":{
        "range":"0-3fffffff",
        "state":"active",
        "replicas":{
          "core_node4":{
            "state":"active",
            "base_url":"http://10.240.34.149:8983/solr",
            "core":"collection1_shard2_0_replica1",
            "node_name":"10.240.34.149:8983_solr",
            "leader":"true"},
          "core_node6":{
            "state":"active",
            "base_url":"http://10.240.34.149:8985/solr",
            "core":"collection1_shard2_0_replica2",
            "node_name":"10.240.34.149:8985_solr"}}},
      "shard2_1":{
        "range":"40000000-7fffffff",
        "state":"active",
        "replicas":{
          "core_node5":{
            "state":"active",
            "base_url":"http://10.240.34.149:8983/solr",
            "core":"collection1_shard2_1_replica1",
            "node_name":"10.240.34.149:8983_solr",
            "leader":"true"},
          "core_node7":{
            "state":"active",
            "base_url":"http://10.240.34.149:8984/solr",
            "core":"collection1_shard2_1_replica2",
            "node_name":"10.240.34.149:8984_solr"}}}}

可以看到,split之前的shard2已经是inactive状态了,但是保存了旧的数据,可以unload掉
新的分出来的分别叫做shard2_0以及shard2_1,把原来shard2的range进一步细分了

这里有个问题没有明白,就是shard2是8983和8985端口的,split之后的shard2_1是8983和8984端口了,这个相当于是让另外一个solr server(ip:port)完成了部分split的工作,需要看看源码

unload没有用的core

把shard2 split之前的两个节点给unload掉,没用了

需要unload的节点

分别去
http://localhost:8983/solr/#/~cores/collection1
http://localhost:8985/solr/#/~cores/collection1
进行unload操作,如下图

8983的unload.png

最后cloud如下图

unload之后的cloud

问题

1.为什么第一个core启动时候出现在了shard2,书上是这样写的

SolrCloud takes the most logical action when new nodes join the cluster 
so you don’t have to worry about manually assigning nodes to shards

2.如何知道solrCloudServer是哪一台机器,端口

3.splitshard的时候怎么完成让另外一个solr server完成部分split的任务的,需要查看源码

refer

《solr in action》
split shard
http://blog.csdn.net/shirdrn/article/details/9770829

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,198评论 4 359
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,663评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,985评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,673评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,994评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,399评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,717评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,407评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,112评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,371评论 2 241
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,891评论 1 256
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,255评论 2 250
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,881评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,010评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,764评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,412评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,299评论 2 260

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,087评论 18 139
  • 两年前用过solr5.1版本的,当时只是简单入个门,拿来在项目里建个全文索引,然后再query,其他什么也没做,还...
    Coselding阅读 3,033评论 3 22
  • 这个章节只整理一下solr集群的部署方法 solr提供集群模式的example 打开cmd,进入solr文件夹下的...
    熙熙爸爸阅读 1,261评论 0 3
  • 我注定一世的配角,海上的风在耳边咆哮,刚刚开始的夜让我分外难熬。冬天的黄昏还有一枚知了,死在落叶的怀抱,于是石板旁...
    李一十八阅读 227评论 0 0
  • 世间纷乱, 人心不见, 再多誓言终是谎言; 因为诺言, 因为缠绵, 分分合合怎能幸免; 山高路险, 哪有永远, 甜...
    奇非怅态阅读 415评论 9 21