Elasticsearch介绍
Elasticsearch 是一个分布式搜索引擎,底层基于 Lucene 实现。Elasticsearch 屏蔽了 Lucene 的底层细节,提供了分布式特性,同时对外提供了 Restful API。Elasticsearch 以其易用性迅速赢得了许多用户,被用在网站搜索、日志分析等诸多方面。
官网地址:https://www.elastic.co/cn/elasticsearch
Elasticsearch部署安装
具体选择哪个版本需要跟你的使用环境有关,并不是越新越好,比如这里我们公司开发环境用的是JDK8,Springboot版本是2.3.12.RELEASE,那么你可以在spring-boot-dependencies依赖中找到该代码<elasticsearch.version>7.6.2</elasticsearch.version>
说明需要使用7.6.2版本,你可以可以在spring官网找到如下版本对照:
部署包安装
可以官方网站下载安装包:https://www.elastic.co/cn/downloads/past-releases#elasticsearch,选择相对应的版本和平台下载即可。
下载下来的文件解压,需要修改config/elasticsearch.yml
配置文件,这里先配置几个必须的
# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#
network.host: 0.0.0.0
#
# Set a custom port for HTTP:
#
http.port: 9200
#
# For more information, consult the network module documentation.
#
# --------------------------------- Discovery ----------------------------------
#
# Pass an initial list of hosts to perform discovery when this node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#
discovery.seed_hosts: ["localhost"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
cluster.initial_master_nodes: ["localhost"]
#
# For more information, consult the discovery and cluster formation module documentation.
discovery.seed_hosts、cluster.initial_master_nodes与集群相关,我这里测试但节点部署就直接填了localhost,配置完成执行bin/elasticsearch -d
即可启动,启动完成访问服务的9200端口返回如下说明启动完成
docker安装
docker run --name elasticsearch -p 9200:9200 -p 9300:9300
-e "discovery.type=single-node"
-e ES_JAVA_OPTS="-Xms1g -Xmx1g"
-v /data/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
-v /data/elasticsearch/data:/usr/share/elasticsearch/data
-v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins
-d elasticsearch:7.6.2
中文分词插件安装
我们需要做中文分词搜索,就需要给ES安装中文分词查询,一般用到的分词器是这个IK分词器,github地址:https://github.com/infinilabs/analysis-ik,但是注意分词器的版本和elasticsearch的版本是严格对应的,不能随便选择分词器版本,比如我这里安装7.6.2版本的分词器,可以来到elasticsearch的bin目录下执行命令./elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/7.6.2
,可以安装分析器