欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

solrcloud(jetty容器)搭建及使用实例详解

程序员文章站 2024-01-08 08:39:00
...
一、准备工作

  1.系统及软件版本

    系统版本:centos6.4、zookeeper版本:zookeeper-3.4.8、solr版本:solr-5.5.3

  2.安装3台虚拟机

   虚拟机ip 192.168.17.142,192.168.17.143,192.168.17.144

  3.给每台机器安装jdk

  4.创建data目录并上传zookeeper-3.4.8和solr-5.5.3至data下(每台机器均如此)

    mkdir /data

二、zookeeper集群安装

    1.解压zookeeper

      tar -zxvf zookeeper-3.4.8.tar.gz

    2.创建 data和log目录用于存放数据

      mkdir zookeeper-3.4.8/data

      mkdir zookeeper-3.4.8/log

    3.拷贝zookeeper配制文件zoo_sample.cfg

      cp conf/zoo_sample.cfg conf/zoo.cfg

    4.修改配置文件 zoo.cfg

      vi conf/zoo.cfg

      加入如下如内容:

         dataDir=/data/zookeeper-3.4.8/data
         dataLogDir=/data/zookeeper-3.4.8/log
	 server.1=192.168.17.142:2888:3888
	 server.2=192.168.17.143:2888:3888
	 server.3=192.168.17.144:2888:3888

    5.在zookeeper中的data下创建myid 并写入对应的数字

      注意:在myid要对应,在192.168.17.142服务器上的myid 数字为1,在192.168.17.143服务器上的myid 数字为2,在192.168.17.144服务器上的myid 数字为3。这些数字可以任意 但要和zoo.cfg中的servder.数字中的数字一致。

    6.开启zookeeper端口  

      /sbin/iptables -I INPUT -p tcp --dport 2181 -j ACCEPT
      /sbin/iptables -I INPUT -p tcp --dport 2888 -j ACCEPT
      /sbin/iptables -I INPUT -p tcp --dport 3888 -j ACCEPT

    7.保存修改并重启防火墙     

      /etc/rc.d/init.d/iptables save #将更改进行保存

      /etc/init.d/iptables restart #重启防火墙以便改动生效

    8.启动zookeeper集群

      进入 zookeeper中的bin目录   

      ./zkServer.sh start

      查看集群状态

      ./zkServer.sh status 刚启动可能会有错误,集群中其他节点一并起来后就正常了

      ./zkServer.sh stop 停止

      ./zkServer.sh restart 重启

      ./zkCli.sh 连接zookeeper集群

    9.安装成功的结果如下 一个 leader 2个follower

      solrcloud(jetty容器)搭建及使用实例详解

      solrcloud(jetty容器)搭建及使用实例详解

三、solr集群的搭建

  1.解压solr

    tar -zxvf solr-5.5.3.tgz

   2.修改bin下solr.in.sh文件

    ZK_HOST="192.168.17.142:2181,192.168.17.143:2181,192.168.617.144:2181"

    去掉 ZK_CLIENT_TIMEOUT 的注释

    solrcloud(jetty容器)搭建及使用实例详解

  3.上传mysql及ik中文分词器到 /data/solr-5.5.3/server/solr-webapp/webapp/WEB-INF/lib/下中文分词器的扩展分词等配置文件 上传到 /data/solr-5.5.3/server/solr-webapp/webapp/WEB-INF/classes (classes 目录需要自己创建)

  4.创建solrhome目录(用于存放上传的配置文件)及拷贝配置文件

    mkdir /data/solrhome

    mkdir /data/solrhome/myconf

    cp -r /data/solr-5.5.3/example/example-DIH/solr/solr/conf /data/solrhome/myconf

  5.修改myconf中conf下的solrconfig.xml及managed-schema 参考 这个。。。。(这里不做说明)

  6.上传配置文件到zookeeper(在/data/solr-.5.3/server/scripts/cloud-scripts/zkcli.sh 同样可以上传)

     进入zookeeper的bin下

      ./zkcli.sh -zkhost 192.168.17.142:2181,192.168.17.143:2181,192.168.17.144:2181 -cmd upconfig -confdir /data/solrhome/myconf/conf/ -confname test (上传文件夹)

      -confdir:这个指的是 本地上传的文件位置

      -confname:上传后在zookeeper中的节点名称

      ./zkcli.sh -zkhost 192.168.17.142:2181,192.168.17.143:2181,192.168.617.144:2181 -cmd putfile /configs/test/data-config.xml /data/solrhome/myconf/conf/data-config.xml (上传单个文件)

      参数说明 putfile 后 第一个/configs/test/data-config.xml 指的是 zookeeper中的配置文件 , /data/solrhome/myconf/conf/data-config.xml这个是本地文件路径

      注意: 单个文件上传先要删除,不然会报错。

  7.zookeeper集群操作上传的文件

    进入zookeeper的bin下

      ./zkCli.sh 连接zookeeper集群

      ls /configs/myconf 查看上传的配置文件

      delete /configs/myconf/solrconfig.xml 删除文件

      delete /configs/myconf 删除空文件夹

      get /configs/myconf/solrconfig.xml 查看文件内容

      rmr /configs/myconf 递归删除(慎重使用)

  8.启动solr集群

    进入 solr-5.5.3下

      ./bin/solr restart

  9.操作collection

    a.创建collection

      http://192.168.17.142:8983/solr/admin/collections?action=CREATE&name=test&numShards=3&replicationFactor=3&maxShardsPerNode=3&collection.configName=myconf

    b.删除

      http://192.168.17.142:8983/solr/admin/collections?action=DELETE&name=test

    c.重新加载

      http://192.168.17.143:8983/solr/admin/collections?action=RELOAD&name=test

  10.错误处理

    a.创建内核时出错。错误信息中ip是 192.168.17.1

       处理:修改 /data/solr-5.5.3/server/solr/solr.xml 文件 添加ip

       solrcloud(jetty容器)搭建及使用实例详解

    注意:为了尽可能的减少错误,配置文件应该先在单节点的solr中测试。没问题后上传到zookeeper节点中

以上就是solrcloud(jetty容器)搭建及使用实例详解的详细内容,更多请关注其它相关文章!