Solr是一个企业级搜索服务器,对外提供Web-Service接口,用户可以通过http请求,向搜索引擎提交xml或者json格式的数据,生成索引;然后可以通过http get请求查找,获取返回的xml或者json等多种格式的数据。

  首先去官网下载solr安装包,网址是:https://lucene.apache.org/solr/  进入后单击导航栏的DOWNLOAD按钮,稍等几秒页面会自动跳转至镜像选择页面,选择相应的服务器即可,比如此时我的最终网址为:http://mirror.bit.edu.cn/apache/lucene/solr/5.4.1/当然我们要下载其他版本直接将后面的5.1.4目录去掉,访问上一级即可,这时候就可以选择相应的版本了,我这里选择solr 5.2.1的版本配置,这里我下载solr-5.2.1.tgz安装包

  

  下载完之后上传到服务器指定目录,安装solr的前提是必须配置zookeeper,当然包括一系列的主机名网络配置等等,在配置好zookeeper的前提下,另外要关闭防火墙,一定要3台机器都先启动zookeeper服务,这里三台主机分别为:hadoopha,hadoop1,hadoop2

  做好准备工作后就可以开始安装了,进入solr安装包所在的目录,执行命令提取安装脚本:

tar xzf solr-5.2..tgz solr-5.2./bin/install_solr_service.sh --strip-components=

  释放完脚本之后开始执行安装

./install_solr_service.sh solr-5.2..tgz -i /opt -d /var/solr -u solr -s solr -p 

  其中参数的意义-i代表安装的目录,默认为/opt;-d指定solr写文件的目录,包括索引、日志、初始配置等,默认为/var/solr;-u指定solr文件和进程所属用户,默认为solr,在安装过程中脚本会自动创建solr账号;-s指定创建到系统服务的名称,默认是solr,也就是/etc/init.d/solr可以用service来启动;-p指定服务的监听端口默认为8983。可以看出上面指定的参数都是默认所以安装命令可以等效为:

./install_solr_service.sh solr-5.2..tgz

  稍微等待安装成功服务就自动启动了,接下来修改配置文件

vim /var/solr/solr.in.sh

  将SOLR_JAVA_MEM前的#去掉,默认为:SOLR_JAVA_MEM="-Xms512m -Xmx512m",这个根据自己计算机的硬件配置进行设置,我这里虚拟机内存为1G,所以这里直接默认512m没有修改。

  

  然后同样的方式配置ZK_HOST="hadoopha:2181,hadoop1:2181,hadoop2:2181"这里指定的是zookeeper所有节点的列表,用英文逗号分隔,如果是为了统一放在zookeeper下的指定节点中,比如/solr下,那么应该写成:ZK_HOST="hadoopha:2181,hadoop1:2181,hadoop2:2181/solr",到运行的时候这个节点需要自己进行create

  

  然后配置SOLR_HOST="hadoopha"

  

  根据上面的注释解释可以知道,当单机测试时默认使用localhost;生产环境中应该使用所在集群中的名称,因此这里应配置本机的主机名,待会其他两个节点应该分别填写hadoop1、hadoop2

  到这里就配置完了,保存退出,然后使用命令:/etc/init.d/solr restart启动solr

  然后其他两个节点进行相同的配置,最终都启动起来

  接下来测试新建一个collection,进入其中任何一台主机,分别执行下面命令:

$ cd /opt/solr/server/scripts/cloud-scripts
$ ./zkcli.sh -zkhost localhost: -cmd upconfig -confdir /opt/solr/server/solr/configsets/sample_techproducts_configs/conf -confname test

  同样说明,如果上面指定了zookeeper的地址是/solr,那么-zkhost参数应该写localhost:2181/solr

  好了,执行到这就完成了上传配置操作,然后新建collection:

curl "http://192.168.1.42:8983/solr/admin/collections?action=CREATE&name=test&numShards=3&replicationFactor=3&maxShardsPerNode=3&collection.configName=test"

  或者直接用浏览器访问上面的url就建立好了一个test的collection,几台节点之间都可以创建副本从而进行同步检索,可以通过浏览器访问http://192.168.1.42:8983/solr点击Cloud->Graph可以看到节点的分布情况

  

  到这里Solr集群就配置完毕了,可以用多种方式灵活的添加索引进行检索等等更多的API可以参考官方wiki:http://wiki.apache.org/solr/

