1.选取三台服务器

  由于机器比较少,现将zookeeper和solr都部署在以下三台机器上。(以下操作都是在172.16.20.101主节点上进行的哦)

  172.16.20.101 主节点

  172.16.20.102 从节点

  172.16.20.103 从节点

2.Zookeeper集群部署

  1)访问官网下载zookeeper安装包,我用的是zookeeper-3.4.8.tar.gz

  2)解压安装包,我是解压到自己新建的目录/data/zookeeper下。

  tar -zxvf zookeeper-3.4.8.tar.gz

  3)在/data/zookeeper目录下新建data,logs两个文件夹。

  4)进入zookeeper-3.4.8/conf目录,把zoo_sample.cfg文件改成zoo.cfg

  cp zoo_sample.cfg zoo.cfg

  5)修改zoo.cfg文件,需要修改以下几个地方

  dataDir=/data/zookeeper/data

  dataLogDir=/data/zookeeper/logs

  clientPort=2181

  在文件末尾添加:

  server.1=172.16.20.101:2888:3888

  server.2=172.16.20.102:2888:3888

  server.3=172.16.20.103:2888:3888

  6)将配置好的zookeeper复制到另外两台服务器上。

  scp -r /data/zookeeper root@172.16.20.102:/data

  scp -r /data/zookeeper root@172.16.20.103:/data

  7)分别在三台服务器的/data/zookeeper/data目录下新建myid文件,内容分别为server.1,server.2,server.3后面的数字,例如:

  echo "1" > myid

  8)分别进入三台服各器的/data/zookeeper/zookeeper-3.4.8/bin目录下,启动服务。

  ./zkServer.sh start

  9)启动完成后,查看服务状态。

  ./zkServer.sh status

3.Solr分布式集群部署

  1)访问Apache官网下载solr安装包,我用的是solr-5.2.1.zip包。

  2)解压安装包,我是解压到自己新建的目录/data/solr下。

  unzip solr-5.2.1.zip

  3)修改/data/solr/solr-5.2.1/bin/solr.in.sh文件

  SOLR_JAVA_MEM="-Xms1G -Xmx1G"

  ZK_HOST="172.16.20.101:2181,172.16.20.102:2181,172.16.20.103:2181"

  4)将配置好的solr复制到另外两台服务器上。

  scp -r /data/solr root@172.16.20.102:/data

  scp -r /data/solr root@172.16.20.103:/data

  5)在每个节点启动solr服务,进入/data/solr/solr-5.2.1,执行如下命令

  bin/solr start

  6)在每个节点查看solr运行状态

  bin/solr status

  7)solr集群搭建完毕,访问solr界面。

  http://172.16.20.101:8983/solr

