ElasticSearch 安装 以及分词器(windows 版本)

本文转载于:https://mp.weixin.qq.com/s/QnBqoaptV5-xKIpOBKSfHQ

1. 单节点安装

首先打开 Es 官网,找到 Elasticsearch:
https://www.elastic.co/cn/elasticsearch/
然后点击下载按钮,选择合适的版本直接下载即可。
在这里插入图片描述
切记下载之后切勿将压缩包解压到 Program Files 文件夹中,否则会对后续 ik 分词器中的文件读取有影响。
在这里插入图片描述

将下载的文件解压,解压后的目录含义如下:

目录含义
modules依赖模块目录
lib第三方依赖库
logs输出日志目录
plugins插件目录
bin可执行文件目录
config配置文件目录
data数据存储目录

启动方式:
进入到 bin 目录下,直接执行 ./elasticsearch 启动即可。
在这里插入图片描述
看到 started 表示启动成功。
默认监听的端口是 9200,所以浏览器直接输入 localhost:9200 可以查看节点信息。
在这里插入图片描述
节点的名字以及集群(默认是 elasticsearch)的名字,我们都可以自定义配置。
打开 config/elasticsearch.yml 文件,可以配置集群名称以及节点名称。配置方式如下:

cluster.name: javaboy-es
node.name: master

配置完成后,保存配置文件,并重启 es。重启成功后,刷新浏览器 localhost:9200 页面,就可以看到最新信息。
加粗样式

2.HEAD 插件安装

Elasticsearch-head 插件,可以通过可视化的方式查看集群信息。
这里介绍两种安装思路。

2.1 浏览器插件安装

Chrome 直接在 App Store 搜索 Elasticsearch-head,点击安装即可。
在这里插入图片描述

2.2 下载插件安装

四个步骤

  • git clone git://github.com/mobz/elasticsearch-head.git
  • cd elasticsearch-head
  • npm install
  • npm run start

启动成功,页面如下:
在这里插入图片描述
注意,此时看不到集群数据。原因在于这里通过跨域的方式请求集群数据的,默认情况下,集群不支持跨域,所以这里就看不到集群数据。

解决办法如下,修改 es 的 config/elasticsearch.yml 配置文件,添加如下内容,使之支持跨域:

http.cors.enabled: true
http.cors.allow-origin: “*”

配置完成后,重启 es,此时 head 上就有数据了。
在这里插入图片描述

3 分布式安装

假设:
一主二从
master 的端口是 9200,slave 端口分别是 9201 和 9202

首先修改 master 的 config/elasticsearch.yml 配置文件:

node.master: true
network.host: 127.0.0.1

配置完成后,重启 master。

将 es 的压缩包解压两份,分别命名为 slave01 和 slave02,代表两个从机。

分别对其进行配置。
slave01/config/elasticsearch.yml:

集群名称必须保持一致
cluster.name: javaboy-es
node.name: slave01
network.host: 127.0.0.1
http.port: 9201
discovery.zen.ping.unicast.hosts: [“127.0.0.1”]

slave02/config/elasticsearch.yml:

集群名称必须保持一致
cluster.name: javaboy-es
node.name: slave02
network.host: 127.0.0.1
http.port: 9202
discovery.zen.ping.unicast.hosts: [“127.0.0.1”]

然后分别启动 slave01 和 slave02。启动后,可以在 head 插件上查看集群信息。

在这里插入图片描述

4 Kibana 安装

Kibana 是一个 Elastic 公司推出的一个针对 es 的分析以及数据可视化平台,可以搜索、查看存放在 es 中的数据。
安装步骤如下:

  1. 下载 Kibana:https://www.elastic.co/cn/downloads/kibana
    解压
  2. 配置 es 的地址信息(可选,如果 es 是默认地址以及端口,可以不用配置,具体的配置文件是 config/kibana.yml)
  3. 执行 ./bin/kibana 文件启动
  4. localhost:5601

在这里插入图片描述

5. 中文分词器

在 Es 中,使用较多的中文分词器是 elasticsearch-analysis-ik,这个是 es 的一个第三方插件,代码托管在 GitHub 上:
https://github.com/medcl/elasticsearch-analysis-ik

5.1 安装

两种使用方式:
第一种:

  1. 首先打开分词器官网:https://github.com/medcl/elasticsearch-analysis-ik。

  2. https://github.com/medcl/elasticsearch-analysis-ik/releases 页面找到最新的正式版

  3. 将下载文件解压。

  4. 在 es/plugins 目录下,新建 ik 目录,并将解压后的所有文件拷贝到 ik 目录下。

  5. 重启 es 服务。

第二种:

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.9.3/elasticsearch-analysis-ik-7.9.3.zip

5.2 测试

es 重启成功后,首先创建一个名为 test 的索引:
在这里插入图片描述

接下来,在该索引中进行分词测试:

在这里插入图片描述

5.3 自定义扩展词库

5.3.1 本地自定义

在 es/plugins/ik/config 目录下,新建 ext.dic 文件(文件名任意),在该文件中可以配置自定义的词库。
在这里插入图片描述
如果有多个词,换行写入新词即可。
然后在 es/plugins/ik/config/IKAnalyzer.cfg.xml 中配置扩展词典的位置:
在这里插入图片描述

切记: 新建 ext.dic 文件编码格式一定要是 utf-8 否则则会读取不到,从而不能自定义的分词。

5.3.2 远程词库

也可以配置远程词库,远程词库支持热更新(不用重启 es 就可以生效)。
 
 
热更新只需要提供一个接口,接口返回扩展词即可。
 
 
具体使用方式如下,新建一个 Spring Boot 项目,引入 Web 依赖即可。然后在 resources/stastic 目录下新建 ext.dic 文件,写入扩展词:
在这里插入图片描述
接下来,在 es/plugins/ik/config/IKAnalyzer.cfg.xml 文件中配置远程扩展词接口:
在这里插入图片描述
配置完成后,重启 es ,即可生效。
热更新,主要是响应头的 Last-Modified 或者 ETag 字段发生变化,ik 就会自动重新加载远程扩展

本文转载于:https://mp.weixin.qq.com/s/wpLeWIgq6yQEolKcv_P8hA

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值