Solr搜索引擎第三篇-两种部署模式详解

独立服务器模式(单机)

适用于数据规模不大的场景

架构

独立服务器模式就是第二篇讲到的单机安装的模式,如下架构:
在这里插入图片描述
说明:

  • 每个solr服务器实例(启动的一个solr服务器进程)都有一个solr主目录。启动服务器实例时须为实例指定主目录(默认为:安装默认下的server/solr目录)。
  • solr主目录中存放该服务器实例托管的内核。
  • 一个solr服务器实例中可托管多个内核。
  • 每个主目录下必须有solr.xml才能启动实例!!!

启动和停止solr服务实例命令:

  • bin/solr start –s xxxdir –p port
  • bin/solr stop –p port

创建一个新实例

以windows下进行讲解。
第一步:在D盘创建Solr主目录D:\test\solr
第二步:将solr安装的默认主目录下的solr.xml(我这里为D:\Program Files\solr-7.5.0\server\solr)拷贝到D:\test\solr下
第三步:然后在命令窗口输入如下命令

solr.cmd -s D:\test\solr -p 9999

成功启动如下:
在这里插入图片描述
查看状态:solr status
在这里插入图片描述

Solr主目录结构

在这里插入图片描述

core内核目录结构

在这里插入图片描述

SolrCloud分布式集群模式

适用于数据量大、高并发、高可用、实时响应的场景。

架构

SolrCloud模式下的索引将会被分割成多个分片存储到集群的不同节点上,而且每个分片又有备份,也会被存储在不同的节点上。每个节点通过zookeeper注册中心关联起来。

  • 独立服务器模式下,索引被称为内核
  • SolrCloud模式下,索引被称为集合,而内核存储的是集合分片的备份

在这里插入图片描述

SolrCloud启动方式

内嵌的zookeeper

如果使用内嵌的zookeeper的话,则需要先启动内嵌的zookeeper的第一个solrNode节点服务,如下命令:

bin/solr start -c -p [port] -s [solrhome]
  • 注意:启动该实例后,对应的zookeeper实例端口为:solr实例端口+1000

然后其他节点的启动,如下命令:

bin/solr start -c -p [port] -s [solrhome] -z [zkhost]:[zkport] 

搭建SolrCloud集群

我们来在本地进行集群的演练。
第一步:创建两个节点主目录

D:\test\solrCloud\node1
D:\test\solrCloud\node2

第二步:拷贝配置文件

  • 将solr安装目录下(D:\Program Files\solr-7.5.0\server\solr)的默认配置文件solr.xml和zoo.cfg拷贝到node1下
  • 将solr安装目录下(D:\Program Files\solr-7.5.0\server\solr)的默认配置文件solr.xml拷贝到node2下

第三步:启动,先启动有zoo.cfg的节点,再启动其他节点

solr.cmd -c -s D:\test\solrCloud\node1 -p 7001
solr.cmd -c -s D:\test\solrCloud\node2 -p 7002 -z localhost:8001

在这里插入图片描述
第四步:访问任意一台节点,查看界面和独立服务器的差异

http://localhost:7001
http://localhost:7002

在这里插入图片描述

创建和删除集合

#创建集合1
bin/solr create -c collection01 -d _default -shards 2 -replicationFactor 2 -p 7001

#创建集合2
bin/solr create -c collection02 -d sample_techproducts_configs -shards 2 -replicationFactor 2 -p 7001

#删除集合
bin/solr delete -c collection01 -p port
  • collection01:集合名称,随便取
  • _default:使用solr安装后默认的数据
  • -shards 2:表示该集合分片数为2
  • -replicationFactor 2:表示每个分片数都有2个备份
  • -p 7001:表示指定哪一个solr实例,SolrCloud任意指定即可,都会同步到其他节点

创建完毕后,登陆控制台查看:
在这里插入图片描述

提交数据到集合中

#Linux/Mac命令
bin/post -c collection01 -p 7001 example/exampledocs/*
#Windows命令,进入solr安装主目录
java -jar -Dc=collection01 -Dport=7001 -Dauto example\exampledocs\post.jar example\exampledocs\* -p 7001

登陆web控制台,查看分片已经有文档数量了:
在这里插入图片描述

独立zookeeper

若使用独立的zookeeper,需要先启动zookeeper。
这里暂不介绍。

猜你喜欢

转载自blog.csdn.net/supermao1013/article/details/83661368