SolrCloud环境配置的更多相关文章

  1. Win7下单机版的伪分布式solrCloud环境搭建Tomcat+solr+zookeeper【转】

    Win7下单机版的伪分布式solrCloud环境搭建Tomcat+solr+zookeeper 1.软件工具箱 在本文的实践中,需要用到以下的软件: Tomcat-7.0.62+solr-5.0.0+ ...

  2. uboot环境配置

    uboot环境配置 通过配置uboot让它在启动过程中从tftp获取内核和设备树,并从在加载内核之后把通过启动参数将"从nfs挂载根文件系统"传入内核.这个配置主要是通过uboot ...

  3. 史上最全Windows版本搭建安装React Native环境配置

    史上最全Windows版本搭建安装React Native环境配置 配置过React Native 环境的都知道,在Windows React Native环境配置有很多坑要跳,为了帮助新手快速无误的 ...

  4. Electron的环境配置

    原文地址http://huisky.com/blog/161218121551123 本文介绍了Electron的环境配置,包括Electron下载.nodejs下载安装.NPM+Bower安装配置. ...

  5. Python开发环境配置

    好久没有写博客了,自从6月份毕业后,进入一家做书法.字画文化宣传的互联网公司(www.manyiaby.com),这段时间一直在进行前端开发,对于后端的使用很少了,整天都是什么html.css.jav ...

  6. PHP_环境配置_python脚本_2017

    Apache配置 需要安装:VC2015 httpd-2.4.16-win32-VC14.zip VC14就是2015的环境. 又比如:php-5.6.12-Win32-VC11-x86 VC11就是 ...

  7. PHP环境配置

    PHP环境配置 1.Apache的安装 第一步: 1.    双击httpd-2.2.17-win32-x86-no_ssl.msi.出现 Windows 标准的软件安装欢迎界面,直接点“Next”继 ...

  8. Visual studio 通用开发环境配置:SDL,FFMPEG为例

    引言 每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤: 下载库文件,这里假定是已经预先编译完成的. 配置库文件的包含目录(include)和库 ...

  9. windows 7下React Native环境配置

    React Native 是 Facebook 推出的一个用 Java 语言就能同时编写 ios,android,以及后台的一项技术,它可以做到实时热更新 .FaceBook 也号称这们技术是 “Le ...

随机推荐

  1. SignalR 资料

    链接:http://www.cnblogs.com/royding/p/3919134.html

  2. JMX整理

    阅读目录 Standard MBean与MXBean的区别 实现 Notification 认证与授权 JConsole Custom Client What and Why JMX JMX的全称为J ...

  3. C语言动态内存分配

    考虑下面三段代码: 片段1 void GetMemory(char *p) { p = (); } void Test(void) { char *str = NULL; GetMemory(str) ...

  4. SQL笔记 - CTE递归实例(续):显示指定部门的全称

    前一篇文章中已经可以取得所有部门的全称,但现在又有个新的需求: 只想得到某一个部门的部门全称,虽然可以用where条件来过滤,但是会有点小浪费. 这时我们可以从后往前找,先看下效果: 最后一条就是,行 ...

  5. Slave_SQL_Running: No mysql同步故障解决方法

    Slave_SQL_Running: No mysql同步故障解决      今天检查数据库发现一台MySQL Slave未和主机同步,查看Slave状态:mysql> show slave s ...

  6. JVM执行引擎总结(读《深入理解JVM》) 早期编译优化 DCE for java

    execution engine: 运行时栈current stack frame主要保存了 local variable table, operand stack, dynamic linking, ...

  7. SQL pivot 基本用法 行列转换 数据透视

    SQL通过pivot进行行列转换 数据透视 可直接在sql server 运行 传统操作 和 pivot create table XKCl (name nchar(10) not null, 学科 ...

  8. Mac Pro 编译安装 Nginx 1.8.1

    #下载相关源码包,统一放到 /usr/local/src 目录下: http://nginx.org/download/nginx-1.8.1.tar.gz http://zlib.net/zlib- ...

  9. 改造 ThinkPHP,弃用 D() 等魔术函数

    ThinkPHP 是国内比较优秀的 PHP 框架,但有些地方不是很好,比如那些 魔术函数 D(),用它返回的类实例,在各个IDE(如 PhpStorm)下根本识别不了,导致如下问题: 1.不支持 代码 ...

  10. MAS 移动业务整合系统

    AppCan MAS是基于高性能NODEJS架构开发的企业移动后端整合系统,内置各种标准协议组件,统一移动业务前后端标准开发技术:同时通过基于策略配置的数据缓存机制,聚合业务数据并发连接不同的后端业务 ...