zoukankan      html  css  js  c++  java
  • Centos7:solr伪集群(SolrCloud)搭建

    JDK,tocmat环境搭建

    zookeeper集群安装

    • 解压缩zookeeper的压缩包
    • 创建data目录
    • 复制zoo_sample.cfg为zoo.cfg
    • 修改confg/zoo.cfg中
      dataDir=**/data
      clientPort=218X
    • 在zoo.cfg末位添加
    server.1=192.168.25.128:2881:3881
    server.2=192.168.25.128:2882:3882
    server.3=192.168.25.128:2883:3883
    
    • data目录下创建一个myid文件,自定义设置zookeeper实例id
    • 复制zookeeper文件夹三份,分别修改zoo.cfg配置,和myid

    启动zookeeper集群

    • 启动脚本
    cd /usr/local/src/solr-cloud/zookeeper2281/bin
    ./zkServer.sh start
    cd /usr/local/src/solr-cloud/zookeeper2282/bin
    ./zkServer.sh start
    cd /usr/local/src/solr-cloud/zookeeper2283/bin
    ./zkServer.sh start
    cd /usr/local/src
    
    • 查看状态
    cd /usr/local/src/solr-cloud/zookeeper2281/bin
    ./zkServer.sh status
    cd /usr/local/src/solr-cloud/zookeeper2282/bin
    ./zkServer.sh status
    cd /usr/local/src/solr-cloud/zookeeper2283/bin
    ./zkServer.sh status
    cd /usr/local/src
    
    • 暂停脚本
    cd /usr/local/src/solr-cloud/zookeeper2281/bin
    ./zkServer.sh stop
    cd /usr/local/src/solr-cloud/zookeeper2282/bin
    ./zkServer.sh stop
    cd /usr/local/src/solr-cloud/zookeeper2283/bin
    ./zkServer.sh stop
    cd /usr/local/src
    

    tomcat集群安装

    • 解压安装包
    • 复制4个tomcat
    • 分别配置不同tomcat web.xml三个端口,防止端口冲突

    部署solr集群

    • 将solr分别部署到每一个tomcat中
    • 创建4个目录,分别存放每一个solr对应的solrhome

    配置zookeeper管理solr配置文件

    • 上传配置文件到zookeeper
      命令路径:solr源码/example/scripts/cloud-scripts/
      /zkcli.sh -zkhost zookeeper1ip:端口号,zookeeper2ip:端口号,zookeeper3ip:端口号 -cmd upconfig -confdir conf路径 -confname myconf

    • 登陆zookeeper服务器查询配置文件
      zookeeper路径/bin
      ./zkCli.sh
      /configs/myconf

      ./zkCli.sh -server ip:端口//连接指定ip端口

    配置SolrHome

    修改每个solrhome的solr.xml文件

    <solrcloud>
        <str name="host">对应solr ip</str>
        <int name="hostPort">对应端口</int>
        <str name="hostContext">${hostContext:solr}</str>
        <int name="zkClientTimeout">${zkClientTimeout:30000}</int>
        <bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
      </solrcloud>
    

    关联Solr和zookeeper

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

    JAVA_OPTS="-DzkHost=zookeeper1ip:端口号,zookeeper2ip:端口号,zookeeper3ip:端口号"

    启动solr集群

    访问任意一台solr,菜单出现cloud

    配置集群

    • 添加集群

    如果集群中有四个solr节点,创建新集群collection2,将集群分为两片,每片两个副本。
    http://ip地址/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2

    附录:

    solr集群启动脚本

    cd /usr/local/src/solr-cloud/tomcat8180/bin
    ./startup.sh
    cd /usr/local/src/solr-cloud/tomcat8280/bin
    ./startup.sh
    cd /usr/local/src/solr-cloud/tomcat8380/bin
    ./startup.sh
    cd /usr/local/src/solr-cloud/tomcat8480/bin
    ./startup.sh
    cd /usr/local/src
    

    solr集群关闭脚本

    cd /usr/local/src/solr-cloud/tomcat8180/bin
    ./shutdown.sh
    cd /usr/local/src/solr-cloud/tomcat8280/bin
    ./shutdown.sh
    cd /usr/local/src/solr-cloud/tomcat8380/bin
    ./shutdown.sh
    cd /usr/local/src/solr-cloud/tomcat8480/bin
    ./shutdown.sh
    cd /usr/local/src
    
  • 相关阅读:
    datalist的用法
    SQL级联删除——删除主表同时删除从表——同时删除具有主外键关系的表
    js
    回调机制
    JS原型链
    多线程请求乌云链接
    Python高频技巧总结[基础篇]
    批量文本读取URL获取正常访问且保留对应IP
    Django基础之视图
    Django框架简介
  • 原文地址:https://www.cnblogs.com/-saligia-/p/9750423.html
Copyright © 2011-2022 走看看