一、单机版的solr部署

我的是在windows下安装的,linux同理

1. 安装JDK8,并配置好环境变量,一般我们经常开发的电脑上应该都有JDk了,所以这一步可以忽略。

2. 解压solr6.3

3. 拷贝分词相关JAR包到你solr目录下的server\solr-webapp\webapp\WEB-INF\lib中,如:ansj-seg.jar  nlp-lang.jar等

4.在文件夹中创建solr core:

在solr目录下的server/solr下创建一个文件夹collection,一般是复制已有的collection,然后编辑collection文件夹下conf配置文件中的schema.xml,里面就是你的表结构(包括:字段,分词包引入,字段类型,拷贝字段,动态字段等)

因为solr版本是6.3,因此不需要用tomcat建立服务器。

5.开启solr:

在cmd命令下输入

cd sorl/solr-6.3.0/bin/solr start -f

6.在浏览器中输入solr地址,在界面上创建core:

如:192.168.1.100:8983/solr/admin

打开后显示solr 界面:

在solr界面中选中Core Admin 然后点击Add Core

输入:

core的名字 (collection)

data的路径(默认在server/solr/collection/)

配置文件schema的名字(默认为schema.xml 或者schema)

注意:如果有managed-schema文件,应该将他重命名为schema.xml,当创建好core后系统会生成一个managed-schema和schema.xml.bak文件

solr配置文件的名字solrConfig.xml

填写完毕重启solr即可

其它命令:
$ bin/solr start -f 前台运行
$ bin/solr start -p 8984 指定端口 默认8983
$ bin/solr stop -p 8983 关闭solr,如果不指定端口,可用-all关闭单机上所有实例
$ bin/solr status 当前服务器上solr运行状态

一、 单机版tomcat下安装solr

一、 环境

solr 6.3.0  下载地址 http://archive.apache.org/dist/lucene/solr/6.3.0/

jdk 1.7,1.8

tomca,7,8

二、 安装solr到tomcat

1.  解压solr ,把 solr\solr-6.3.0\server\solr-webapp下的 webapp 文件夹拷贝到tomcat 的webapps下,重命名为solr,也可以是其他名字;

( 注意,此处有的教程错误的将solr-webapp文件夹进行拷贝,这会导致solr启动不了)

2. 拷贝solr-6.3.0\server\lib\ext 下的jar包到 tomcat\webapps\ 下solr 项目的WEB-INF\lib下;拷贝solr-6.3.0\dist 下solr-dataimporthandler jar 包,solr-dataimporthandler-extras-6.3.0.jar 包 到 tomcat\webapps\ 下solr 项目的WEB-INF\lib下

3. 拷贝solr-6.3.0\server 下的solr文件夹到E盘或其它非中文目录下,重命名为solrhome;

4. 修改tomcat\webapps\ solr(solr的项目名)\WEB-INF\web.xml, 找到如下代码,去掉注释,/put/your/solr/home/here 改为你自己的solrhome的路径,         如:E:/solr-home

<env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>E:/solr-home</env-entry-value>
       <env-entry-type>Java.lang.String</env-entry-type>
    </env-entry>

5. 拷贝solr-6.3.0\server\resources下的log4j.properties到tomcat\webapps\solr\WEB-INF\classes,如果WEB-INF下没有classes文件那么就创建一个classes文件夹。

6. 启动tomcat, 输入http://localhost:8983/solr/index.html (solr默认端口为8983)

启动solr用cmd指令:

看到如下界面:

三、添加第一个core

  • 进入到D:\solr\solr-6.3.0\server\solr下,新建一个文件夹:cores  

    1 进入到server\solr\configsets\sample_techproducts_configs 文件夹,将此文件夹下的conf 目录拷贝到刚刚建立的core的文件夹下,即我的cores文件夹下

  • 2  在浏览器中输入http://localhost:8983/solr/index.html,进入solr管理页面,点击左侧的add core,在name 和instanceDir下都输入cores(在步骤1中取得名称) ,点击add core即可 

-此时再输入http://localhost:8983/solr/index.html, 在左侧即可看见刚刚建立的core

  • 然后在进入到\cores目录,此时会发现多了一个data文件夹和一个properties文件,如图:

data目录,用于存储索引文件,core.properties文件用于存放core的配置信息

到此solr的搭建,以及第一个core的就到此结束了

二、分布式solr部署

1.部署 zookeeper

1)下载zookeeper3.4.6,分别在三台机器上(192.168.2.124,192.168.2.125,192.168.2.126)解压,路径为: /home/zookeeper-3.4.6
2)配置 zookeeper/conf/zoo.cfg,如:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/zooData
#log目录,建议和data目录分开存储
dataLogDir=/home/zooData

