Solrcloud 高可用集群搭建

  一.准备环境
     1. 3台Linux 物理机或者虚拟机
        IP  :                        hostname :                  系统:
   192.168.1.106           master                        RedHat5.0
   192.168.1.107           dnode1                       RedHat5.0
   192.168.1.108           dnode2                       RedHat5.0

    2. 安装介质
        JDK             jdk-6u45-linux-i586-rpm.bin
        Solr             solr-4.6.0.zip
       zookeeper    zookeeper-3.4.5.tar.gz

二.  安装JDK
      在/etc/profile  配置JAVA_HOME      
  
三. zookeeper集群安装
 

  1)解压zookeeper 安装
       
tar -zxvfzookeeper-3.4.5.tar.gz

  2)进入zookeeper-3.4.5文件夹,创建data log

     mkdir /home/grid/data/zookeeper/log -p

     指定zookeeper的数据存放目录和日志目录

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

     拷贝zookeeper配制文件zoo_sample.cfg并重命名zoo.cfg

 

     cp /home/grid/zookeeper-3.4.5/conf/zoo_sample.cfg  /home/grid

/zookerper-3.4.5/conf/zoo.cfg

      修改zoo.cfg为以下内容

     tickTime=2000
     initLimit=10
     syncLimit=5
     dataDir=/home/grid/data/zookeeper
     clientPort=2181
     dataLogDir=/home/grid/data/zookeeper/log/
     server.1=master:2888:3888
     server.2=dnode1:2888:3888
     server.3=dnode2:2888:3888

    4)进入data文件夹建立对应的myid文件

     例如server.1  在192.168.56.11 data文件夹下的myid文件内容为1
     其它节点按后缀数字替换myid中的内容 
 

     5)zookeeper-3.4.5文件夹到其他机器


     6)
zookeeper

      进入bin #  ./zkServer.sh start

      查看集群状态 ./zkServer.shstatus 
   看到以下内容则认为集群启动成功
 

     图片

 

 

四. Solr集群安装

    

1)在/home/grid 新建mysolrhome,并赋于读写权限

2)将上传的solr.4.6.0压缩包解压缩,

   zip-zxvf solr-4.6.0.zip
 

3)solr.4.6.0/dist/solr-4.6.0.war复制到/home/grid/mysolrhome 并重命为solr.war

 

       cp /home/grid/solr-4.6.0/dist/solr-4.6.0.war/home/grid/mysolrhome/solr.war
 

4)将上传的tomcat解压缩

   tar-zxvf apache-tomcat-6.0.32.tar.gz

 

5)进入tomcat bin目录,启动tomcat
    
cd /home/grid/apache-tomcat-6.0.32/bin  进入bin目录
   
./startup.sh  启动tomcat  此时会在tomcat下的conf文件夹下多出一个目录Catalina
     
cd/home/grid/apache-tomcat-6.0.32/conf/Catalina/localhost

     新建solr.xml文件内容如下:

 

<?xmlversion="1.0" encoding="UTF-8" ?>

 

<Context docBase="/home/grid/mysolrhome/solr.war"debug="0" crossContext="false" > 

 

   <Environment name="solr/home"

 

    type="java.lang.String"

 

    value="/home/grid/mysolrhome"

 

    override="true" />

 

</Context>

 

    docBase="/home/grid/mysolrhome/solr.war"指定为solrcloud/solrhome下复制出来solrwar

 

6)tomcat 再次启动tomcat, webapps 下边多了解压出来的solr文件夹

 

进入solr/WEB-INF/ 下修改web.xml

 

  <!--

 

   <env-entry>

 

      <env-entry-name>solr/home</env-entry-name>

 

      <env-entry-value>/put/your/solr/home/here</env-entry-value>

 

      <env-entry-type>java.lang.String</env-entry-type>

 

    </env-entry>

 

   -->

 

改为:

 

<env-entry>

 

      <env-entry-name>solr/home</env-entry-name>

 

      <env-entry-value>/home/grid/mysolrhome</env-entry-value>

 

      <env-entry-type>java.lang.String</env-entry-type>

 

   </env-entry>

 

7)/home/grid/solr-4.6.0/example/solr文件夹下所有东西复制到 /home/grid/mysolrhome

 

  cp  -r/home/grid/solr-4.6.0/example/solr/* /home/grid/mysolrhome

 

8)复制solr-4.6.0/example/lib/ext下所有jar包到tomcat lib
   
cp/home/grid/solr-4.6.0/example/lib/ext/* /home/grid/apache-tomcat-6.0.32/lib/

  复制 solr-4.6.0/example/resources/log4j.properties  solr/WEB-INF/class

  如果没有class先创建class文件夹,并赋于写权限

cp

/home/grid/solr-4.6.0/example/resources/log4j.properties/home/grid/apache- tomcat-6.0.32/webapps/solr/WEB-INF/class/

 9)启动tomcat 访问 http://localhost:8080/solr 如图,至此单机版solr配制完成

Solrcloud 高可用集群搭建_第1张图片

                             

 

10)配制集群

zookeepertomcat关联

192.168.1.106台机修改tomcat bin目录下catalina.sh文件在第二行加入

 

 JAVA_OPTS="-Dbootstrap_confdir=/home/grid/mysolrhome/collection1/conf -Dcollection.configName=myconf -DzkHost=master:2181,dnode1:2181,dnode2:2181 -DnumShards=3"

其它节点修改tomcat bin目录下catalina.sh文件在第二行加入 

JAVA_OPTS="-DzkHost=master:2181,dnode1:2181,dnode2:2181"

现在整个solr集群配置完成 


 

创建集合

 

http://192.168.1.106:8080/solr/admin/collections?action=CREATE&name=mycollections&numShards=3&replicationFactor=3

 

任何一个ip均可访问

http://192.168.1.106:8080/solr/#/~cloud

Solrcloud 高可用集群搭建_第2张图片

 

OK如果顺利的话你会看到以上页面!

五.集群测试
   向集群导入测试文件对其进行索引:

 

Solrcloud 高可用集群搭建_第3张图片

测试搜索name属性包含Apple的文章,其搜索结果为:
 Solrcloud 高可用集群搭建_第4张图片 

 

大功告成!

 

 

 

 

 

 

 

你可能感兴趣的:(Solr)