参考:https://my.oschina.net/u/1416405/blog/821187

1、Solr 单机

1.1、Solr下载

1、solr官网:http://lucene.apache.org/solr/

2、上传到服务器,解压压缩包:

1.2、Solr单机运行

1.2.1、内置Jetty运行

1、进入solr/bin目录,运行solr(solr5以上自带jetty)

提示不要采用root启动。添加solr用户,分配组

将solr目录权限设置为solr

切换用户,运行solr

访问solr管理页面:http://192.168.112.128:8983/solr/#/

2、创建核心:

可以看到没有找到核心配置文件,solr默认根路径是solr/server/solr,将solr/example/example-DIH/solr/solr 核心配置文件拷贝到 solr/server/solr 下面

cp -r /home/solr/example/example-DIH/solr/solr /home/solr/server/solr/my_core

要从新启动服务bin/solr restart

再次创建核心成功:

cp -r /home/solr/example/example-DIH/solr/solr /home/solr/server/solr/my_core1

在添加一个核心,重启 bin/solr restart

1.2.2、Tomcat运行

solr6使用tomcat8、jdk8  创建solr根路径 solr_home:

将solr/server/solr 复制到  solr_home中

将solr工程复制到tomcat8/webapps下面

修改solr根路径,修改solr工程中中web.xml:

将solr/dist和solr/server/lib/ext 下的jar包。复制到solr工程lib目录下面

在WEB-INF 中 创建classes文件夹,将/solr/solr/server/resources 中log4j.properties 复制到classes文件夹中

启动tomcat8:

没有权限。打开solr工程中 WEB-INF/web.xml,在最后将此段代码注释掉。

重新启动tomcat8(我这里端口修改成为8983,可以自己修改tomcat端口),必须访问/index.html:

2、SolrCloud集群模式

2.1、内置Jetty运行SolrCloud

solrcloud 配置集群由zookeeper管理,zookeeper相关,请看上几篇文章。

创建solr_clound_home 创建根目录,将solr_home中文件拷贝到solr_cloud_home,删除其中的核心:

--建立一个solr home
cp -r /home/solr/server/solr/* /home/solr_cloud_home

进入solr/,solr运行命令:./solr start -cloud -p 8983 -s "/solr6/solr_cloud_home/" -z "127.0.0.1:2181"

bin/solr start -cloud -p 8983 -s "/home/solr_cloud_home/" -z "cdh1:2181,cdh2:2181,cdh3:2181"

-cloud 以cloud方式启动

-p 指定端口

-s 指定根目录

-z 指定zookeeper(用ip:端口。集群:ip:端口,ip:端口... : 列如"192.168.112.128:2181,192.168.112.128:2182,192.168.112.129:2181",如果本服务器中参与zookeeper集群,可以直接用"127.0.0.1:端口")

访问页面http://192.168.112.128:8983/solr/index.html:

同上在另一台服务器上部署solr(注意,两台要使用同一zokeeper集群):

访问页面http://192.168.112.129:8983/solr/index.html:

2.2、Tomcat运行SolrCloud

在tomcat中中bin/catalina.sh 配置zookeeper路径(zk集群用,分隔):

另外的服务器上配置号1.2.2中tomcat以及solr.启动所有tomcat

如果不使用8983端口,则要修改solr根目录中的solr.xml端口配置为需要设置的端口

2.3、Collection操作

2.3.1、创建Collection

solr索引集合由zookeeper管理,所以我们创建核心,需要将配置文件上传到zookeeper,然后创建核心。

创建配置存放目录solr_cloud_collection将配置文件放在其中(solr/example/example-DIH/solr/solr 核心配置文件),这里命名为cloud_core(该文件只要上传到zookeeper之后就只有参考作用,solr实际使用配置为上传到zookeeper中的配置),只需要在一台服务器上面操作,其他集群服务器通过zookeeper共享:

1、由solr命令 上传文件+创建核心(一步到位)

进入solr/bin目录,使用solr命令:

./solr create_collection -c cloud_core -shards 2 -replicationFactor 2 -d /solr6/solr_cloud_collection/cloud_core/conf -p 8983

-c 核心名称

-shards 分片数量

- replicationFactor 副本数量 (一般指有几台solr集群)

控制台:

可以看到上传到zookeeper中的配置在solr控制台展示:

2、可以通过命令行工具上传配置到zookeeper,然后通过访问api形式创建collection

进入/solr6/solr/server/scripts/cloud-scripts 目录:

使用命令,上传配置到zookeeper ./zkcli.sh -cmd upconfig -zkhost 127.0.0.1:2181 -confdir /solr6/solr_cloud_collection/cloud_core/conf -confname cloud_core1

-cmd upconfig:上传文件

-zkhost:zookeeper地址(集群用,分隔)

-confdir:配置地文件目录

- confname:名称

使用访问api形式创建collection:

curl"http://localhost:8983/solr/admin/collections?action=CREATE&name=cloud_core1&numShards=2&replicationFactor=2&maxShardsPerNode=2&collection.configName=cloud_core1"

也可以直接在控制台创建collection:

2.3.2、删除 Collection

1、通过控制台删除collection

2、通过访问api形式删除:

http://localhost:8983/solr/admin/collections?action=DELETE&name=mycollection

删除collections不会删除zookeeper中的配置信息

2.3.3、修改上传managed-schema(schema.xml)文件

1、上传schema.xml文件与新建collection上传配置文件到zookeeper相似,替换对应配置中的schema.xml文件

./zkcli.sh -zkhost 127.0.0.1:2181 -cmd putfile /configs/cloud_core/ managed-schema /solr6/tmp/ managed-schema

-cmd putfile:修改配置

/configs/cloud_core/ managed-schema(schema.xml:solr6以下使用):为zookeeper中节点位置

重新加载collection

curl "http://127.0.0.1:8983/solr/admin/collections?action=RELOAD&name=cloud_core"

3、其他

1、solr6 最好使用tomcat8、jdk8、否则可能出现各种错误或者异常

2、solr6可以直接在管理页面新增,删除字段:

3、文章推荐

http://www.solr.cc/

http://blog.csdn.net/zcl_love_wx/article/details/51907488

http://blog.csdn.net/jiangchao858/article/details/52518190

http://blog.csdn.net/l1028386804/article/details/52090099

http://eksliang.iteye.com/blog/2124078

4、开源项目推荐(包括对solr基本操作)

https://git.oschina.net/bodsite/bodsite

SolrCloud6.3 单机、集群、内置jetty、tomcat搭建、对collection操作的更多相关文章

  1. zookeeper单机集群搭建

    1. 下载zookeeper 参考官方文档下载一节:https://zookeeper.apache.org/doc/current/zookeeperStarted.html#sc_Download ...

  2. 阿里云构建Kafka单机集群环境

    简介 在一台ECS阿里云服务器上构建Kafa单个集群环境需要如下的几个步骤: 服务器环境 JDK的安装 ZooKeeper的安装 Kafka的安装 1. 服务器环境 CPU: 1核 内存: 2048 ...

  3. RabbitMQ入门教程(十四):RabbitMQ单机集群搭建

    原文:RabbitMQ入门教程(十四):RabbitMQ单机集群搭建 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://b ...

  4. Zookeeper的单机&集群环境搭建

    单机环境的安装 首先下载ZK的二进制安装包:http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/ 将安装包上传到Linux上: 进行解 ...

  5. 通过VMware的PowerCLI配置集群内指定主机的vMotion功能

    PowerCLI是VMware开发的基于微软(MSFT)的PowerShell的命令行管理vSphere的实现,因此在批量化操作方面CLI会减轻很多GUI环境下的繁琐重复劳作. 现有场景中有大量的物理 ...

  6. 玩转nodeJS系列:使用原生API实现简单灵活高效的路由功能(支持nodeJs单机集群),nodeJS本就应该这样轻快

    前言: 使用nodeJS原生API实现快速灵活路由,方便与其他库/框架进行整合: 1.原生API,简洁高效的轻度封装,加速路由解析,nodeJS本就应该这样轻快 2.不包含任何第三方库/框架,可以灵活 ...

  7. Elasticsearch从入门到精通之Elasticsearch集群内的原理

    上一章节我介绍了Elasticsearch安装与运行,本章节及后续章节将全方位介绍 Elasticsearch 的工作原理 在这个章节中,我将会再进一步介绍 cluster . node . shar ...

  8. Linux之为集群内的机器设定主机名

    作业二:为集群内的机器设定主机名,利用/etc/hosts文件来解析自己的集群中所有的主机名,相应的,集群的配置应该改成使用主机名的方式 1.主机信息配置并解析 [root@localhost ~]# ...

  9. Elasticsearch集群内的原理

        一个运行中的 Elasticsearch 实例称为一个 节点,而集群是由一个或者多个拥有相同 cluster.name 配置的节点组成, 它们共同承担数据和负载的压力.当有节点加入集群中或者从 ...

随机推荐

  1. 20170405xlVBA快速录入

    Dim Rng As Range Dim Arr As Variant Dim LastCell As Range Dim FindText As String Dim ItemCount As Lo ...

  2. 请求和响应:类ActionController::Base ; 类ActionDispatch::Request

    扩展:ActionController::Base < Metal 2个基本主题: Get and Show do and redirect Requests 每个请求,由router决定了co ...

  3. Apache Spark探秘:利用Intellij IDEA构建开发环境

    1)准备工作 1)  安装JDK 6或者JDK 7      或者JDK8  mac 的  参看http://docs.oracle.com/javase/8/docs/technotes/guide ...

  4. Razor视图引擎 语法学习

    下面就和大家分享下我在asp.net官网看到的资料,学习到的点语法.1.通过使用@符号,可以直接在html页面中写C#或者VB代码:运行后: 2.页面中的C#或者VB代码都放在大括号中.运行后: 3. ...

  5. java redis client jedis 测试

    package cn.byref.demo1; import java.util.HashMap; import java.util.List; import java.util.Map; impor ...

  6. 使用axios发送post请求,将JSON数据改为为form类型

    我的github(PS:希望star):https://github.com/thWinterSun/v-admin 通常前端通过POST请求向服务器端提交数据格式有4中,分别是"appli ...

  7. 线程同步,条件变量pthread_cond_wait

    与互斥锁不同,条件变量是用来等待而不是用来上锁的.条件变量用来自动阻塞一个线程,直到某特殊情况发生为止.条件变量使我们可以睡眠等待某种条件出现.条件变量是利用线程间共享的全局变量进行同步的一种机制,主 ...

  8. SDL检查

    在用 Visual Studio 编译比较早的代码时,经常会遇到错误: 错误 C4996 'wcscpy': This function or variable may be unsafe. Cons ...

  9. POJ 2965贪心神解

    貌似和POj1753一样是一般都是用为位运算+枚举做的.但是捏.这里用了贪心算法很容易.怎么样才能做到只把当前位置的+改为-而不改变其它所有位置的符号呢.嗯.就是把当前位置所在的行和列所在的元素都反转 ...

  10. jsp jsp_javabean

    javaBean的定义 JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法暴露 ...