#注:这里的home一般是linux下的home,我们也可以选其他文件路径如:/data
# the port at which the clients will connect
clientPort=2181
server.1=192.168.2.124:2888:3888
server.2=192.168.2.125:2888:3888
server.3=192.168.2.126:2888:3888
注:上面三个是集群服务器的地址
3)在所有zookeepr服务器dataDir目录增加myid文件,写对应服务器编号1、2...

2 部署solrCloud

分别在三台机器上(192.168.2.124,192.168.2.125,192.168.2.126)解压,路径为: /home/solr/solr-6.3.0
1)修改 bin/solr.in.sh ,主要修改以下配置:
ZK_HOST="192.168.2.124:2181,192.168.2.125:2181,192.168.2.126:2181"
SOLR_HOST="192.168.2.126" #不修改默认为localhost,会导致其它节点无法启动
SOLR_TIMEZONE="Asia/Shanghai"
SOLR_HOME=/home/solr/solrData

2)上传solr.xml到zookeeper
./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:2181 -cmd putfile /solr.xml /home/solr/solrData/solr.xml

3) bootstrap solrCloud
./server/scripts/cloud-scripts/zkcli.sh -zkhost 127.0.0.1:2181 -cmd bootstrap -solrhome /home/solr/solrData

3.集群启动,创建collection,修改配置,
1)、ZooKeeper的集群启动(124,125,126,同时启动)
/home/zookeeper-3.4.6/bin/zkServer.sh start

2)、solr启动
/home/solr/solr-6.3.0/bin/solr start -force
/home/solr/solr-6.3.0/bin/solr start status(查看启动状态)
4、修改schema文件
1).添加字段,修改managed-schema文件(两种方式:1.直接在linux vim下编辑;2.在本机编辑好后传输到对应位置如:/home/collections/collection1/conf/managed-schema)

注:如果需要新的解析包不仅需要改字段,同时要引入solrConfig.xml中的lib
solrConfig.xml中
<!-- 启用icu分析包
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lib/" regex=".*\.jar" />
-->
2).上传config,linux下执行如下命令:
/home/solr/solr-6.3.0/server/scripts/cloud-scripts/zkcli.sh --zkhost 127.0.0.1:2181 -cmd upconfig -confname collectionY -confdir /home/collections/collectionY_configs/conf
注:collectionY指的是solr中collection的configName;
collectionY_configs指得是指定的配置文件所在文件夹,里面的schema.xml是字段和类型配置文件

5.collection的创建,在浏览器中执行
http://192.168.2.124:8983/solr/admin/collections?action=CREATE&name=&replicationFactor=&createNodeSet=
注:collection1指的是solr中创建的collection名称;collectionY指的是solr中collection1的configName;

6.更新collection
http://192.168.2.124:8983/solr/admin/collections?action=RELOAD&name=collection1

7.删除collection
http://192.168.2.124:8983/solr/admin/collections?action=DELETE&name=collection1

8 配置中文分词插件(优先选用ansj)
1 ansj插件
1)安装插件
在每台solr服务器上,将ansj_seg-5.1.0.jar nlp-lang-1.7.2.jar nutz-1.r.58.jar ansj-seg-solr6.jar拷贝到server/solrwebapp/webapp/WEB-INF/lib
2)schema配置
<fieldType name="text_cn" class="solr.TextField" positionIncrementGap="100">
  <analyzer type="index">
    <tokenizer class="*.*.*.solr.AnsjTokenizerFactory" isQuery="false" />
  </analyzer>
  <analyzer type="query">
    <tokenizer class="*.*.*..solr.AnsjTokenizerFactory" />
  </analyzer>
</fieldType>

该文章是原创,转载请注明来源:http://www.cnblogs.com/Lxiaojiang/p/6737323.html

