热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

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

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.9.tar.gz

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

  tar -zxvf zookeeper-3.4.9.tar.gz

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

  4)进入zookeeper-3.4.9/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.9/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


推荐阅读
  • Hadoop的文件操作位于包org.apache.hadoop.fs里面,能够进行新建、删除、修改等操作。比较重要的几个类:(1)Configurati ... [详细]
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • ### 优化后的摘要本学习指南旨在帮助读者全面掌握 Bootstrap 前端框架的核心知识点与实战技巧。内容涵盖基础入门、核心功能和高级应用。第一章通过一个简单的“Hello World”示例,介绍 Bootstrap 的基本用法和快速上手方法。第二章深入探讨 Bootstrap 与 JSP 集成的细节,揭示两者结合的优势和应用场景。第三章则进一步讲解 Bootstrap 的高级特性,如响应式设计和组件定制,为开发者提供全方位的技术支持。 ... [详细]
  • Kafka 是由 Apache 软件基金会开发的高性能分布式消息系统,支持高吞吐量的发布和订阅功能,主要使用 Scala 和 Java 编写。本文将深入解析 Kafka 的安装与配置过程,为程序员提供详尽的操作指南,涵盖从环境准备到集群搭建的每一个关键步骤。 ... [详细]
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • 本文介绍了如何使用 Google Colab 的免费 GPU 资源进行深度学习应用开发。Google Colab 是一个无需配置即可使用的云端 Jupyter 笔记本环境,支持多种深度学习框架,并且提供免费的 GPU 计算资源。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 本文探讨了 Kafka 集群的高效部署与优化策略。首先介绍了 Kafka 的下载与安装步骤,包括从官方网站获取最新版本的压缩包并进行解压。随后详细讨论了集群配置的最佳实践,涵盖节点选择、网络优化和性能调优等方面,旨在提升系统的稳定性和处理能力。此外,还提供了常见的故障排查方法和监控方案,帮助运维人员更好地管理和维护 Kafka 集群。 ... [详细]
author-avatar
会员WWW
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有