博客
关于我
淘淘商城系列——Solr集群搭建
阅读量:137 次
发布时间:2019-02-26

本文共 1355 字,大约阅读时间需要 4 分钟。

Solr 集群搭建 是 必须 的 步骤, 因为 单 机版无法处理 大量 数据。 下面 是详细 的 搭建 步骤:

1. 搭建 Zookeeper 集群

Zookeeper 是 Solr 集群 的 管理 工具, 用于 集群 管理 和 配置 文件 集中化 管理。

1.1 安装 JDK

确保 系统 上 安装 了 Java 开发 环境, JDK 的 版本 为 1.8 或 更高 版本。

1.2 解压 Zookeeper

下载 Zookeeper 的 压缩 包 并 解压 到 服务器 上, 例如:

tar -zxzf zookeeper-3.4.6.tar.gz

1.3 配置 Zookeeper

在 zookeeper 目录 下 创建 zoo.cfg 文件, 配置 内容 如 下:

dataDir=/usr/local/solr-cloud/zookeeper/dataclientPort=2181leaderPort=2182

1.4 启动 Zookeeper

创建 启动 脚本, 并 按照 下面 步骤 启动 集群:

chmod +x start-zookeeper-all.sh./start-zookeeper-all.sh

验证 集群 状态, 确保 有 主节点。

2. 搭建 Solr 集群

2.1 安装 Solr

将 Solr 单 机版 的 WAR 包 复制 到 每 个 tomcat 的 webapps 目录 下。

2.2 配置 Solr

创建 solrhome 目录 并 复制 单 机版 的 solrhome 到 集群 中。

2.3 配置 Tomcat

修改 每 个 Tomcat 的 server.xml 文件, 修改 端口 号:

2.4 关联 Zookeeper

在 Tomcat 的 catalina.sh 文件 中 添加 配置:

JAVA_OPTS="-DzkHost=192.168.25.129:2181,192.168.25.129:2182,192.168.25.129:2183"

2.5 启动 Tomcat

创建 启动 脚本 并 按照 下面 步骤 启动 集群:

chmod +x start-tomcat-all.sh./start-tomcat-all.sh

3. 验证 集群

访问 Solr 集群 的 主页, 点击 “Cloud” 查看 分片 情况。

4. 创建 分片 集群

通过 Solr 的 REST API 创建 分片 集群, 例如:

http://192.168.25.129:8180/solr/admin/collections?action=CREATE&name=collection2&numShards=2&replicationFactor=2

验证 集群 是否 正常运行, 确保 数据 分片 和 备用节点 正确配置。

5. 注意事项

  • 防火墙 设置:确保 防火墙 不阻止 Solr 和 Zookeeper 的 端口。
  • 硬件 资源:确保 服务器 有 足够 的 内存 和 硬盘 空间。
  • 高可用性:配置 Zookeeper 的 高可用性, 确保 集群 能 处理 故障。

通过以上 步骤,可以 成功 搭建 Solr 集群, 适用于 大量 数据 的 应用场景。

转载地址:http://cxgy.baihongyu.com/

你可能感兴趣的文章
Python中一个图形中的多个绘图
查看>>
python中一个好的持久同步队列
查看>>
Python中不准确的对数
查看>>
python中什么是实例方法_在Python中创建实例方法对象的不同方法
查看>>
Python中使用cutecharts实现简单的手绘风格的图表
查看>>
python中使用dxfgrabber,解析dxf文件信息生成obj文件
查看>>
Python中使用ncmbot玩转网易云音乐
查看>>
Python中使用PIL快速实现二值图
查看>>
Python中使用PIL快速实现灰度图
查看>>
Python中使用pip install ncmbot时各种错误解决办法
查看>>
Python中使用requests和parsel爬取喜马拉雅电台音频
查看>>
Python中使用turtle绘制多个同心圆
查看>>
Python中使用turtle绘制棋盘详解
查看>>
Python中使用wordcloud生成漂亮的中文词云
查看>>
Python中使用wxpy定时机器人给微信好友发送每日一文
查看>>
Python中使用zip()并行迭代
查看>>
Python中使用推导式创建序列
查看>>
Python中信号处理程序和atexit处理程序的调用
查看>>
Python中关于txt的简单读写模式与操作
查看>>
Python中关于类和函数的初体验之"__init__"和"__str__"不是"_init_"和"_str_"
查看>>