单机版solr6.3和分布式solr6.3的安装部署的更多相关文章

  1. 分布式文件系统之FastDFS安装部署

    前面我们了解了分布式文件系统mogilefs的框架以及安装部署和简单使用,回顾请参考https://www.cnblogs.com/qiuhom-1874/tag/MogileFS/:今天我们来了解下 ...

  2. solr6安装部署

    难得写篇自己的原创文档了,哈哈哈,原谅我知识浅薄,积淀太少 一.涉及到的软件和环境jdk1.8.0_92,tomcat8,zookeeper3.4.8,solr6.1.0(solr6需要jdk8以上环 ...

  3. Hadoop分布式HA的安装部署

    Hadoop分布式HA的安装部署 前言 单机版的Hadoop环境只有一个namenode,一般namenode出现问题,整个系统也就无法使用,所以高可用主要指的是namenode的高可用,即存在两个n ...

  4. 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署

    少啰嗦,直接装 看过上一篇分布式文件系统 - FastDFS 简单了解一下的朋友应该知道,本次安装是使用目前余庆老师开源的最新 V5.05 版本,是余庆老师放在 Github 上的,和目前你能在网络上 ...

  5. 基于开源Dubbo分布式RPC服务框架的部署整合

    一.前言 Dubbo 作为SOA服务化治理方案的核心框架,用于提高业务逻辑的复用.整合.集中管理,具有极高的可靠性(HA)和伸缩性,被应用于阿里巴巴各成员站点,同时在包括JD.当当在内的众多互联网项目 ...

  6. hbase单机环境的搭建和完全分布式Hbase集群安装配置

    HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...

  7. 组件-------(一)redis系列--安装部署redis+实现redis分布式缓存 java+Spring+redis

    目的:解决单机session不能共享问题,插入查询数据库时间效率问题,实现分布式缓存. 准备材料:Redis 下载链接 http://pan.baidu.com/s/1dEGTxvV 相关jar包如果 ...

  8. 淘宝分布式 key/value 存储引擎Tair安装部署过程及Javaclient測试一例

    文件夹 1. 简单介绍 2. 安装步骤及问题小记 3. 部署配置 4. Javaclient測试 5. 參考资料 声明 1. 以下的安装部署基于Linux系统环境:centos 6(64位),其他Li ...

  9. 日志采集框架Flume以及Flume的安装部署(一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统)

    Flume支持众多的source和sink类型,详细手册可参考官方文档,更多source和sink组件 http://flume.apache.org/FlumeUserGuide.html Flum ...

随机推荐

  1. 使用C++11的thread取代QThread

    因为在做的工程项目里使用了Qt,而实际上不涉及到屏幕显示,工程代码里使用了QThread,且没有使用Qt核心的信号与槽,为了以后移植准备使用更加通用的C++11 stl中的thread取代QThrea ...

  2. LWIP在STM32上的移植

    本文做记录摘抄,加上自己的体会: 文章标题:STM32使用LWIP实现DHCP客户端 http://www.cnblogs.com/dengxiaojun/p/4379545.html 该文章介绍了几 ...

  3. nodejs 实战

    使用 Koa + MongoDB + Redis 搭建论坛系统 「新手向」koa2从起步到填坑 基于koa2和react的PC端脚手架 一键生成koa/koa2项目: nodejs原生,express ...

  4. ruby hash排序

    参考文章:http://blog.csdn.net/ppp8300885/article/details/49933305 a={a:1,b:20,c:3,d:0,e:7}逆序 a.sort{|k,v ...

  5. [树套树]K大数查询

    有N个位置,M个操作.操作有两种,每次操作如果是1 a b c的形式表示在第a个位置到第b个位置,每个位置加入一个数c如果是2 a b c形式,表示询问从第a个位置到第b个位置,第C大的数是多少.为了 ...

  6. vscode——配置终端集成bash和cmd

    前言 配置后bash和cmd是集成的,输入bash回车则进入bash,输入cmd回车则进入cmd 步骤 首先肯定是需要打开我们的vscode咯~ 进入终端设置 配置shell路径 根据自己的系统来复制 ...

  7. JS基础篇--JS的event.srcElement与event.target(触发事件对象)

    IE下,event对象有srcElement属性,但是没有target属性; Firefox下,event对象有target属性,但是没有srcElement属性.但他们的作用是相当的,即: fire ...

  8. Github--开源代码仓库式系统(转)

    要了解Github,我们首先要知道Git,Git是管理代码的工具,写代码不是件轻松的事儿,一个人写的时候已经不轻松了,一群人写就更不轻松了,但这世界上很多事都是怎么不轻松怎么来的,大部分人都会和别人一 ...

  9. uoj103 apio2014 Palindromes

    题目链接:http://uoj.ac/problem/103 题解: 首先,我们可以用后缀自动机算出每个字符串的出现次数.然后我们可以用manacher找出所有不同的回文串(o(n)个),统计答案即可 ...

  10. Gym 100962G Green Day (找规律)

    题意:你用k 个生成树构成一个完全图. 析:n 个点的完全图有n(n-1)/2个边,一个生成树有n-1个边,你有k 个生成树 即边数等于 K(n-1) ,即  n(n-1)/2 == k(n-1)   ...