`
mozhenghua
  • 浏览: 324494 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

solr cloud 学习

 
阅读更多
  1. 启动solr cloud ,启动到一半发现抛出这样的异常:ZkController.java第1087行代码
    "Could not find configName for collection " + collection + " found:" + configNames

           原因在于solr cloud 集群在启动的过程中需要加载zookeeper中的 collections core状态配置信息,因为在zk中还没有初始化,所以启动的时候发现配置信息是空的,solr连续尝试四次之后就会抛一个ZooKeeperException异常。

           解决办法是,在启动命令行中添加一个-Dbootstrap_confdir=./solr/collection1/conf   的配置项,solr在启动的时候就会自动将目标配置文件夹下的schema solrconfig 等配置信息同步到zookeeper节点上。完整的solr启动命令如下:

    java -Dbootstrap_confdir=./solr/collection1/conf -Dcollection.
    configName=twoShardsTwoReplicasConf -DnumShards=2
    -DzkHost=192.168.0.10:9983/baisui  -jar start.jar
     
  2. 当应用启动好之后,solr core中已经有一份索引了,然后在solr管理页面(http://localhost/solr/#/collection1/query)上执行查询操作,抛了以下这个异常:
    2013-5-2 10:22:04 org.apache.solr.common.SolrException log
    严重: org.apache.solr.common.SolrException: no servers hosting shard:
            at org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:162)
            at org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:135)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:619)
             首先需要解决的一个问题是solr启动使用的端口号是8983,但是现在运行的solr core所在tomcat容器中设定的solr端口号是80端口,当调用solr的shared查询时候,仍然会瓶装request url的时候用8983端口来拼装,所以在在shared查询的时候会发生服务不可用的错误,所以要在启动命令的参数中添加一个参数-Djetty.port=80, 说明一下,虽然是在tomcat容器中这个参数仍然是有效的。                     

             接下来再说如何解决上面那个异常,其实很简单,因为在初始化的时候设置了sharedNumber的数量为2,刚开始只启动了一台服务器,在查询的时候,在zookeeper中livenode节点中只有一台,还没有满足solrcloud最小shared为2的要求。所以在进行查询的时候抛出这个异常很正常,解决办法是再启动一个solr节点,启动命令是java -DzkHost=10.232.15.46:2181,10.232.36.130:2181/baisui -Djetty.port=80  -jar start.jar, 应用启动的时候自动会到zookeeper中的节点配置信息。第二个solr节点正常启动后,可以正常进行查询操作了。


            需要说明的是一个应用在初始化之后,sharedNumber数目就不能变了,但是 一个share中的副本是可以添加或者减少的。

  3. 删除cluster中的 Collection
              curl 'http://localhost:8983/solr/admin/collections?action=DELETE&name=userscollection'  试验了一下果然是可以删除的,但是在zookeepr的节点上查看还是刚刚生成的schema,solrconfig等配置文件还是存在的没有被删除掉。但是本地文件夹collection中的config 目录被删除了,重新启动solr container会出错。

               类似这样的维护solr应用的命令使用起来倒是挺方便的,但是感觉如果是线上应用的话这样调用起来也非常危险,一个不小心就把一个collection给删除了,那就摊上大事儿了

分享到:
评论
2 楼 opadnjmdl 2015-12-16  
solrcloud5.2.1+zookeeper一部精通
课程观看地址:http://www.xuetuwuyou.com/course/15
课程出自学途无忧网:http://www.xuetuwuyou.com

课程介绍
一、课程使用到的软件及版本: centos系统,solr5.2.1,zookeeper 3.4.6

二、课程大纲

1、zookeeper集群搭建,以及配置信息,zookeeper客户端命令讲解
2、solrcloud在生产环境下的搭建
3、创建collection,如何动态加载配置到zookeeper中,以及schema的详解
4、solr索引文件夹,uuid与uniqueKey的讲解,如何使用uuid自动生成uniqueKey
5、solr DIH导入mysql数据
6、mysql的增量导入,以及各种datasource的讲解
7、ik分词器
8、详细讲解文档的Fields以及solrconfig.xml的相关配置,以及solrweb管理界面描述(上)
9、solrweb管理界面描述(下)
10、solr spellcheck以及solr源码转maven项目
11、solr 的UTC时间修改,ik分词器源码修改动态加载分词,停顿词(上)
12、ik分词器源码修改动态加载分词,停顿词(下)
13、solrj与springMVC整合
14、spring solrj的简单增删改查,权重设置
15、spring solrj的Faceting搜索Highlighting高亮(上)
16、spring solrj的Faceting搜索Highlighting高亮(下)
17、solr的近实时索引搜索以及实时索引搜索,搜索平台架构的详细剖析
18、solr-suggest1
19、solr-suggest实战
20、solr如何快速索引海量数据
1 楼 Sweblish 2015-01-08  
现在我刚接触solr,正在研究solrcloud。想问一下,如果更新solrcloud的索引呢?比如说:现在有四台机器的solrcloud在运行,有一天有更新所有的索引,但时更新时间需要24小时,这期间会不会影响原来的索引啊?

相关推荐

    solr入门java工程

    在学习和使用这个"solr入门java工程"时,你需要理解以下关键点: 1. Solr的基本概念和功能,如索引、查询、分面搜索等。 2. FusionInsight Solrtest的用途和如何使用它进行性能测试。 3. Java客户端SolrJ的使用,...

    solr学习笔记

    ### Solr 学习笔记:关键命令使用说明 Solr 是一个开源的、高性能的全文检索引擎,基于 Java 开发,常被用于大型网站的搜索系统。本文将围绕给定内容中的关键命令进行详细的解析,主要包括 Solr 的启动、集群管理、...

    solr安装包下载地址

    2. 进入`bin`目录,根据操作系统运行相应的启动脚本(如`bin\solr start`或`bin\solr start -e cloud`)来启动Solr服务器。 3. 使用Web浏览器访问`http://localhost:8983/solr`,如果一切正常,你应该能看到Solr管理...

    solr安装与配置

    ### Solr安装与配置知识点详解 #### 一、Solr简介 Solr是一款开源的、高性能的全文搜索引擎,广泛...通过本文介绍的知识点,读者可以更好地理解和掌握Solr的安装与配置流程,为进一步学习和使用Solr打下坚实的基础。

    solr in action

    - **故障恢复**:说明在Solr Cloud环境中如何实现高可用性和容错能力。 #### 与相关技术集成 - **集成框架**:讨论如何将Solr与各种开发框架(如Spring)集成。 - **第三方服务**:探索与其他数据处理服务(如...

    最新版linux solr-8.8.0.tgz

    7. **导入数据**:Solr使用`bin/post`工具或者Solr Cloud的`curl`命令来导入JSON、XML或其他格式的数据。例如,`bin/post -c <core_name> exampledocs/*.xml`可以导入“exampledocs”目录下的所有XML文件。 8. **...

    solr 4.10&

    作为Apache软件基金会项目,Solr拥有活跃的开发者社区,不断提供新功能和改进,以及丰富的文档和示例代码供学习参考。 综上所述,Solr 4.10是强大的全文搜索引擎,尤其适合大规模数据的分布式处理,其丰富的特性和...

    windows版本的单机solr

    如果希望以服务模式运行,可以使用`bin\solr start -e cloud`命令,这将启动SolrCloud模式,适合分布式部署。启动完成后,你可以通过浏览器访问`http://127.0.0.1:8090/solr`来查看Solr管理界面,验证是否成功启动。...

    搭建好的solr 7.5单机版

    2. **Cloud模式**:虽然这里的版本是单机版,但Solr 7.5支持Cloud模式,可以实现分布式搜索和高可用性。这意味着即使在单机环境下,你也可以了解如何将Solr集群化,以便在未来需要扩展时做好准备。 3. **Schema设计...

    solr-7.1.0.tgz

    Solr 是一个开源的全文搜索引擎,由 Apache 软件基金会开发并维护。这个 `solr-7.1.0.tgz` 文件是 Solr 的一个特定版本——7.1.0,...通过深入学习和实践,你可以充分利用 Solr 的特性,为你的项目带来高效的搜索体验。

    apache-solr-ref-guide-7.4(官方英文-文字版本)

    6. **在 AWS EC2 上部署 Solr Cloud**:针对云环境下的部署场景,介绍了如何在 Amazon Web Services (AWS) 的 Elastic Compute Cloud (EC2) 实例上部署 Solr Cloud。 7. **升级 Solr 集群**:提供了关于如何将现有...

    solr-5.2.1.tgz

    同时,Solr 的官方文档是了解和学习 Solr 的宝贵资源,包含详细的配置指南和使用教程。 总之,无论是 Solr 4.7.1 还是 5.2.1,都提供了强大的全文检索能力,并且随着版本的迭代,其在分布式、安全性和性能方面都有...

    solr-5.3.2

    Solr是Apache软件基金会的一个开源项目,全称为Apache ...对于开发者来说,这是一个学习和部署Solr的好起点,特别是对于初次接触Solr或者需要在Windows平台上运行Solr的用户,32位和64位的支持使得安装和运行更加便捷。

    solr-4.9.1

    Solr是Apache软件基金会开发的一款全文搜索引擎,它基于Lucene库,提供了分布式、可扩展、易维护的搜索和分析...通过深入学习和实践这个版本,开发者可以掌握如何在实际项目中应用Solr,实现高效的全文检索和数据分析。

    solr-4.10.3.tgz.tgz

    为了启动Solr服务,你需要进入`server/bin`目录,然后运行启动脚本(例如`solr start`或`./solr start -e cloud`,后一种方式用于启动分布式模式)。这将启动Jetty服务器,并加载配置文件。 Solr的配置主要在`...

    最新版linux solr-8.5.1.tgz

    3. **启动Solr服务器**:进入解压后的目录,使用`bin/solr start -e cloud`命令启动Solr服务器,这将以分布式模式启动,并创建默认的集合。 4. **创建索引**:Solr的核心功能是构建和管理索引。通过Solr的HTTP API...

    最新版linux solr-8.6.0.tgz

    通过学习和掌握 Solr 8.6.0,开发者和系统管理员能够构建高效、可扩展的全文搜索解决方案,提升用户体验,为企业带来价值。在实际操作中,结合官方文档和社区资源,可以深入理解并熟练运用这个强大的搜索平台。

    solr-4.10.3

    1. **Cloud功能增强**:SolrCloud是Solr的分布式搜索和索引存储解决方案,4.10.3版本对SolrCloud进行了优化,提供了更强大的集群管理和数据分布能力,包括Zookeeper集成的改进和故障恢复机制的加强。 2. **配置管理...

Global site tag (gtag.js) - Google Analytics