最近需要搭建一个cloudSolr集群,写下记录。基础环境是在centos6.5 64bit

3个下载地址:

1、 下载Solr-4.x http://lucene.apache.org/solr/downloads.html
2、下载Tomcat http://tomcat.apache.org/download-70.cgi
3、下载Zookeeper http://zookeeper.apache.org/releases.html

第一:安装zookeeper集群

zookeeper的安装比较简单

记得关闭防火墙,否则会提示启动失败(重要)
chkconfig iptables off 重启后生效
在zoo.cfg配置文件中
tickTime=
# The number of ticks that the initial
# synchronization phase can take
initLimit=
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/hadoop/package/zookeeper-3.4./data
# the port at which the clients will connect
clientPort=
server.=192.168.0.146::
server.=192.168.0.142::
server.=192.168.0.145:: 需要修改的:
dataDir=/home/hadoop/package/zookeeper-3.4./data
里需要创建一个myid文件里面的值是配置文件中server.后的值
如:server.=192.168.0.146:: 里面的值是1

第二: 安装tomcat+solr集成

参照我上篇文章tomcat集成solr

http://www.cnblogs.com/zhanggl/p/3897105.html

在主节点147 安装后,复制到148,149 服务器上。

第三zk和solr+tomcat集成

修改tomcat 下 配置文件:在主192.168.0.157 服务器上的tomcat 目录下bin的
配置文件

JAVA_OPTS = "
-DzkHost=192.168.0.157:2181,192.168.0.158:2181,192.168.0.159:2181
-Dbootstrap_confdir=/home/hadoop/package/solrhome/collection1/conf -Dcollection.configName=myconf
-Dbootstrap_conf=true
-DnumShards=2"

在192.168.0.158, 192.168.0.159 服务上的tomcat  bin目录下catalina.sh 添加

set JAVA_OPTS = -DzkHost=192.168.0.157:2181,192.168.0.158:2181,192.168.0.159:2181

打开后出现错误提示:

Loading of "/solr/zookeeper?wt=json" failed (HTTP-Status )

"Zookeeper is not configured for this Solr Core. Please try connecting to an alternate zookeeper address."

将配置文件复制到其他服务器上:

