ES、es-head、Kibana、ik分词器的安装教程

ES相关介绍

ES全称ElasticSearch,是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口

es相当于数据库,没有数据格式约束。

Elastic有一条完整的产品线及解决方案:Elasticsearch、Kibana、Logstash等,前面说的三个就是大家常说的ELK技术栈。

Elasticsearch(官网链接:https://www.elastic.co/cn/elastic-stack )是Elastic Stack 的核心技术。详细介绍参考官网

Elasticsearch具备以下特点:

  • 分布式,无需人工搭建集群(solr就需要人为配置,使用Zookeeper作为注册中心)
  • Restful风格,一切API都遵循Rest原则,容易上手近实时搜索,数据更新在Elasticsearch中几乎是完全同步的

ES安装(前提必须安装好了JDK)

先贴个其他博主分享的下载的链接:

官网的下载地址 https://www.elastic.co/cn/downloads/elasticsearch
window系统
百度网盘: https://pan.baidu.com/s/1ZjRyivbtE-bzLWzvBqfJgw
提取码: totp
linux系统
百度网盘: https://pan.baidu.com/s/1oBsZRlJ-D8KfNLTrs1FVZA
提取码: t34k

如果链接失效了的话也可以用以下方法下载,不过很慢,当然也可以再去找其他的途径。根据需要选择版本号。

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-linux-x86_64.tar.gz

tar一下解压缩,放在自己的软件目录下:
在这里插入图片描述

目录介绍:
bin:可执行文件在里面,运行es的命令就在这个里面,包含了一些脚本文件等
config:配置文件目录
JDK:java环境
lib:依赖的jar,类库
logs:日志文件
modules:es相关的模块
plugins:可以自己开发的插件
data:这个目录没有,自己新建一下,后面要用 -> mkdir data,这个作为索引目录

单机版ES配置

修改核心配置文件elasticearch.yml

  • 修改集群名称
  • 修改当前的es节点名称
  • 修改data数据保存地址和日志数据保存地址
  • 绑定es网络ip
  • 集群节点修改为之前的节点名称

在这里插入图片描述
在这里插入图片描述
然后打开jvm.options,添加如下配置
在这里插入图片描述
ES不允许使用root用户操作,需要为ES创建一个单独的用户

useradd esuser
chown -R esuser:esuser /usr/local/elasticsearch-7.5.1
su esuser

启动ES

./elasticsearch

启动错误解决

ERROR: [3] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: max number of threads [3795] for user [esuser] is too low, increase to at least [4096]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

需要切换到root用户修改配置

  • 修改/etc/security/limits.conf 文件
    增加下面内容
 - soft nofile 65536
 - hard nofile 131072
 - soft nproc 2048
 - hard nproc 4096
  • 修改 /etc/sysctl.conf 增加 vm.max_map_count=262145
    在这里插入图片描述
    修改完后sysctl -p刷新一下
    再次切换到esuser 进行启动,未报错jps一下
    在这里插入图片描述
    启动成功
    访问IP:9200
    在这里插入图片描述

ES集群配置

https://blog.csdn.net/xiaoge335/article/details/100575925
这位博主的文章,可以借鉴。
当然这位博主的启动方式选择了shell脚本,如果弄不明白shell,可以采用最原始的方式挨个启动即可
./elasticsearch

ES-head安装

ES-head:操作ES数据库的客户端,生产环境中都用来连接远程ES服务器,查看ES
贴个GitHub的链接:https://github.com/mobz/elasticsearch-head
这个链接下写了很多个安装ES-head的方法,我使用的是直接在谷歌的插件商店中下载安装。
安装后在谷歌的扩展程序栏打开。
在这里插入图片描述

在这里插入图片描述
这个小图标就是了。使用时点击小图标进入管理界面,在链接框中输入想要链接的ES访问链接,连接成功后如下:
在这里插入图片描述

Kibana安装

Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看存放在Elasticsearch中的数据。Kibana与Elasticsearch的交互方式是各种不同的图表、表格、地图等,直观的展示数据,从而达到高级的数据分析与可视化的目的。

Kibana的版本需要和ES的版本对应,否则会不兼容
就像这样,启动时会一直报错和警告
在这里插入图片描述
版本对应关系可以查看:
https://www.elastic.co/cn/support/matrix#matrix_compatibility

总结一下就是ES是什么版本的,Kibana就是什么版本,需要保持ES和Kibana的版本号一致

wget https://artifacts.elastic.co/downloads/kibana/kibana-6.2.2-linux-x86_64.tar.gz

tar解压缩,修改配置文件kibana.yml

server.port: 5601
server.host: "0.0.0.0"
elasticsearch.url: "http://192.168.32.128:9200"
kibana.index: ".kibana"
i18n.locale: "zh-CN"

./kibana启动,访问192.168.32.128:5601
在这里插入图片描述

ik分词器安装

之前我们创建索引,查询数据,都是使用的默认的分词器,分词效果不太理想,会把text的字段分成一个一个汉字,然后搜索的时候也会把搜索的句子进行分词,所以这里就需要更加智能的分词器IK分词器了。

ik安装

从 ik 分词器项目仓库中下载 ik 分词器安装包,下载的版本需要与自己安装的Elasticsearch 版本匹配:
https://github.com/medcl/elasticsearch-analysis-ik

或者可以访问 gitee 镜像仓库:
https://gitee.com/mirrors/elasticsearch-analysis-ik

下载后放到/opt/software/elasticsearch-6.2.2/plugins目录下(该目录根据自己安装的ES目录自行调整)

安装后重启ES,测试http://192.168.32.128:9200/_cat/plugins
在这里插入图片描述

ik分词测试

ik分词器提供两种分词器: ik_max_word 和 ik_smart

ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合,适合 Term Query;

ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”,适合 Phrase 查询。

ik_max_word分词测试

POST _analyze
{
  "analyzer":"ik_max_word",
  "text":"我是中国人"
}

在这里插入图片描述

ik_smart分词测试

POST _analyze
{
  "analyzer":"ik_smart",
  "text":"我是中国人"
}

在这里插入图片描述

不使用分词器分词的效果

POST _analyze
{
  "text":"我是中国人"
}

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值