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

solr 分布式(复制)配置

阅读更多

    solr 分布式其实是分发,这概念像Mysql的复制。所有的索引的改变都在主服务器里,所有的查询都在从服务里。从服务器不断地(定时)从主服务器拉内容,以保持数据一致。

先描述下我的环境:
solr-master(192.168.1.181), solr-slave(192.168.1.155), jdke1.6.0_06, tomcat-5.5.26, solr-1.2 
tomcat_home在 /home/chenlb/tomcat-5.5.26
solr_home在 /home/chenlb/solr-home
solr解压后的目录 /home/chenlb/solr-1.2.0
最好两机可以ssh无密码交互,ssh无密码登录请看:http://www.blogjava.net/chenlb/archive/2008/07/03/212293.html

http://chenlb.iteye.com/blog/211809



    solr的分发是用rsync的。
    快照与分发过程:

1.snapshooter 命令在主服务器产生快照。一般在commit和optimize之后被solr调用。

2.snappuller 命令在从服务器运行,所做的事是从主服务器拉最新的快照。 用rsync的daemon模式来运行可以获得更好的性能与更底的CPU利用率。

3.snapinstaller 命令在从服务器运行,当从服务器从主服务器拉完快照后才执行。它会通知本地Solr服务器打开一个新的index reader,然后预热这个新index reader的缓存,此时有请求,原来的index reader继续为这此请求服务。一但预热完成,Solr 启用新的index reader,旧的被消亡。

    Solr 的Distribution(分发) 在Scripts文件里记录。在solr_home/conf/scripts.conf文件里。

我现在这样配置:

user=chenlb
solr_hostname
=localhost
solr_port
=8080
rsyncd_port
=18080
data_dir
=/home/chenlb/solr-home/data
webapp_name
=solr
master_host
=192.168.1.181
master_data_dir
=/home/chenlb/solr-home/data
master_status_dir
=/home/chenlb/solr-home/logs


上面的配置两机都一样。

1.安装好solr后启动它们,怎样在tomcat安装solr请看:http://www.blogjava.net/chenlb/archive/2008/03/25/188459.html

http://chenlb.iteye.com/blog/196489

[chenlb@solr-master ~]$ ./tomcat-5.5.26/bin/startup.sh


启用且启动rsync

[chenlb@solr-master ~]$ ./solr-home/bin/rsyncd-enable -u chenlb -v
[chenlb@solr-master ~]$ ./solr-home/bin/rsyncd-start -u chenlb -v

 

[chenlb@solr-slave ~]$ ./tomcat-5.5.26/bin/startup.sh


2.solr-master
先修改post.sh

[chenlb@solr-master ~]$ cd solr-1.2.0/example/exampledocs/
[chenlb@solr
-master exampledocs]$ vi post.sh
[chenlb@solr
-master exampledocs]$
#把http://localhost:8389/solr/update改下面的
http://localhost:8080/solr/update


提交数据

[chenlb@solr-master exampledocs]$ ./post.sh *.xml


产生快照

[chenlb@solr-master ~]$ ./solr-home/bin/snapshooter -u chenlb -v


说明:由于<listener event="postCommit" class="solr.RunExecutableListener">...</listener>没有设置成功(出现java.io.IOException: Cannot run program "snapshooter" (in directory "solr/bin"): java.io.IOException: error=2, No such file or directory,现在还没解决),可以只能手动生成快照(当然也可以cron)

3.solr-slave
启用快照下拉

[chenlb@solr-slave ~]$ ./solr-home/bin/snappuller-enable -u chenlb -v


拉快照

[chenlb@solr-slave ~]$ ./solr-home/bin/snappuller -u chenlb -v


安装

[chenlb@solr-slave ~]$ ./solr-home/bin/snapinstaller -u chenlb -v



现在可以在solr-slave里看结果了:
http://192.168.1.155:8080/solr/select?q=solr
http://192.168.1.181:8080/solr/select?q=solr

看结果是否一样。

分享到:
评论
7 楼 chmod777 2009-02-11  
chenlb 写道

看看 master的 snapshooter log

原来是我slave 上的master_status_dir设置错了,
害的我把snappuller snapinstaller都看了
6 楼 chenlb 2009-02-11  
看看 master的 snapshooter log
5 楼 chmod777 2009-02-10  
chenlb 写道

这方面没有

问你个问题 我按照你的方法进行了部署,并且第一次调用snappuller时,没什么问题。
master和slave都可以查询到。
但是再往master中加入新的记录以后,然后调用snapshooter,并且创建成功,
然后在slave中调用snappuller,会出现
‘no new snapshot available on 192.168.1.125 in /opt/local/solr/data’提示。
这是什么原因啊?
4 楼 chenlb 2009-02-10  
这方面没有
3 楼 chmod777 2009-02-10  
好文章!问下,您研究过solr + apache 的并发性能吗?
2 楼 happy_fish100 2008-08-06  
分布式文件存储可以试试FastDFS,一个开源的轻量级分布式文件系统,用纯C编写,提供了C和JAVA Client API。
详情请参阅:http://www.csource.org
google code下载地址:http://code.google.com/p/fastdfs/downloads/list
1 楼 SeanHe 2008-07-05  
谢谢楼主的好文章