java -classpath .:/home/hadoop/cloudsolr/tomcat-7.0.55/webapps/solr/WEB-INF/lib/*  org.apache.solr.cloud.ZkCLI -cmd upconfig -zkhost 192.168.0.157:2181,1192.168.0.158:2181,192.168.0.159:2181 -confdir /home/hadoop/cloudsolr/solrhome/collection1/conf  -confname myconf

同步到节点:

java -classpath .:/home/hadoop/cloudsolr/tomcat-7.0.55/webapps/solr/WEB-INF/lib/*  org.apache.solr.cloud.ZkCLI -cmd linkconfig -collection collection1 -confname myconf -zkhost 192.168.0.157:2181,1192.168.0.158:2181,192.168.0.159:2181

错误提示:log4j:WARN No appenders could be found for logger (org.apache.zookeeper.ZooKeeper).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

错误提示

adoop@slave3 solrlib]$ java -classpath .:/home/hadoop/package/solrlib/*  org.apache.solr.cloud.ZkCLI -cmd upconfig -zkhost 192.168.0.157:2181,192.168.0.158:2181,192.168.0.159:2181 -confdir .:/home/hadoop/package/solrconfig -confname myconf
Failed to instantiate SLF4J LoggerFactory
Reported exception:
java.lang.NoClassDefFoundError: org/apache/log4j/Level
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:129)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:302)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:276)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:288)
at org.apache.solr.common.cloud.SolrZkClient.<clinit>(SolrZkClient.java:72)
at org.apache.solr.cloud.ZkCLI.main(ZkCLI.java:175)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Level
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 7 more
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Level
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:129)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:302)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:276)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:288)
at org.apache.solr.common.cloud.SolrZkClient.<clinit>(SolrZkClient.java:72)
at org.apache.solr.cloud.ZkCLI.main(ZkCLI.java:175)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Level
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 7 more

解决办法:下载http://yunpan.cn/cdpSQiMZbfe33 (提取码:49e0) 将jar导入即可

1、启动的时候错误提示:

Load collection config from:/collections/collection1
[coreLoadExecutor--thread-] ERROR org.apache.solr.common.cloud.ZkStateReader ?.Specified config does not exist in ZooKeeper:collection1
[coreLoadExecutor--thread-] ERROR org.apache.solr.core.CoreContainer ?.Error creating core [collection1]: Specified config does not exist in ZooKeeper:collection1
org.apache.solr.common.cloud.ZooKeeperException: Specified config does not exist in ZooKeeper:collection1

错误原因:

启动错误提示:

HTTP Status 500 - {msg=SolrCore 'collection1' is not available due to init failure: Could not load conf for core collection1:
Error loading solr config from solr/collection1/conf/solrconfig.xml,trace=org.apache.solr.common.SolrException: SolrCore 'collection1'
is not available due to init failure: Could not load conf for core collection1: Error loading solr config from solr/collection1/conf/solrconfig.xml at

solr +zookeeper+tomcat 集群搭建的更多相关文章

  1. haproxy+tomcat集群搭建

    web1和web2的部署可参考我之前的文章<Tomcat集群搭建>,这里就省去该过程了. #安装haproxy- .tar.gz cd haproxy-/ make TARGET=linu ...

  2. Tomcat集群搭建

    关于如何搭建Tomcat集群网上还是能搜到很多相关的教程,这里结合我自己在实际应用中的操作做下备忘. 案例说明: 这里以在本机部署的2个tomcat来做集群.当然,tomcat集群可以是分布式的,而差 ...

  3. 分享知识-快乐自己:zookeeper 伪集群搭建

    1):单一 zookeeper  搭建步骤 2):zookeeper 伪集群搭建 1):新建一个集群目录 [root@zoodubbo opt]# mkdir zookeeper_cluster 2) ...

  4. zookeeper伪集群搭建

    zookeeper伪集群搭建 1. 下载zookeeper: https://zookeeper.apache.org/ 2. 解压: tar -zxvf zookeeper-3.4.14.tar.g ...

  5. JAVAEE——宜立方商城08:Zookeeper+SolrCloud集群搭建、搜索功能切换到集群版、Activemq消息队列搭建与使用

    1. 学习计划 1.solr集群搭建 2.使用solrj管理solr集群 3.把搜索功能切换到集群版 4.添加商品同步索引库. a) Activemq b) 发送消息 c) 接收消息 2. 什么是So ...

  6. Zookeeper分布式集群搭建

    实验条件:3台安装linux的机子,配置好Java环境. 步骤1:下载并分别解包到每台机子的/home/iHge2k目录下,附上下载地址:http://mirrors.cnnic.cn/apache/ ...

  7. 初始zookeeper与集群搭建实例

    zookeeper是什么 Zookeeper,一种分布式应用的协作服务,是Google的Chubby一个开源的实现,是Hadoop的分布式协调服务,它包含一个简单的原语集,应用于分布式应用的协作服务, ...

  8. Zookeeper + Kafka 集群搭建

    第一步:准备 1. 操作系统 CentOS-7-x86_64-Everything-1511 2. 安装包 kafka_2.12-0.10.2.0.tgz zookeeper-3.4.9.tar.gz ...

  9. [dubbo实战] dubbo+zookeeper伪集群搭建

    zookeeper作为注册中心,服务器和客户端都要访问,如果有大量的并发,肯定会有等待.所以可以通过zookeeper集群解决. 一.为什么需要zookeeper呢? 大部分分布式应用需要一个主控.协 ...

  10. [dubbo实战] dubbo+zookeeper伪集群搭建 (转)

    zookeeper作为注册中心,服务器和客户端都要访问,如果有大量的并发,肯定会有等待.所以可以通过zookeeper集群解决. 一.为什么需要zookeeper呢? 大部分分布式应用需要一 个主控. ...

随机推荐

  1. Go语言基础:make,new, len, cap, append, delete方法

      前面提到不少Go的内建函数,这篇文章学习下如何使用.. make 先拿 make 开刀,可是一开始我就进入了误区,因为我想先找到他的源码,先是发现 src/builtin/builtin.go 中 ...

  2. MProtect使用小计【三】 – 权限管理

    说明 本篇简单的说一下怎么样使用的VMProtect的权限管理功能,使我们的程序拥有注册码的功能.只用的注册版的程序才能执行指定的函数. 同样这个功能VMProtect也有例子位置在:安装目录\VMP ...

  3. CSS:CSS Float(浮动)

    ylbtech-CSS:CSS Float(浮动) 1.返回顶部 1. CSS Float(浮动) 什么是 CSS Float(浮动)? CSS 的 Float(浮动),会使元素向左或向右移动,其周围 ...

  4. Django框架(六)—— 视图层:HttpRequest、HTTPResponse、JsonResponse、CBV和FBV、文件上传

    目录 视图层 一.视图函数 二.视图层之HttpRequest对象 三.视图层之HttpResponse对象 四.视图层之JsonResponse对象 五.CBV和FBV 六.文件上传 视图层 一.视 ...

  5. python3 递归函数return返回None

    今天写了一个函数,执行之后打印出来的结果是None,不明白,之后百度了一下,这里记一下过程,免得之后再踩坑 #!/usr/bin/python3# -*- coding:utf-8 -*- def b ...

  6. 三(2)、springcloud之Eureka集群配置

    1)原理说明** 服务启动后向Eureka注册,Eureka Server会将注册信息向其他Eureka Server进行同步,当服务消费者要调用服务提供者,则向服务注册中心获取服务提供者地址,然后会 ...

  7. LBP算子

    LBP算子特点 LBP(Local Binary Pattern),即局部二值模式,属于一种图像预处理算法,具有光照不变性和旋转不变性. 我目前做的项目是人脸表情识别,采用这种算法可以减少光照和人脸旋 ...

  8. WAMP中的mysql设置密码(默认密码为空)及phpmyadmin的配置

    来自:  http://wenku.baidu.com/link?url=J4K28e1kt-_ykJLsOtS1b5T6hKj5IzL5hXSKIiB133AvPCUXLlxGKScsBsxi0mA ...

  9. VS系列远程调试

    其实很多时候,远程调试的话,我还是更喜欢用WinDBG的, 首先,可以练习WinDBG的使用手段, 其次,可以增加WinDBG的熟练度, 最重要的,WinDBG在内核调试部分很常用,我也很喜欢它,所以 ...

  10. Java生产环境下性能监控与调优详解

    1:JVM字节码指令与 javapjavap <options> <classes>cd monitor_tuning/target/classes/org/alanhou/m ...