zoukankan      html  css  js  c++  java
  • cloudera search环境搭建搭建-solrcloud

    转载:http://blog.csdn.net/xiao_jun_0820/article/details/40539291

    本文基于Cloudera Manager5.0.0,所有服务基于CDH5.0.0 parcel安装。

    CM 安装solr是非常方便的,在集群上添加服务就行了,solrcloud需要zookeeper集群的支持,所以添加solr服务之前,先添加zookeeper服务。在此不赘述。

    本文从添加好solr服务之后开始说起,我有4个主机,所以添加solr服务的时候我添加了4个solr server,每台主机一个,在选择相应的zookeeper服务启动solr服务之后,这四个节点就在同一个solrcloud集群里面了。

    cm装好的solr服务默认是没有collection的。我们可以利用cloudera提供的一个脚本工具来管理solrcloud,该工具为:solrctl

    $ solrctl --help
    
    usage: /usr/bin/solrctl [options] command [command-arg] [command [command-arg]] ...
    
    Options:
        --solr solr_uri
        --zk   zk_ensemble
        --help
        --quiet
    
    Commands:
        init        [--force]
    
        instancedir  [--generate path]
                    [--create name path]
                    [--update name path]
                    [--get name path]
                    [--delete name]
                    [--list]
    
        collection  [--create name -s <numShards>
                                  [-c <collection.configName>]
                                  [-r <replicationFactor>]
                                  [-m <maxShardsPerNode>]
                                  [-n <createNodeSet>]]
                    [--delete name]
                    [--reload name]
                    [--stat name]
                    [--deletedocs name]
                    [--list]
    
        core        [--create name [-p name=value]...]
                    [--reload name]
                    [--unload name]
                    [--status name]

    solr服务首次启动的时候,会在hdfs上创建/solr目录,还会在zookeeper上创建/solr节点,zookeeper上的/solr节点下面用来保存了solrcloud的相关配置信息。

    由于现在solrcloud上是没有collection的,我们先创建一个collection,命名为collection1,在创建 collection1之前,首先要将配置信息上传到zookeeper上,我们这里就将solr自带的examples里面的那个solr目录下面的 collection1的配置上传,对应cm安装的集群,这个目录在/opt/cloudera/parcels/CDH/share/doc /solr-doc-4.4.0+cdh5.0.0+178/example/solr目录下面,我们用:

    sudo -u solr solrctl instancedir --create collection1 /opt/cloudera/parcels/CDH/share/doc/solr-doc-4.4.0+cdh5.0.0+178/example/solr/collection1

    执行该命令后,会将/opt/cloudera/parcels/CDH/share/doc/solr-doc- 4.4.0+cdh5.0.0+178/example/solr/collection1下的conf目录下面的所有文件上传到zookeeper的 /solr/configs下面的collection1目录下面.

    OK,配置文件上传了,下一步是创建collection,运行如下命令:

    sudo -u solr solrctl collection --create collection1 -s 2

    创建一个名叫collection1的collection,有2个shard,我们没写-c参数,就会使用默认与collection name相同的配置文件目录作为-c的默认配置,也即会使用默认的上一步上传到zookeeper的collection1目录作为默认配置目录.

    OK,我们可以检测一下collection是否创建成功,运行:solrctl collection --list,看看有没有collection1

    在solr控制台管理页面上的cloud下面可以砍到图形化描述的collection1的拓扑结构,这里两个shard具体分配到哪两个server是由solrcloud自己管理的,我们无需关心。

    我们试着给这个collection添加一个document:

    cd /opt/cloudera/parcels/CDH/share/doc/solr-doc-4.4.0+cdh5.0.0+178/example/exampledocs

    java -Durl=http://master68:8983/solr/collection1/update -jar post.jar ipod_video.xml

    然后执行一下查询语句:http://master68:8983/solr/collection1/select?q=*:*

    可以查询到刚才我们添加的索引文件,至此,一个简单的solrcloud搭建好了。

  • 相关阅读:
    java如何将char类型的数字转换成int型的数字,而不是Ascii
    java 二分查找的注意事项
    IntelliJ IDEA 下的svn配置及使用的非常详细的图文总结
    java中Math的常用方法整理
    判断字符串是否可由重复子字符串组成
    P3558 [POI2013]BAJ-Bytecomputer
    BZOJ 3329. Xorequ
    Codeforces 1221F. Choose a Square
    Codeforces 1221E. Game With String
    Codeforces 1221D. Make The Fence Great Again
  • 原文地址:https://www.cnblogs.com/lvfeilong/p/234sdfsdf.html
Copyright © 2011-2022 走看看