相关推荐

    solr 分布式参考

    **一、Solr分布式架构** 1. **SolrCloud模式**: Solr的分布式特性主要体现在SolrCloud模式中,这是一个基于Zookeeper协调的集群解决方案。每个Solr实例被称为一个Solr节点,多个节点组成了SolrCloud。Zookeeper用于...

    solr 分布式部署

    Solr分布式部署的目标主要有两个: 1. **主辅服务器同步**:确保每当客户端对索引进行COMMIT操作时,更新能够及时地应用到辅助服务器上。这提供了高可用性和数据一致性,即使主服务器出现问题,辅助服务器也能无缝...

    56 solrCloud分布式搜索与索引过程

    - **Sharding**:索引被分成多个shard(分片),每个shard都是完整索引的一部分,可以复制到不同的节点上,这样既实现了数据的水平扩展也提高了系统的可用性。 - **Replication**:为了提高容错能力,每个shard...

    solr检索服务器配置

    你可以根据需求创建自己的核心,只需在`server/solr/configsets`下复制一个配置集,并在`server/solr`目录下创建对应的核心目录,如`my_core`。 五、定义Schema Schema.xml文件是Solr的核心配置文件,用于定义索引...

    Solr入门配置说明

    Solr的强大之处在于它的灵活性和可扩展性,支持分布式搜索、实时索引、多语言处理等特性。通过配置不同的字段类型和查询解析器,可以满足各种复杂的搜索需求。此外,SolrCloud模式还允许在集群环境中实现高可用性和...

    Solr配置安装(一)

    Solr配置安装(一) Apache Solr是一款基于Java的开源搜索服务器,由Apache软件基金会开发。它提供了全文检索、命中高亮、拼写检查、实时索引和多种数据类型支持等强大功能,常用于构建高性能的搜索应用。本文将...

    Solr安装与配置solr.rar

    接着,复制并修改“example/solr/collection1/conf”目录下的配置文件到新目录。最后,通过Solr管理界面或者发送HTTP请求来创建核心。 4. **配置索引**:在“schema.xml”文件中定义字段和字段类型,这是索引和查询...

    solr服务器的搭建与配置实例

    Solr的主要特点包括高度可配置性、实时全文搜索能力、分布式部署的支持等。 #### 二、Solr服务器的安装与配置流程 根据题目中的描述,我们将详细探讨如何安装和配置Solr 5.3.1版本,并确保其与Tomcat 7及JDK 7或更...

    Solr学习总结配置方法

    - **分布式**:Solr支持水平扩展,可以通过Sharding和复制策略实现分布式索引和查询,处理大数据量的场景。 - **高性能**:Solr使用缓存机制提高查询性能,并支持实时索引,满足高并发需求。 - **丰富的功能**:...

    Solr集群搭建,Solr提供的分布式搜索方案

    ### Solr集群搭建与SolrCloud分布式搜索方案详解 #### 一、SolrCloud概述 SolrCloud 是 Apache Solr 提供的一种分布式搜索解决方案。它主要用于处理大规模数据集的索引和检索工作,并具备容错性和分布式特性。当...

    solr3.5配置

    Apache Solr 是一款高度可扩展的开源全文搜索引擎,它基于 Java 开发,并且利用了 Apache Lucene 库来实现强大的...同时,Solr 还支持集群部署,能够处理大规模的数据并提供分布式搜索能力,确保系统的扩展性和可靠性。

    图解Solr6.6.0安装与MySQL配置

    - 从解压的`solr-6.6.0\server\solr`路径中复制主配置文件到`solr_home`目录。 **2.4 创建Core** - Core是Solr中的逻辑单元,每个Core代表一组文档的集合。 - 在`solr_home`目录下创建一个名为`mycore`的子目录,...

    solr导航搜索工具+文档+配置代码

    4. 高级特性:探索Solr的近实时搜索(NRT)、复制、 faceting(分类)、highlighting(高亮显示)等功能。 这个压缩包提供的资源涵盖了Solr的基础知识、配置代码以及可能的教学指导,对于初学者或开发者来说,是一...

    Solr的Multicore(分片)配置

    这包括复制Solr的配置文件(如`schema.xml`)到对应的核心目录,并根据具体需求修改这些文件,定义索引字段结构。此外,还需要在应用环境根目录`/solr/`下创建并编辑`solr.xml`,以定义各个核心的名字和实例目录。...

    SOLR简要配置

    - 配置完成后,需要将`example/solr`目录下的`conf`和`data`文件夹复制到Tomcat的`webapps/solr`或自定义的context路径下。这将包含必要的配置文件和初始索引库。 4. **验证安装** 访问`...

    SOLR的应用教程

    Solr基于Apache Lucene,它提供了更高级的功能,如集群、分布式搜索、复制和负载均衡,使得Solr更适合大规模、高并发的搜索应用。 1.2.2 Schema(模式) Schema是Solr的核心配置之一,用于定义索引字段、数据类型...

    solr服务器_solr_

    SolrCloud是Solr的分布式实现,它利用ZooKeeper进行集群协调和配置管理。 7. **CloudSolrClient**:在SolrCloud模式下,应用通常使用CloudSolrClient与Solr集群通信,它可以自动处理数据路由和复制,确保高可用性和...

    solr(solr-9.0.0-src.tgz)源码

    - **复制与恢复**:Solr支持主从复制,确保数据的一致性和高可用性。 3. **源码结构** 解压后的源码包`solr-9.0.0`包含了以下几个关键部分: - `server`: 存放Solr服务器端代码,如SolrJetty容器、管理API等。 ...

Global site tag (gtag.js) - Google Analytics