• CentOS 安装SolrCloud


    1.什么是SolrCloud

    SolrCloud(solr )Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高,这时需要使用SolrCloud来满足这些需求。

     SolrCloud是基于SolrZookeeper的分布式搜索方案,它的主要思想是使用Zookeeper作为集群的配置信息中心。

    它有几个特色功能:

    1)集中式的配置信息

    2)自动容错

    3)近实时搜索

    4)查询时自动负载均衡

    2. Solr集群的结构

    3. Solr集群的搭建

    本教程的这套安装是单机版的安装,所以采用伪集群的方式进行安装,如果是真正的生产环境,将伪集群的ip改下就可以了,步骤是一样的。

    SolrCloud结构图如下:

    需要三个zookeeper节点

    四个solr节点。

    使用伪分布式实现solr集群。需要三个zookeeper实例,4tomcat实例,可以在一台虚拟机上模拟。建议虚拟机1G以上内存。

    4.Zookeeper集群的搭建 http://www.cnblogs.com/zuge/p/5756154.html

    5. Solr实例的搭建

    第一步:创建4tomcat实例,修改其端口。8080-8083

    [root@localhost solrcloud]# cp -r tomcat1 tomcat2
    [root@localhost solrcloud]# cp -r tomcat1 tomcat3
    [root@localhost solrcloud]# cp -r tomcat1 tomcat4
    [root@localhost solrcloud]# vi tomcat2/conf/server.xml 改为8081
    [root@localhost solrcloud]# vi tomcat3/conf/server.xml 改为8082
    [root@localhost solrcloud]# vi tomcat4/conf/server.xml 改为8083

    可以自己写个脚本

     

    第二步:解压solr-4.10.3.tar.gz压缩包。从压缩包中复制solr.wartomcat

    [root@localhost admin]# tar -zxvf solr-4.10.3.tgz.tgz 
    [root@localhost admin]# tar -zxvf apache-tomcat-7.0.47.tar.gz 
    [root@localhost admin]# cp apache-tomcat-7.0.47 /usr/local/solrcloud/tomcat1 -r
    [root@localhost dist]# cp solr-4.10.3.war /usr/local/solrcloud/tomcat/webapps/solr.war

    第三步:启动tomcat解压war包。把solr-4.10.3目录下example目录下的关于日志相关的jar包添加到solr工程中。

    把/root/solr-4.10.3/example/lib/ext 目录下所有的jar包复制到solr工程中。

    [root@localhost bin]#./startup.sh
    [root@localhost webapps]#rm -rf solr.war
    [root@bogon ext]# cp * /usr/local/solrcloud/tomcat/webapps/solr/WEB-INF/lib/ 

    第四步:创建solrhome。修改web.xml指定solrhome的位置。

    [root@bogon example]# pwd
    /root/solr-4.10.3/example
    [root@bogon example]# cp -r solr /usr/local/solrcloud/solrhome

     需要修改solr工程的web.xml文件。

    solrhome准备4份,solrhome1,solrhome2,solrhome3,solrhome4

    5. solr集群的搭建

    第一步

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

    客户端命令位置:/solr-4.10.3/example/scripts/cloud-scripts

    先要把zookeeper启动

    [root@localhost solrcloud]# cd /home/admin/solr-4.10.3/example/scripts/cloud-scripts/

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

    查看配置文件是否上传成功:(目录在zookeeper的bin下面)

    [root@bogon bin]# ./zkCli.sh

    Connecting to localhost:2181

    [zk: localhost:2181(CONNECTED) 0] ls /

    [configs, zookeeper]

    [zk: localhost:2181(CONNECTED) 1] ls /configs

    [myconf]

    [zk: localhost:2181(CONNECTED) 2] ls /configs/myconf

    [admin-extra.menu-top.html, currency.xml, protwords.txt, mapping-FoldToASCII.txt, _schema_analysis_synonyms_english.json, _rest_managed.json, solrconfig.xml, _schema_analysis_stopwords_english.json, stopwords.txt, lang, spellings.txt, mapping-ISOLatin1Accent.txt, admin-extra.html, xslt, synonyms.txt, scripts.conf, update-script.js, velocity, elevate.xml, admin-extra.menu-bottom.html, clustering, schema.xml]

    [zk: localhost:2181(CONNECTED) 3]

     第二步

    修改每个solrhome(1-4)下的solr.xml文件,指定当前实例运行的ip地址及端口号。

     第三步

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

    JAVA_OPTS="-DzkHost=192.168.25.154:2181,192.168.25.154:2182,192.168.25.154:2183"

    (可以使用vim的查找功能查找到JAVA_OPTS的定义的位置,然后添加)

    第四步

    重新启动tomcat

    一个主节点多个备份节点,集群只有一片。

    第五步

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

    使用以下命令创建:(在浏览器的地址栏输入即可)

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

    第六步

    删除collection1.

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

  • 相关阅读:
    Android之TabHost使用(引用SDK例子文档)
    Android之在线词典
    校验插入指定结点是否导致编码循环的示例函数
    查表法按日期生成流水号的示例.sql
    备份数据库并提供下载的asp文件
    Metro风格XAML应用程序性能技巧
    导入文本文件时如何指定字段类型.sql
    宝塔形数据的处理.sql
    将某个目录上的Excel表,导入到数据库中.sql
    Using SqlDataReader’s new async methods in .Net 4.5 Beta
  • 原文地址:https://www.cnblogs.com/zuge/p/5757336.html
Copyright © 2020-2023  润新知