前言

Solr是一个基于Apache Lucene的开源搜索平台,它提供了强大的全文搜索、分布式搜索和数据分析功能。Solr 可以用于构建高性能的搜索应用程序,支持从海量数据中快速检索和分析信息。Solr 使用倒排索引和先进的搜索算法,可实现快速而准确的全文搜索。Solr可以在多个服务器上进行水平扩展,实现分布式搜索和负载均衡。Solr支持复杂的过滤、排序和范围查询,使您可以根据各种条件对搜索结果进行精确控制。Solr 提供了强大的聚合和统计功能,用于在搜索结果上执行数据分析和汇总操作。Solr可以为搜索词提供自动完成和搜索建议,提升用户体验。Solr支持多种语言的全文搜索和分析,包括中文、英文等。

本节内容是关于solr搜索平台集群服务的安装部署,我们要事先准备三台服务器用于Solr集群服务的安装。

正文

①分别在hadoop101、hadoop102、hadoop103创建一个solr用户,用于solr服务管理

– 创建solr用户:sudo useradd solr

– 创建solr用户的密码:echo solr | sudo passwd –stdin solr

②上传solr安装包到hadoop101服务器的/opt/software目录下

③将solr安装包解压到/opt/module软件安装目录下

命令:

tar -zxvf solr-8.11.3.tgz -C /opt/module/

④将solr安装包的权限改为solr用户

命令:

sudo chown -R solr:solr solr-8.11.3/

⑤修改solr的配置文件/opt/module/solr-8.11.3/bin/solr.in.sh,添加zookeeper配置,实现集群的高可用,并将zookeeper中创建chroot节点的配置打开

ZK_HOST="hadoop101:2181,hadoop102:2181,hadoop103:2181/chroot"

⑥分发solr安装包到hadoop102、hadoop103

⑦在/etc/profile.d/my_env.sh中配置solr的环境变量

⑧分发/etc/profile.d/my_env.sh配置文件,并分别在服务器执行source /etc/profile.d/my_env.sh命令,使solr环境配置生效

⑨启动zookeeper集群

⑩分别在hadoop101、hadoop102、hadoop103以solr用户启动solr服务

启动命令:

sudo -i -u solr solr start -Dsolr.solr.home=/opt/module/solr-8.11.3/server/solr

-Dsolr.solr.home:指定solr服务的home目录

⑪访问solr云服务的web页面

⑫在solr的安装目录的/opt/module/solr-8.11.3/bin目录下创建一个solr云服务集群的启停脚本mysolr.sh,并授予可执行权限

#!/bin/bashif [ $# -lt 1 ]then echo "No Args Input..." exit ;ficase $1 in"start") echo " =================== 启动 solr 云服务集群 ===================" ssh hadoop101 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr start -Dsolr.solr.home=/opt/module/solr-8.11.3/server/solr" ssh hadoop102 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr start -Dsolr.solr.home=/opt/module/solr-8.11.3/server/solr" ssh hadoop103 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr start -Dsolr.solr.home=/opt/module/solr-8.11.3/server/solr" ;;"restart") echo " =================== 重启 solr 云服务集群 ===================" ssh hadoop101 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr stop -all" ssh hadoop102 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr stop -all" ssh hadoop103 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr stop -all" ssh hadoop101 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr start -Dsolr.solr.home=/opt/module/solr-8.11.3/server/solr" ssh hadoop102 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr start -Dsolr.solr.home=/opt/module/solr-8.11.3/server/solr" ssh hadoop103 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr start -Dsolr.solr.home=/opt/module/solr-8.11.3/server/solr" ;;"stop") echo " =================== 关闭 solr 云服务集群 ===================" ssh hadoop101 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr stop -all" ssh hadoop102 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr stop -all" ssh hadoop103 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr stop -all" ;;"status") echo " =================== 查看 solr 云服务集群状态 ===================" ssh hadoop101 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr status" ssh hadoop102 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr status" ssh hadoop103 "sudo -i -u solr /opt/module/solr-8.11.3/bin/solr status";;*) echo "Input Args Error...";;esac

⑬验证云服务集群启停脚本

– 启动:mysolr.sh start

– 查看状态:mysolr.sh status

– 重启:mysolr.sh restart

– 停止:mysolr.sh stop

结语

至此,关于solr云服务集群的搭建过程到这里就结束了,我们下期见。。。。。。