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. 详解FindBugs的各项检测器 .

    FindBugs是一个静态分析工具,在程序不需运行的情况下,分析class文件,将字节码与一组缺陷模式进行对比,试图寻找真正的缺陷或者潜在的性能问题.本文档主要详细说明FindBugs 2.0.3版本 ...

  2. [C#基础]c#中的BeginInvoke和EndEndInvoke

    摘要 异步这东西,真正用起来的时候,发现事情还是挺多的,最近在项目中用到了异步的知识,发现对它还是不了解,处理起来,走了不少弯路.觉得还是补一补还是很有必要的. MSDN原文地址:https://ms ...

  3. JSF的CommandXxx组件的update用法总结

    Update all forms 1 update="@(form)" Update first form 1 update="@(form:first)" U ...

  4. ubuntu系统下更新jdk版本

    1. 添加软件源 sudo add-apt-repository ppa:webupd8team/java 2. 更新软件源 sudo apt-get update 3. 安装 jdk1.8 sudo ...

  5. 网页引导:jQuery插件实现的页面功能介绍引导页效果

    现在很多网站不仅是介绍,更多的是有一些功能,怎么样让客户快速的知道网站有哪些功能呢?这里pagewalkthrough.js插件能帮我们实现,它是一个轻量级的jQuery插件,它可以帮助我们创建一个遮 ...

  6. 关于外部引用JS,中文乱码的问题

    asp.net 页面默认编码为UTF-8, 如果js嵌套写在asp.net中,不会导致中文乱码,因为他们具有相同的编码 外部引用js由于编码格式与asp.net的编码不同,javascript编码默认 ...

  7. OC第二节 —— NSString和NSMutableString

    1.为什么需要NSString对象        答:在OC中创建字符串时,一般不使用C的方法,    因为C将字符串作为字符数组,所以在操作时会有很多不方便的地方,    在Cocoa中NSStri ...

  8. memcache安装

    windows下访问 http://pecl.php.net/package/memcache/3.0.8/windows 下载对应版本memcache的dll文件添加到php目录ext下 PHP.i ...

  9. C++多线程的几个重要方法解析CreateEvent / SetEvent /ResetEvent/ 等

    1.CreateEvent 是创建windows事件的意思,作用主要用在判断线程退出,程锁定方面. 函功能描述:创建或打开一个命名的或无名的事件对象. HANDLE m_hExit; m_hExit= ...

  10. mac os 基本命令

    unix 系统命令行 ,仅供参考   目录操作   命令名 功能描述 使用举例   mkdir 创建一个目录 mkdir dirname   rmdir 删除一个目录 rmdir dirname   ...