部署ElasticSearch与kibana(持续更新)

文章目录

  • 一、ElasticSearch介绍
  • 二、安装ElasticSearch
  • 三、部署kibana
  • 四、安装IK分词器

一、ElasticSearch介绍

ElasticSearch是一款强大的开源搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能。

ElasticSearch底层是基于lucene实现的,他是Apache的开源搜索引擎类库,他具有易拓展,高性能等优势,但是其只限于java语言开发和不支持水平拓展也造成了一定的局限性。

ElasticSearch擅长海量的数据搜索,分析计算。mysql擅长事务型操作,确保数据的安全和一致性。

二、安装ElasticSearch

1.创建网络(因为我们需要es和kibana互联,所以这里先创建一个网络)

docker network create es-net

2.加载镜像(这里我这直接把先前下好的jar包拖到linux上的,各位在线下载也可以,大约900M比较慢)
等将jar包上传到虚拟机上之后,直接加载到容器当中

 docker load -i es.tar

3.运行es
部署单点es

docker run -d \
    --name es \
    -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
    -e "discovery.type=single-node" \
    -v es-data:/usr/share/elasticsearch/data \
    -v es-plugins:/usr/share/elasticsearch/plugins \
    --privileged \
    --network es-net \
    -p 9200:9200 \
    -p 9300:9300 \
elasticsearch:7.12.1

输入以下命令查看本地es运行是否成功

curl http://localhost:9200

如果出现这个截图表示成功
部署ElasticSearch与kibana(持续更新)_第1张图片
然后浏览器输入本机公网ip加9200端口号查看是否出现如下界面
部署ElasticSearch与kibana(持续更新)_第2张图片

三、部署kibana

1.导入资源
我还是直接把tar包直接拖到linux当中去的,各位可以直接进行下载,大约1G

运行docker命令,部署kibana(过程很慢,请耐心等待)

docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
--network=es-net \
-p 5601:5601  \
kibana:7.12.1

之后可以适用如下命令查看docker当中的进程

docker ps

在这里插入图片描述
这里可以看到我们es 和 kibaba 的端口号

此时浏览器输入公网ip加5601即可查看结果
部署ElasticSearch与kibana(持续更新)_第3张图片
测试一下es和kibana是否可以互联工作
部署ElasticSearch与kibana(持续更新)_第4张图片
输入GET / 运行,看是否出现如下界面
部署ElasticSearch与kibana(持续更新)_第5张图片

如果大家输入网址之后没有反应,检查如下几点

  • 是否关闭防火墙
  • 阿里云中是否加入此端口号的安全组
  • es的默认配置端口号是否只对本机暴露

一般来说就是这几点情况,解决办法网上有很多,我就在这不再赘述。

四、安装IK分词器

我们先使用默认的分词器进行测试
部署ElasticSearch与kibana(持续更新)_第6张图片
可以看到这里默认分词器对中文的分词一言难尽!于是我们需要比较牛的分词器,这时候IK分词器就登场了

1.安装插件需要知道elasticsearch的plugins目录位置,而我们用了数据卷挂载,因此需要查看elasticsearch的数据卷目录,通过下面命令查看:

docker volume inspect es-plugins

显示结果:

[
    {
        "CreatedAt": "2022-05-06T10:06:34+08:00",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/var/lib/docker/volumes/es-plugins/_data",
        "Name": "es-plugins",
        "Options": null,
        "Scope": "local"
    }
]

说明plugins目录被挂载到了:/var/lib/docker/volumes/es-plugins/_data这个目录中。

2 . cd进入这个目录,解压缩IK压缩包

3.重启服务器

docker restart es

分词器的作用是什么?

  • 创建倒排索引时对文档分词

  • 用户搜索时,对输入的内容分词

IK分词器有几种模式?

  • ik_smart:智能切分,粗粒度

  • ik_max_word:最细切分,细粒度

你可能感兴趣的:(es,elasticsearch,kibana,IK分词器,java)