4.Solr集群的操作

  以下的操作均是以http://172.16.20.101:8983/solr这个开头访问的,然后跟在这个url后面才是完整的路径。如:我写的/admin/collections?action=DELETE&name=article,则访问路径是:http://172.16.20.101:8983/solr/admin/collections?action=DELETE&name=article

  4.1 创建collection

  两种方式创建collection,根据路由方式的不同:

  第一种implicit路由方式

  /admin/collections?action=CREATE&name=article&router.name=implicit&shards=shard1,shard2,shard3&maxShardsPerNode=5&collection.configName=collection3Conf

  第二种compositeId路由方式

  /admin/collections?action=CREATE&name=article&router.name=compositeId&numShards=5&replicationFactor=1&maxShardsPerNode=5&collection.configName=collection3Conf

  或者

  /admin/collections?action=CREATE&name=application&router.name=compositeId&numShards=1&replicationFactor=2&maxShardsPerNode=2&collection.configName=application&createNodeSet=172.16.20.102:8983_solr,172.16.20.103:8983_solr

  4.2删除collection

  /admin/collections?action=DELETE&name=article

  4.3增加分片shard

  implicit路由实现该需求比较简单,只要创建Shard即可。

  /admin/collections?action=CREATESHARD&collection=article&shard=shard1&name=article_shard1_replica2

  compositeId路由实现该需求稍微麻烦一下,通过分裂(SPLITSHARD)操作实现。

  /admin/collections?action=SPLITSHARD&collection=article&shard=shard1

  4.4删除分片shard

  /admin/collections?action=DELETESHARD&collection=article&shard=shard1

  4.5上传SolrCloud的配置文件到zookeeper,统一保存配置文件

  java -classpath .:/data/solr/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib/* org.apache.solr.cloud.ZkCLI -cmd upconfig -zkhost 172.16.20.101:2181,172.16.20.102:2181,172.16.20.102:2181 -confdir /data/solr/solr-5.2.1/server/solr/configsets/sample_techproducts_configs/conf/ -confname collection1Conf

  4.6将上传到ZooKeeper中配置文件与Collection相关联

  java -classpath .:/data/solr/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib/* org.apache.solr.cloud.ZkCLI -cmd linkconfig -collection collection1 -confname collection1Conf -zkhost 172.16.20.101:2181,172.16.20.102:2181,172.16.20.103:2181

  4.7将配置上传到zookeeper,如果要让正在运行的solr同步加载这些文件,需要让solr重新加载一下配置文件

  /admin/collections?action=RELOAD&name=article

1.访问官网下载zookeeper-3.4.8.tar.gz安装包。

Solr5.2.1+Zookeeper3.4.8分布式集群搭建的更多相关文章

  1. Solr5.2.1+Zookeeper3.4.9分布式集群搭建

    1.选取三台服务器 由于机器比较少,现将zookeeper和solr都部署在以下三台机器上.(以下操作都是在172.16.20.101主节点上进行的哦) 172.16.20.101 主节点 172.1 ...

  2. ubuntu18.04.2 hadoop3.1.2+zookeeper3.5.5高可用完全分布式集群搭建

    ubuntu18.04.2 hadoop3.1.2+zookeeper3.5.5高可用完全分布式集群搭建 集群规划: hostname NameNode DataNode JournalNode Re ...

  3. kafka系列二:多节点分布式集群搭建

    上一篇分享了单节点伪分布式集群搭建方法,本篇来分享一下多节点分布式集群搭建方法.多节点分布式集群结构如下图所示: 为了方便查阅,本篇将和上一篇一样从零开始一步一步进行集群搭建. 一.安装Jdk 具体安 ...

  4. 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper)

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  5. 阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

  6. hbase完整分布式集群搭建

    简介: hadoop的单机,伪分布式,分布式安装 hadoop2.8 集群 1 (伪分布式搭建 hadoop2.8 ha 集群搭建 hbase完整分布式集群搭建 hadoop完整集群遇到问题汇总 Hb ...

  7. HBase完全分布式集群搭建

    HBase完全分布式集群搭建 hbase和hadoop一样也分为单机版,伪分布式版和完全分布式集群版,此文介绍如何搭建完全分布式集群环境搭建.hbase依赖于hadoop环境,搭建habase之前首先 ...

  8. Hadoop上路-01_Hadoop2.3.0的分布式集群搭建

    一.配置虚拟机软件 下载地址:https://www.virtualbox.org/wiki/downloads 1.虚拟机软件设定 1)进入全集设定 2)常规设定 2.Linux安装配置 1)名称类 ...

  9. hadoop伪分布式集群搭建与安装(ubuntu系统)

    1:Vmware虚拟软件里面安装好Ubuntu操作系统之后使用ifconfig命令查看一下ip; 2:使用Xsheel软件远程链接自己的虚拟机,方便操作.输入自己ubuntu操作系统的账号密码之后就链 ...

随机推荐

  1. W3Cschool学习笔记——CSS3教程

    向 div 元素添加圆角: div { border:2px solid; border-radius:25px; -moz-border-radius:25px; /* Old Firefox */ ...

  2. C++编程练习(1)----“实现简单的线性表的顺序存储结构“

    线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素. 故可以用数组来实现顺序存储结构. 用C++编写的利用数组实现简单的读取.插入和删除功能的线性表. #include< ...

  3. 通过web sql实现增删查改

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  4. 抛砖引玉:探讨网站性能优化之Javascript异步懒加载技术

    懒加载技术是现在许多大型网站的都使用的提高网站性能的方式,它的核心思想是当用户想看页面某个区域时,再加载该区域的数据.这在一定程度上减轻了服务器端的压力,也加快了页面的呈现速度. 其实国内很多网站都用 ...

  5. BZOJ 3391: [Usaco2004 Dec]Tree Cutting网络破坏(搜索)

    这道直接遍历一遍求出每个点的子节点数目就行了= = CODE: #include<cstdio>#include<iostream>#include<algorithm& ...

  6. 连连看的原生JS实现

    那天闲来无事,便想找个小游戏来打发时间,后来便找到了连连看, 玩了一会儿感觉无聊,想到各位高手用JS做的各种小游戏,便想自己也来做一个,于是便有了这几天的成果. 代码是用 原生JS 实现的,只是用来学 ...

  7. 初识html5——试试博文编辑器

    1.html5简介 HTML5 将成为 HTML.XHTML 以及 HTML DOM 的新标准. HTML 的上一个版本诞生于 1999 年.自从那以后,Web 世界已经经历了巨变. HTML5 仍处 ...

  8. Javascript学习九

    计时器setInterval() 在执行时,从载入页面后每隔指定的时间执行代码. 语法: setInterval(代码,交互时间); 参数说明: 1. 代码:要调用的函数或要执行的代码串. 2. 交互 ...

  9. muduo库整体架构简析

    muduo是一个高质量的Reactor网络库,采用one loop per thread + thread loop架构实现,代码简洁,逻辑清晰,是学习网络编程的很好的典范. muduo的代码分为两部 ...

  10. 多线程简介及GCD的使用

    多线程简介: 对于任意一个iOS应用,程序运行起来后,默认会产生一个主线程(MainThread),主线程专门用来处理UIKit对象的操作,如界面的显示与更新.处理用户事件触发的操作等等.(记忆这点, ...