阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Solr集群solrCloud的搭建

207次阅读
没有评论

共计 3566 个字符,预计需要花费 9 分钟才能阅读完成。

上一章讲了 Solr 单机版的搭建 http://www.linuxidc.com/Linux/2017-03/141401.htm,本章将讲解 sole 集群的搭建。solr 集群的搭建需要使用到 zookeeper,搭建参见 Zookeeper 集群的安装

一、solr 实例的搭建

1. tomcat安装

   这里我们需要 4 个 tomcat, 分别是 tomcat1,2,3,4

Solr 集群 solrCloud 的搭建

同时修改 tomcat1,2,3,4 的端口为 8080-8083。保证两个 tomcat 可以正常运行不发生端口冲突。

2. 解压 solr-4.10.3.tar.gz 压缩包。从压缩包中复制 /solr-4.10.3/dist/solr-4.10.3.war 到 tomcat1,并重命名为 solr.war。

Solr 集群 solrCloud 的搭建

3. 启动 tomcat, 解压 solr.war。解压成功后关闭 tomcat, 删除 solr.war

4. 将 solr 日志相关的 jar 包拷贝到解压的 solr 项目的 lib 包中

Solr 集群 solrCloud 的搭建

5. 创建 solrhome 文件

这里直接拷贝单机版中创建的 solrhome

Solr 集群 solrCloud 的搭建

6. 修改 tomcat1- 4 中的 solr 的 web.xml 对应的 env-entry-value 值为 /usr/local/solrcloud/solrhome1-4,指定对应的 solrhome

Solr 集群 solrCloud 的搭建

7. 其他的配置参见 Solr 单机版的搭建 http://www.linuxidc.com/Linux/2017-03/141401.htm

二、solr 集群的搭建

1. 把 solrhome 中的配置文件上传到 zookeeper 集群。使用 zookeeper 的客户端上传。

 使用 solr 安装包中的 /opt/mysoft/solr-4.10.3/example/scripts/cloud-scripts 中的 zkcli.sh

Solr 集群 solrCloud 的搭建

运行命令

./zkcli.sh -zkhost 192.168.198.130:2181,192.168.198.130:2182,192.168.198.130:2183 -cmd upconfig -confdir /usr/local/solrcloud/solrhome1/collection1/conf -confname myconf

 

查看运行是否成功,使用 zookeeper 中的脚本

Solr 集群 solrCloud 的搭建

2. 修改 solrhome1- 4 下的 solr.xml 文件,指定当前实例运行的 ip 地址及端口号 8080-8083。

 Solr 集群 solrCloud 的搭建

3. 修改每一台 solr 的 tomcat 的 bin 目录下 catalina.sh 文件中加入 DzkHost 指定 zookeeper 服务器地址:

Java_OPTS="-DzkHost=192.168.198.130:2181,192.168.198.130:2182,192.168.198.130:2183"

Solr 集群 solrCloud 的搭建

4. 重启 tomcat

 查看运行结果

Solr 集群 solrCloud 的搭建

5. 创建一个两片的 collection,每片是一主一备

http://192.168.198.130:8080/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2  

Solr 集群 solrCloud 的搭建

回到主界面查看

Solr 集群 solrCloud 的搭建

6. 删除 collection1

http://192.168.198.130:8080//solr/admin/collections?action=DELETE&name=collection1

Solr 集群 solrCloud 的搭建

查看主界面

Solr 集群 solrCloud 的搭建

三、Java 测试代码

@Test
    public void testAddDocument() throws Exception {//创建一个和 solr 集群的连接
        //参数就是 zookeeper 的地址列表,使用逗号分隔
        String zkHost = "192.168.198.130:2181,192.168.198.130:2182,192.168.198.130:2183";
        CloudSolrServer solrServer = new CloudSolrServer(zkHost);
        //设置默认的 collection
        solrServer.setDefaultCollection("collection2");
        //创建一个文档对象
        SolrInputDocument document = new SolrInputDocument();
        //向文档中添加域
        document.addField("id", "test001");
        document.addField("item_title", "测试商品");
        //把文档添加到索引库
        solrServer.add(document);
        //提交
        solrServer.commit();}
    
    @Test
    public void queryDocument() throws Exception{//创建一个和 solr 集群的连接
        //参数就是 zookeeper 的地址列表,使用逗号分隔
        String zkHost = "192.168.198.130:2181,192.168.198.130:2182,192.168.198.130:2183";
        CloudSolrServer solrServer = new CloudSolrServer(zkHost);
        //设置默认的 collection
        solrServer.setDefaultCollection("collection2");        
        solrServer.deleteByQuery("*:*");
        solrServer.commit();}
    

四、spring 集成

<bean id="cloudSolrServer" class="org.apache.solr.client.solrj.impl.CloudSolrServer"> 
        <constructor-arg name="zkHost" value="192.168.25.154:2181,192.168.25.154:2182,192.168.25.154:2183"></constructor-arg> 
        <property name="defaultCollection" value="collection2"></property>
</bean>

java 代码使用方法不变,因为 SolrServer 是 CloudSolrServer 的父类

Solr 集群 solrCloud 的搭建

 

PDF 文档可以到 Linux 公社资源站下载:

—————————————— 分割线 ——————————————

免费下载地址在 http://linux.linuxidc.com/

用户名与密码都是www.linuxidc.com

具体下载目录在 /2017 年资料 / 3 月 / 5 日 /Solr 集群 solrCloud 的搭建 /

下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm

—————————————— 分割线 ——————————————

更多 Solr 相关教程见以下内容

Solr3.6.1 在 Tomcat6 下的环境搭建 http://www.linuxidc.com/Linux/2013-01/77664.htm

Apache Solr: 安装和运行 http://www.linuxidc.com/Linux/2016-12/138527.htm

在 Ubuntu 12.04 LTS 上通过 Tomcat 部署 Solr 4 http://www.linuxidc.com/Linux/2012-09/71158.htm

Solr 实现 Low Level 查询解析(QParser)http://www.linuxidc.com/Linux/2012-05/59755.htm

Solr6.0.0 + Tomcat8 配置问题 http://www.linuxidc.com/Linux/2016-05/131845.htm

基于 Solr 3.5 搭建搜索服务器 http://www.linuxidc.com/Linux/2012-05/59743.htm

Solr 3.5 开发应用教程 PDF 高清版 http://www.linuxidc.com/Linux/2013-10/91048.htm

Solr 4.0 部署实例教程 http://www.linuxidc.com/Linux/2013-10/91041.htm

Solr 的详细介绍:请点这里
Solr 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/141402.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3566字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中