本文只写具体的搭建过程,具体原理请看官网文档。国内博客都是基本上都是经过tomcat搭建的solr,本文是经过内部集成的jetty容器搭建。html
1、zookeeper集群搭建java
一、安装JAVA环境,版本1.8
二、下载zookeeper地址 https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/stable/
三、zookeeper集群安装方式本身百度吧,都差很少。
四、zookeeper一个重要的脚本,zkCli.sh,经过它能够交互式的对zookeeper集群里的配置自由操做
2、solrcloud集群搭建node
一、solr下载mysql
https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/5.5.5/
二、solr配置文件web
2.1)在/solr-5.5.5/server/solr/configsets下有配置文件例子,能够复制为配置文件 sql
cp -r configsets/data_driven_schema_configs test
2.2)solrconfig.xml、managed-schema、data-config.xml这个三个文件涉及配置(https://www.cnblogs.com/zhangtianyuan/p/6946456.html)apache
solrconfig.xml(https://wiki.apache.org/solr/DataImportHandler#Data_Import_Request_Handler)tomcat
https://wiki.apache.org/solr/DIHQuickStart
managed-schema,字段文件,老版本是schema.xml,这个两个的区别能够自行参考官方手册,前者是经过API的方式建立字段相对安全(此处修改后只会更改zookeeper集群中的配置文件,上传以前的配置文件是不会被修改的,这个能够在WEB页面建立后去看未上传以前的配置文件是否更改,经过zookeeper来管理配置文件,因此上述中zkCli.sh这个就很重要),后者能够经过API中添加字段,添加以后配置文件中也会出现,也能够在配置文件中修改,固然前者也能够在文件中修改(后者配置文件会被修改是由于不是solrcloud模式。。)。 安全
data-config.xml这个是在solrconfig.xml中配置的查询语句等。app
2.3)从mysql中导入数据须要添加jar包
一、从mysql官网中下载一个mysql-connector-java-5.1.25.zip压缩包,解压出一个mysql-connector-java-5.1.25-bin.jar包,将它分别copy到solr-5.5.5/server/lib和solr-5.5.5/server/solr-webapp/webapp/WEB-INF/lib当中(只copy到第一个路径应该就能够) 二、将solr-dataimporthandler-5.5.5.jar和solr-dataimporthandler-extras-5.5.5.jar从solr-5.5.5/dist/文件夹下copy到solr-5.5.1/server/solr-webapp/webapp/WEB-INF/lib当中(只copy第一个文件应该就能够)
2.4)上传solrcloud配置文件。
/opt/soft/solr-5.5.5/server/scripts/cloud-scripts/zkcli.sh -zkhost 192.168.60.175:2181,192.168.60.188:2181,192.168.60.177:2181 -cmd upconfig -confdir /opt/soft/solr-5.5.5/server/solr/test2/conf -confname test2
2.5)经过cloud模式开启solr,在/var/solr/node1下要配置solr.xml,这个能够从solr根目录下复制。须要修改host和port用于将信息注册到zookeeper。
/opt/soft/solr-5.5.5/bin/solr start -p 8983 -c -z 192.168.60.175:2181,192.168.60.188:2181,192.168.60.177:2181 -s /var/solr/node1
2.6)建立collection,这个collection就至关于非solrcloud模式下的core。
/opt/soft/solr-5.5.5/bin/solr create -c test2 -d /opt/soft/solr-5.5.5/server/solr/test2/conf -n test2 -s 3 -rf 2 -port 8983
此时solrcloud就搞好了。是否是比tomcat简单。